Rwy'n meddwl, fel ydych chi'n mynd i'ch ei wneud flynyddoedd. Rwy'n meddwl, yn rhaid o'r bwrdd, yn fawr o'r gwrdd hyn o ymweld yma, o'r ffawr yn hynny o'r cymryd gyda'r GDK. A rwy'n meddwl i'r cyfweld, rwy'n meddwl i ddim yn fwy o'r newid o'r cyndigol, ac rwy'n meddwl i'n meddwl i'n meddwl i'r cymryd deall ynglynig. Yr ffordd o'r cyffredinol hefyd yn ymddangos, If you don't understand some of the details of this, don't worry, it's really just to open up what's going on under the covers in the compiler and how you can use it to optimise a specific Java method by generating a handcrafted compiler graph that bottoms out to some super efficient assembler. So I'll motivate this by talking about the actual use case, which is using NVRAM. I'll talk about the equivalent library that Intel will develop for you doing that from C and show you how we need to provide a Java equivalent. I'll show you what changes I would propose as its first attempt to try and do that from Java with all the functionality of the C library efficiently in Java, but without having the compiler backup that really gives it all the extra performance. And then I'll show you how I built the intrinsic into the compiler so that you could basically get very, very simple instructions inlined into the gistive code and inlined through into the client code that uses this API just to sort of show how you can really tweak the maximum performance out of things with the compiler. So to start off, let's talk about NVRAM. This is basically a memory device you plug into your machine. It's just like memory except when you write to it on one program run, if you bring it back up and you map them and you're back into your virtual address space, you'll find all the data you wrote that last time is still there, so it's got persistence. You can think of it as an extension in the middle of the memory tier between archival storage and the volatile running program memory. You can have some sort of storage that will persist across runs. Your choice at the moment is a spinning platter disk or a flash-based disk. Well, NVRAM is actually a memory that acts like memory that you can write to like memory, but it's there next time you come back up again. It's presented as a device, so the memory is managed as files of data or blocks of memory in a device, a mapped in device, and you map those files into your address space. At least that's the model that I'm looking at, how you use it. Of course, when you've then mapped into address space, when you write through into the virtual address and things have flushed back into the cache system and are available for other threads in the same program, it's also mapped back through into the device memory and it will stay there. That's not automatic, and there's a difference between the synchronisation that's used to synchronise things between cache and the operations needed to flush things back into the actual memory, and that's where the interesting thing comes in. The application really needs to be involved in making sure not just that things are synchronised between threads, but that data is also with another level of synchronisation synchronised back into the physical memory. I'm going to show an example, just a simple example of how that comes in and why the application has to be involved in that. So imagine we've got a block of N and V RAM, say you had half a gigabyte of memory that you're using for a rolling transaction log. So here we've got it divided up into your words, and there are into your counters and indexes, curses that are used to keep track of the live segment of the log. So the first two words in the log identify the start of the live section and the first non-live word at the end of the live section, 4 and 14. And there are two records in there. One has size 6, which is in the header word and then the six words in all, and there's a header word with size 4, and there are three data words for that one. There are actually three different tags of using this as a log. When you allocate a log record for a transaction, you haven't yet got a point where the transaction is committed, so it's an uncommitted record. If you crash, the data in there is rubbish you throw it away because there's nothing waiting to roll forward. That transaction is automatically rolled back. If you have a committed record, as we have here in the first entry, that means the transaction is committed, the coordinator of the transaction has written this and made sure it's out on disk because at that point if we crash, we have all the information to make sure all the other elements, participants in the transaction roll forward. So we've got to guarantee the safety. When we've got to commit in the coordination process, we can make sure everything actually happens consistently. Everything is replayable. There's a free record at the end there. Obviously that transaction started later, but at some point you need to free up records in the log and eventually they get reclaimed and you can roll the log round and just keep it continuously running. So those are the three different tags you'd have in the header word. Now imagine that somebody wants to allocate a new record. Here's an example of why the writeback is really important. So the first thing that's done when you want to do an allocate is you would find the end of the log. Well, first thing you have to do is take a lock because there may be many threads trying to allocate transaction records, so they have to synchronize in the shared state. That's an in memory volatile lock, but it's a synchronization of some sort. Having got the lock, you're then able to first of all write the record with a header length and it's uncommitted by default. Then you write the cursor so that the cursor is now beyond the end of that record. It's now in the log. At that point you can release the lock and then the transaction, the thread that's managing that transaction, go and write the data independently because it owns that bit of space. Nothing else is going to overwrite it. You've got consistent state for the log, except it's really important that the right of the record information and the right of the cursor, the end cursor is done in the right order. And they're flushed back to memory to physical memory between the two rights. So what you need to do is you need to write the header there. Make sure it's actually flushed back into physical memory before you write the cursor and update the cursor. Now imagine if you wrote them both and then flushed afterwards. It might be that that first line gets evicted and you've got a count of 18, so the log doesn't actually have any new data flushed back into memory and you crash. When you come back up, there might be an old transaction record in there which is committed within valid data. See if you have any consistent log. Worse, there might be a record with the wrong length and the end cursor and the end when you skip through the records where you reach to wouldn't add up. Your data is actually inconsistent, not just out of date. So it's important that you write and you commit back to physical memory the record length before you update the cursor. And the application has to do that. It's the application's use of this memory that determines how that's done. It's not something that the memory system or the stuff that does the write back can do for you because it's about semantics of the application. Here's another example, a transaction log commit. At this point, there's no need to have a lock for this. There's a thread managing a transaction. It changes the record state from uncommitted to committed just by writing that field and changing the tag in it. But before doing that, it's going to write some transaction data for that record. Now again, that stuff has to be committed before the header of the record is changed to reflect the commit. It has to be written back to physical memory. If you didn't do it in the right order, you might find that the tag gets changed and written back but then you crash and the data hasn't actually been written. Not just if the program doesn't write it back, it could be written back because of the effects going on that cache line that happens to have that record header on it. So it's really important again that it happens in the right order, otherwise you might get a situation where you've got a committed record and the data that's associated with some other transaction or might even be inconsistent data. So it's really important that the application has the ability to manage not just making things visible in the cache system, but making sure that cache system has actually been, the changes that cache system have actually been persisted and persisted in a specific order. So let's talk about libpmem. Now this is Intel's C library that gives you an API for doing exactly this. It allows you to access data and then map data and map it into memory, update it and have it mapped back to physical memory. It's been implemented for Linux and Windows on x8664. It actually exists for Linux ARM64 except there isn't actually physical hardware for ARM64 yet, but that should be available very soon. So the work had to be done on both and we've simulated it to test it on ARM64. So what you do is you use an F open to open a file from the memory device and allocate a block of memory for that file, for storage for that file. You'd use the M map call to map it into a memory, which is an old way of doing it. There's actually an extension to M map that allows you to say this memory is backed by a synchronous device and the payoff there is that you can actually write it back more efficiently. So the problem that we use M map, which is what I've called plan A, is that when you come to write back physical memory you've got to do it via a file descriptor flush.  So that's fine, but when you're writing actual writing map memory as memory with this model, there's no way of knowing which are the dirty cache lines from software. So if you were to do it via a file descriptor, the driver that's associated with this non-volatile RAM would have to write back all of the cache lines. It's very inefficient. Every single little bit of memory you want to flush, it's going to have to actually flush right back every single cache line in the map range. So it's really not an option. So what the alternative is that you can use the, if you map it with a sync mapping, the operating system knows about it, you can then actually use a cache line right back operation to actually make sure the memory is out on disk. There's a hardware operation on Intel, a hardware operation on ARM, well there's three on Intel that allows you to do that. So that's the option that the library provides and it gives you, it gives you functions you can call to do that as long as you do the map sync mode. So that sounds great, why don't we do something like that in Java and that sort of wants to prototype and I work with our transactions team to do it. The problem is it doesn't really work well in Java. You can open a device file using file open, that's fine. You can map things into a memory except that, oh, if you do use the file channel map method to do that, it doesn't know about the map sync flag. That's not built in in the underlying implementation in the JDM at the moment. So there's no plan B option. You're going to have to use the file to go to force. So you can actually write directly to the memory using the map buffer API. But the problem is when you come to a force, it's going to have to be that really inefficient write back and we found it was very, very slow. So there's a bit of code to show how you do that. You get a path to a file on the device. You create a file under that name. You'd map it in. You do your buffer put and you want to make sure that thing is out in memory. It's going to be really slow every time. So it's not really an option to do that. What about going in to do it via, the problem is you've got everything, all the functionality you haven't actually got performance. That's the one thing that's missing in this way of doing it, the standard way of doing it. Okay, so what about using JNI? Well, unfortunately, that's not going to work via byte buffer. So if you think of what you'd actually have to do, you'd have to call out to JNI to create a map and then pass the information where the map is through in some sort of handle. And then all your writes would have to go out via JNI calls to do every write of a block of memory. And then all of your flush operations would be JNI calls. This is going to be incredibly expensive. So you really can't do it via JNI. Not only does you not have the performance, it's actually worse. You also don't even get easy views either. So it's really not an option to do it that way. So what you really want is to build this into Java. Okay, so the way to build it into Java is to take, one way to do it is to take those existing APIs and to extend them in some way. So they know about this stuff and they can do things using a more efficient model in the way that the PMM C library does. So we take that program at the start there. We need to tell it when we do the map, we need to read write sync map. Not just a read write map. We want to use synchronous flushes for this. And when it comes to the force, we really want the force API to say, well actually, it's this range of the data I want forced. Because I haven't got dirty marks for the dirty pages anymore, we need to say which particular bytes we want written back. And we want the JVM to do that in an efficient way. So we'd implement that by changing the client APIs there and also re-implementing the mapping and the byte buffer to actually do the relevant operations. And that's relatively straightforward. We had a couple of extra modes for the map mode that the file channel uses when it maps stuff in. And when we come to actually see the implementation of the map method in the internal implementation of that, it actually keeps track of whether we've got a synchronous mapping or a normal mapping. And when it comes to do the M map further down inside that map call, we change it so it passes that through in the native call that actually does the operating system call. And we also tell the buffer whether it's synchronous or not. So we've got a couple of changes to propagate through. So in the actual native call that does the mapping, well, if the sync pack flag was passed in, we add in the relevant operating system parameters. And there's a bit more error checking because the kernel might not support those flags. Or we might find that you've used the wrong device and it's not sync maffable, so there's a bit more error checking. But basically we can get ourselves a sync map, a bit of persistent memory if we want, a bit of NVRAM. Now, we also need to change the map by buffer class. It needs to know whether it's working in sync mode or not. And we need to change the constructors of it so we can, by default, work not sync. But if we pass through in as the sync flag, we can use a synchronized buffer. And then that means the force API has to change. The old force API used to take the start of the mapped range and the length of the mapped range and just say do an FD flush on all of this, please. Using a native call to force zero, which does the relevant file script for operation. So if we change that, we can add a new method which takes a start address and a length, a start offset and a length. And we can call it from the old force method, say do everything. But in the new method, we can call something which is going to do something a bit smarter. And I've added a method on unsafe that is going to evict cache lines one by one. So this is going to use native code to do it. So it's not the most efficient method, but it'll be a lot better than doing a force. It's only going to evict the cache lines that are affected. So what does the unsafe method look like? Well, it's a nice simple method. It checks to make sure the addresses length make sense. And then there's two things we need to worry about as far as cache level synchronization is concerned. Before we flush the cache lines, depending on the hardware, we may need to be sure that all previous writes of those cache lines are visible in the cache. Now that turns out to be a no upon birth x86 and now it's 64, but I left it in just as part of the model. Inside a loop, we round down the address to the start of a cache line, and just iterate a reach line, a line at a time, calling a write back method, which is going to evict that, flush that cache line back to memory. Possibly evict it and intel some of the instructions evict, some don't. In arm it just flushes it back to memory. And then afterwards, we may need to make sure all those flushes, although cache line evictions or flushes have happened before we allow other memory operations to happen. So we may need another memory barrier operation to make sure the cache is consistent before we carry on. So the implementation of that is three native methods. We also need to know what the size of a cache line is. That's hardware specific as well. So we have another native method which you use to retrieve the size of a cache line. We use that to set up the size and also the mask which you use for rounding down the address. So there's the actual Java implementation underneath that. The problem is we want to do something that's hardware specific. We want to write back a cache line, or we want to do a memory synchronisation. So we can't just write some C code to do it. So actually what we have to do is jit some code using the stub generator, which generates lots of little stub routines, and we'll have a stub which will do a cache write back. So we can pull that out of the stub routine code and it takes a void star argument address, which comes in as a long, which actually gets cast to a void star, and we use that bit of jitty code to do a write back instruction. And we'll have an implementation of this for x86 and one for arm64. There's another helper routine which does a synchronisation operation. It takes a boolean argument, true or false, to say whether it's a precync or a post sync. So there's another jitty routine that does that. And the jitty code, that gets called from the implementation of the unsafe methods. We actually call out to those that help us to do the two different write backs. Here's the jittying process. This is something in the stub generator class. It's got a buffer which it's writing into. It gets the start PC, that's the function. We're also going to return, build a stack frame. That's the arm instruction that clears a single cache line out to memory. And it takes as input r0. That's what we passed in the start of the line, the line address. So it'll take that address and make sure that line is now out in memory. Tear down the stack frame with a leave and return. So it's a nice simple little jitty function. And there's an equivalent jitty function for the synchronisation. Now on arm, we don't need a synchronisation before doing the flushes because they automatically ensure that we've drained all memory writes and the cache is consistent before they start. So we can just, if we come in, if we've got true in arg0, we have a compare and branch of non-zero. So we'll jump to where that label skip is bound below and we'll bypass the memory barrier. Otherwise, if it's false, we've got a post-synchronisation, we need to a full memory barrier. And that makes sure that the cache lines are actually evicted memory before any more writes can happen. OK, so... Oh my God! Right, so that's... That was the... How do we now make this really efficient? How do we now make this really efficient? Well, what we need is plan C. So basically we need to get the compiler to recognise these methods and instead of calling out to native code, which is really expensive, we actually want to get the compiler to recognise this and just generate machine code in line in the compiled method and inline that into caller methods. So there's a basic simple plan for it. We need to say which methods we want inlining. That's those native methods. We need to tell the compiler how to recognise them and tell them they really are an intrinsic method. We need to actually say, yes, they want this intrinsic translated and these are the functions to use it. And then we need to, for each of those methods, build a little function graph that represents a function which does a cache write back or a synchronisation. So we basically build a compiler graph, a high-level graph, and then we add some rules to translate that to machine code. So this is the bit that I hope you'll find interesting. Don't worry if you don't understand it. It just says where you're looking at the code and you'll need to go and study it if not. So it's very easy to say this is a method that we want the compiler to recognise. You just put an annotation on it. It's an intrinsic candidate. You need to, in class, in the Sylvian symbols at HPP, there's a lot of templates that describe bits and the segments of a method name. You can identify a method in intrinsic. So, for example, that template there says that string is the string that identifies a method that takes a longer to unvoid. Do name says that write back zero name is the name of a method called write back zero. That was the name of the unsafe method. And do intrinsic says, well, we've got an intrinsic called underscore write back zero. It's on class defined by this symbol, which is another name, the unsafe class. Its name is write back name. It has a long void signature. It's a method called by the normal protocol. And the same with the precinct and the posting method, we define them. So that's made them known to the compiler. We can see a call and say, yeah, I know this is an intrinsic. Now, inside C2 compiler, there's a method called this intrinsic supported. It looks at a particular intrinsic idea it's found and says, do we really do this? There's a big switch on the ID. I've put in a little hack so that we can say actually don't recognise that so we can switch it off and switch it on. We can only just drop out of that and say true. And that means, yeah, translate this. But we can also switch it off to do a comparison. I did that comparison. Inside the actual compiler library call kit, which is the thing that does all the translation of methods, there's another switch on those intrinsic IDs. And there are two functions used to translate the three calls. There's one that generates a compiler graph for a write back and one that generates a compiler graph for the synchronisation operation, either pre or post. It obviously takes an argument, true or false. So we just call into those methods. So these are the ones that actually build the stuff that's basically a compiler graph that can be translated to machine code. Now when we come into inline unsafe write back, we've got the stub of a graph for a function and it's a function that takes a long. So the first thing we do is we plant a null check to make sure we haven't been passed a null unsafe object. So null check receiver says put in a test there to make sure there's an unsafe object or throw an exception. The next thing we do is we take the argument one from that function call, which is the address, and we get the node that represents that input argument and we create a cast node because we want to process it as a pointer and it comes in as a long. So we pass it into a new cast node, which now has type void star, or type pointer, it's a pointer node. And that we then use the GVN transform call to add it into the graph, so that's now linked into the graph. Then we create a new node that I've added called cache right back node and it takes three arguments and we create that and add it into the graph. Now the three arguments are the address, which is argument two. Argument one is a link into the current chain of memory nodes for pointer types because we want to link it in the memory graph so it's ordered with respect to previous memory operations. Input zero is the current control link. We want it to be linked into the control flow. So it's got three inputs and that's just, that's all it is, it's just a node. That represents an abstract right back operation in the back end we'll translate that to the appropriate instruction. We link that into the graph for the transform call and then we update the memory chain. The pointer memory chain is now this node. We've added a node in, so we've updated the end of the memory chain so other operations happen in order with this. That all mean these will be scheduled in the right memory order and that means we'll get the right cache synchronisation. But the right back will also ensure the right memory synchronisation. Okay, and there's a similar thing if we call the uns right back sync method we'll create a precync node or a post sync node. They need to be linked in the control and memory structure. They're both memory nodes so they become the new tail of the memory chain. And the actual nodes are just classes. They're instances of class node. They have three inputs which they pass up as their three ins. They have a bottom type which says I'm of type memory. That means that the back end knows that they need to be processed as memory nodes. They'll get a memory input. Okay, no problem. And there's a similar one for the precync node. And then the final bit of the equation, we need to actually in the back end say translate. When you see one of these nodes in the graph translated to machine code. Now this thing might have been added in the actual unsafe method. That graph might have been inlined into two or three callers. So we can actually get this machine code inline to the generated code just as it would for any other inline Java code. And what we do is we've got an input which is a memory address for this one. It should be just a raw memory address. It's a type indirect, which means you don't want to think with an offset or displacement. We want just an actual address for a cache line. So those asserts check that. And there's the DC instruction that basically flushes that back to memory. There's a different back end for Intel which will generate the relevant Intel code. And for the post sync node, we have an encoding that plants a member. For the precync node, you don't need an encoding because there's nothing needed. So it's just an empty step. So basically that means you've now got a really efficient way of getting the actual instructions, the single instructions you really want executed inline right there up into the whole call chain. Right. I'd better stop there. So the good news is we have a plan C. It's not actually the plan we may stick with. We may end up... I'm going to have a chat with Alan Baker about this. We may end up re-implementing this some other way. But that's just a really good example of all the different steps involved and the sort of benefit you've got. We did actually do some benchmark tests on this. It's a very, very big improvement. I can't give you the actual figures for that. But this is way, way better than the native method version. And the native method version is way, way better than using the driver mode for the PMM or calling out to J&I. So this is actually a really... can make a phenomenal improvement to your performance. Right. Thank you. I don't suppose we have time for questions? Yeah.


attention, then this workshop that I'm going to talk about is helping people develop data different products and also educate people on learning the tools required to do data science. So I'll be teaching this workshop along with three of my colleagues, Richel, Revoltam and Sharers, and together we're bringing more than 20 years of experience in teaching data science as well as doing data science in a very number of fields. We're doing this workshop on science conferences in India at the Fetal Effect, where people can come together and learn, and then you'll learn some techniques in statistical modeling, machine learning,


Hi, I'm Dr. Jeronella. I'm a pediatric rheumatologist here at Hackensack Meridian Children's Health. Someone may need to see a pediatric rheumatologist if they're concerned that their child is having ongoing or chronic joint pains or body pains that actually affect the child's day-to-day activities or fevers that don't go away or instances where there's inflammation seen in the lab work that's unexplained by any other symptoms. As a physician, I really believe in including both the patient and the family in our plan of care. I really believe that it's important to engage the child because I feel that if the child also understands why they're here seeing you today, why am I taking this medication, I think that helps empower them but also also helps them understand why it's important to do what they're doing. The advice I always give to families is that if they feel that they don't understand something, if they feel that they don't get their concerns addressed to speak up, I don't want them to feel that we're just telling them what to do, what you need to do. I also want them to be able to have some say in in our plan of care. Ultimately, I think educating the families about what's going on, the treatment also helps build that confidence and trust and I feel that's very important for us to move forward and to ensure better outcomes for their children.


This is covering the spread here are your hosts Jim sawness and dr. Ed Fang What is going on everybody? Welcome on into covering the spread right here on the fan duel podcast network My name is Jim sawness. I am a senior writer and analyst for number fire.com joined here as always by dr Ed Fang of the power rank.com you can find them on Twitter at the power rank Ed Glad to have you in here NFL training camps are opening right now Do you have a favorite NFL team that I should know of I feel like if we're running podcast co-hosts It's something I should probably know here Kind of not really I grew up in Philly was the Eagles fan for a long time Dishonem when they got rid of Andy Reid. I understand why it happened, you know, both both sides needed a new start It's not like, you know not mad at it, but I was just like, you know, I'm kind of done with this team I live in near Detroit now Of course, you know you goes go win the Super Bowl and now I mean if you ask me I guess I would say I'm a Lions fan, which is you know, there's no there's no pressure in being a Lions fan Yeah, that's true Although honestly, Ed like as an NFL analytics guy you disowning the Eagles for firing Andy Reid is like poetic Like is that that's the word that would come to my mind here for hearing that reasoning Well, yeah, and you could definitely say, you know, Ed, you're an analyst guy They're, you know outwardly the most forward in terms of analytics now and I definitely appreciate that You know like I mean especially NFL is such a part of the business that like it's almost good to kind of be agnostic and not have like Rooting interest in some ways Same with college football though, obviously with like Stanford educational background and being here in Ann Arbor There's there's clear rooting interest there. So, you know that NFL I can kind of take a step back Yeah, joke around about how I'm a Lions fan and yeah, it's all good See it's easier for me, too Because like I grew up a Jets fan for some reason and it's very easy to disconnect yourself being a Jets fan So like I've had no issues with that and I can just appreciate the NFL as well College football same thing. I'm not I'm always going to be Inclined towards Northwestern and I can never bet on them as a result I know that it would be very stupid for me to do so I can never I can never remove my my heart out of that So NFL training camps opening will be talking NFL later this week with Evan Silva of establish the run calm Breaking down his process for NFL win totals and all that today. We're talking with whale capper You can find him on Twitter at whale underscore capper topping talking NBA futures NBA Championship futures based on free agency and all the trades that have gone down and it should be a great show So looking forward to talking with whale for sure That will be coming up in just one second quick reminder that if you were not with us last week We had JJ Zachary Sonon to talk about Projections how he builds those for the NFL which player props he likes for 2019 and also just generically How he goes about betting player props based on his process and how his process of building projections informs that we also In covering the future Ed talked about the Minnesota Vikings their Super Bowl futures I went through Alex Bregman's MVP odds Then bet Alex break or Alex bowman to win the cup series championship And he proceeded to wreck two different cars in two days in New Hampshire this past weekend had to drive his teammates back up car So we're off to a blaze and start here with Alex bowman to win the cup series You can find that podcast on spotify Apple podcast and Stitcher as well Just by searching for cover covering the spread and as a new podcast any ratings and reviews you leave are So deeply appreciated and also they help us out a ton So if you like we heard from JJ or you like we hear late today from whale capper Let us know on Apple podcast by leaving a review and we'll get into whale capper in just one second But Ed NBA futures the topic for today any dabbling for you yet into that market for 2019 2020 Well when I woke up this morning I mean I was just so excited to talk about the future's odds for Oklahoma City that I just couldn't contain myself We'll get into that a little bit later Yeah, definitely some stuff. I like and yeah, probably gonna dabble on it pretty soon. Yeah, cuz I think we're gonna get some good numbers All right, well, let's pause here for just one second We'll bring in whale capper to talk about that again follow him on Twitter at whale underscore capper He is a a handicapper for the NFL NBA and tennis as well. So let's bring him in here with his thoughts on the NBA Covering the present Let's welcome whale capper here to the show for covering the presence and whale It's been just this crazy NBA offseason summers of you know in full swing, but I'm sure it's been a busy one for you How are you doing today? I'm fantastic man, and you nailed it. This has been the most interesting exciting enthralling NBA offseason that we've had in the years I've been covering league from a betting perspective and as we look across the landscape You're entering kind of a complete new realm this season where a lot more teams have a chance than the last handful of years So it's gonna be a super fun year to bet the NBA And how hard is that for you as a better having all this ambiguity because there's some level of certainty when you know We've seen if we've seen the Warriors play together with the same cast for several years You kind of know what to expect but this year I think there's been so much change. How hard is that for you when you're building out your algorithms to kind of know What to expect for each individual team? well for certain, I think you have to kind of Be be prepared to scrap your priors earlier than you would otherwise, right like I mean I'm going in with this with a perspective That's informed based on player strengths and you know and movement and how you know how the landscape is changing and It's my best guess, but I certainly this year. I'm not going to be you know dying on any given hill I'm gonna be prepared to to pivot pretty quickly once we start to see how these you know how these teams play together So well, how do you come up with the priors? Is this a computational method or is it more subjective in nature? Yeah, so I lately at you know Throughout my career. I mostly look at team level stuff as my starting point because I like to kind of have something that's you know more Stable year-over-year that you can incorporate player level kind of predictions and Combine those into a team level Expectation but you know, you're gonna get pretty close to back to the same place that way in my experience And so I think going for Going for player level stuff is good and helpful and it you know for establishing priors It's kind of the key because you know, we have a you know player like you know, I guess best best example would be the nets What do you do with the nets? They're losing you know a player like Yeah, you know D Lo and they're getting Kyrie Irving and you know, you want some sort of Quantification on you know what that change is going to do in terms of their offensive a defensive efficiency And the best way to do that is a player level approach So let's go here broadly from a process perspective for you from an NBA futures perspective It's still July of 2019 And if you're betting the NBA title right now, that's gonna tie up some of your bankroll for almost an entire year So how good of a value does it have to be for you to actually bet an NBA future at this point in the year? Yeah, this is a really good jumping off point for all kind of preseason action in all sports Because you have to be you know, you can have an absolute guaranteed ROI On you know on some sort of position be it, you know NBA college football NFL It doesn't matter, but you know, you can corner the market by you know By getting ahead of a number that's gonna move for instance and then watch it move You know four or five wins and then come back on the other side You know so that you have this nice little five-win win, you know middle The problem is you know that tying up that bankroll over the course of you know the regular season impacts You know how much you're gonna be able to get down on game by game and so you need to have probably in the ballpark of 15 to 20 percent ROI type of target on those kind of plays To make it worthwhile locking up that bankroll because if you consider like okay over a four month sample size Or a six month sample size however long you however long you intend to bet the NBA day by day It's pretty easy to turn over enough Plays that you only need you know like about a half a percent or so ROI on any given play on average In order to make up the difference of what it would mean to lock up that bankroll for the course of you know for six months so it's it's a it's a pretty straightforward math problem and You know you can kind of you know figure out for yourself like okay This has to have an expected value target of blank in order for it to make sense to lock up this bankroll for that many that many months and and in general the answer is it's not worth it but But but for sure You know for sure. I still get involved in the futures market for sure There are opportunities where you say okay like you know this number is going to get a Substantially shorter throughout the season So it's important to have this ticket now in order to give me flexibility because I know I'm going to be entering Entering the futures market taking other positions on other teams over the course of the season as we learn and understand more and you know, you know There may be some team that you see a number out there now and you're like man when people see this team you know go out on you know start out the season, you know at the you know 15 to 5 15 and 5 record or something like after the first month, you know They're all that that that that price is going to be substantially shorter and I'll have that ticket in my pocket So you know there there are pluses and minuses to do in it But but in general you need to have a pretty high expectation of how valuable the ticket is before you lock up that bankroll So well like especially this year. I want to ask you more about your process Are you looking for teams? Like do you think there's gonna be more value in teams that have made a lot of changes? Obviously with like the Lakers and the Clippers being those teams Or are you looking for teams that have been more static in the off-season and are kind of flying under the radar? Ooh the Way that the market has kind of priced in the expectation that the likes of the Clippers and the Lakers are gonna be these old world all world teams Without having them see see them play a minute of basketball together I think presents value on some of the more established teams that have you know They have deep rosters that have known Advantages like teams like your your nuggets in your jazz this year are probably good examples They didn't get a lot of buzz during free agency They didn't get a lot of you know people talking about there You know there there are chances, but guess what we know those teams have a built-in Outstanding home court advantage because they play at altitude we know those teams have you know solid cores that have been playing together Year-over-year everyone knows their roles. They've tweaked some pieces on both squads So they should be more competitive or they're getting you know in the case of the nuggets They're getting some some youth to inject into their lineup so they should improve And you know in general they're they're young teams that are on kind of an arc of improvement anyway, so you know I do think that You know of teams that as we enter the season You know the likes of the jazz and the nuggets probably hold more value, especially in kind of game-by-game betting once we get into October and November Then the teams better expected to be these super teams Let's talk about those super teams right now and talk about both the LA teams starting off with the Clippers Paul George and Kawhi Leonard are in town and they're not a favorites to win at Fandall Sportsbook win the NBA championship next year They're plus 320 right now, and I think based on your previous answer We kind of know your thoughts on them at that number Are they the favorites for you personally entering the year or are you shying away from them? Given the height that's starting that team right now Man that is an awfully short number for a team that has a lot of questions I'm gonna I guess you know I'm a long-term buyer in what they're doing with the Clippers the fact that the fact that that Jerry West pulled off this deal in the first place is kind of all you need to know about you know What trajectory this team is on in general? I have a ton of respect for their coach Doc Rivers And Kawhi Leonard bonafide super star bonafide super duper duper star He will 100% win you a series You know when when the going gets tough we saw it against Philly we saw it against the Warriors So it's it's not it's not against the Bucks too I mean he was the defining you know defining player and kind of you know closing the gap and in late in games five and six for them So you know it's it's it's pretty obvious that you know He is on the tier of players that can win you a title You know and you if I'm back if I'm backing anyone in the futures market to win the NBA championship They better have a player like that a player like LeBron a player like Kevin Durant You know you can pretty much count on one hand the players who are capable of single-handedly winning you a playoff series in the NBA And Kawhi is one of those guys. So yes, clearly they should be kind of in the conversation for favorites But Paul George coming off two shoulder surgeries You're telling me he's going to be able to carry any kind of offensive load over the first half of the season I am very skeptical of that. We know that Kawhi Leonard is going to enforce kind of a load management scheme on this Clippers team And you know they have they have depth. They have some nice pieces They have defense all that portends well to being competitive once comes playoff time But guess what if you like the Clippers if you like Kawhi wait until like December January You're gonna see a much better number when they're sick because they could very reasonably be in like six seven Standing in the Western Conference, you know come around, you know Christmas in New Year's and at that time Maybe they start to put together a little chemistry a little bit of a run But this the idea that this team is gonna be the favorite to in the NBA title from wire to wire is lunacy So buying in now at the bottom of the market. I mean at the top of the market is is not You know not a worthy play in my book Yeah, I mean, I think we you're absolutely right What we saw with Kawhi and his playoffs that he can put a team on his shoulders But I think what also we saw in this playoffs was that he felt kind of alone out there in Toronto And and you know, he made the decision to go to LA bring Paul George with him which I think for him is is definitely the long-term play and Yeah, I think their their future is looking bright Well, I want to ask you about the other LA team the Lakers. They got Anthony Davis Did you think they gave up too much for him? What do you think their prospects are? There's obviously a guy named LeBron also on that team break break them down for us Yeah, so in the moment of you know after that trade was announced I felt like it was a lose-lose deal for both teams and part of the reason is I feel like They they the pelicans I didn't think got more than they could have gotten if they made this deal last year after the all-star break I feel like they got a little less And you know, they granted they knew that they were getting the fourth overall pick in this draft and granted They did some very clever things in terms of how they put together their you know Their approach to the draft this year and they got a player in Hayes who looks Unbelievably good. So, you know, it's it's a little bit You know a little bit hindsight bias to kind of pat the pelicans on the back so much for kind of what they got for Anthony Davis they did think but they did get a lot. They got a haul The problem is I think the Lakers They would have been better off as a team and as a franchise that they had had Davis for last year's Stretch run if they could have gotten some playoff minutes with Davis and then LeBron on the floor together So they can start figuring out each other's roles how they work best You know wealth with each other in the over the course of a playoff series because playoff series basketball It's so different than the regular season and the idea that in year one These two guys are going to be able to figure it out on the fly in a very competitive Western conference Is a tough tough bill to swallow, you know, it's and you know date the LeBron kind of arc is Clearly his offensive contributions are coming down Year over year here, which is concerning because we already know he's more or less taking defense off in the regular season And if his offensive trajectory continues to tail off then I'm not sure how this team Realistically competes for a title over the next couple years, but it's it I think they dodged a bullet probably and not picking up a third Superstar. I know that was kind of the entire You know plan here. We're gonna get Davis. We're gonna bring in another max guy But I think the way it worked out where they ended up with a deeper roster overall gives them a heck of a lot more Flexibility going into this season than they would have if they had picked up the third superstar that they were going after So I think you know, I'm a little bit more bullish on the Lakers chances of being competitive in the West than I was a couple of months ago when you know And it was looking like they were gonna be a complete barbell sort of team top-heavy in the most extreme way you could imagine Especially with a couple fragile players who are you know known to go out with injury at least in the especially in the case of Davis But more recently in the case LeBron, so it's it's going to be a fascinating season to see how it plays out Lakers coach is enormous question mark. It seems like LeBron clearly wanted Jason Kidd and somehow He's the assistant coach that has trouble written all over it So, you know again the Lakers kind of fall in the same category as the Clippers where they've been over bet Substantially in the market and you know, yes, they can contend for a title But you're gonna get a much better crack at them at some point in season than you will at this time So the Clippers and Lakers are two favorites right now, but now maybe not the time to bet them We're talking here once again with whale capper host of the deep dive podcast and well Let's move to the other team here making big moves during the offseason in the Houston Rockets because they've got Russell Westbrook in town Reuniting him with James Harden They are third in futures are actually fourth in futures I was behind the Clippers Lakers and Bucks one of the more Static teams during this offseason in a positive sense the Rockets at eight to one What's your view on them right now with Westbrook in town and joining up with James Harden? I'm going to be cautiously optimistic that this is a partnership that can work in the 2019-2020 season It's you know James Harden clearly Needed some help over the last two seasons carrying the offensive load in the regular season I feel like his underperformance year-over-year in the playoffs is in large part due to how much of the load He carries during the regular season the the Rockets at one point last season were legitimately a bubble team To make the playoffs they were playing so poorly they were dealing with so many injuries and James Harden single-handedly carried that team into a position where they could even compete for a title last year Injecting a guy like Westbrook who plays a little bit differently. He's not going to shoot the ball necessarily well So on its face value. It doesn't necessarily make sense as a fit But he does things a little differently. He attacks the basket and you know in one of the more effective ways across the league The idea that they're going to be able to create space with a bunch of shooters on the floor and give Westbrook an opportunity To really get after it near the hoops is appealing to me I like that they were able to hold on to Clint Capel Although he's not shown himself to be effective necessarily in the playoffs, but I like him especially as a regular season player So, you know, I think overall There's a lot to look forward to here with the Rockets and if if Harden can concede some of the Responsibilities of carrying the offensive load here to Westbrook I think that sets them up to be more dangerous in the playoffs than we've seen from them the last couple years Excellent so well cabra, I can't look at a futures chart without golden state at 15-1 Jumping out and just taking up my entire screen. Obviously Clay Thompson is gonna be hurt for a while But they still have this core that won 73 games a couple years ago Don't have Kevin Duran anymore. What's your take on the Golden State Wars? Yeah, I'm with you on this. This is one of the more head-scratching numbers out there because not long after We kind of I mean, you know all throughout the offseason. It was pretty obvious I mean all throughout the kind of the late part of the regular season in the playoffs It was pretty obvious Kevin Duran was headed to New York We didn't know if he was going nicks or nets But he made it pretty clear at the all-star break PC did with Ramona Shelbur and hey, I'm moving my entire team to New York We are going to the Big Apple and so you would have thought at that time that some of the early odds We saw pop would have reflected no Durant on the Warriors yet They were still kind of in the conversation at the top of the West You know as you know more or less the favorites to win the West Before we knew Anthony Davis was gonna go to the Lakers before we knew Kauai was gonna go to the Clippers So the fact that it swung so violently Simply on news that we were expecting anyway is surprising And then you know the you know Clay Thompson being out with an ACL is obviously somewhat concerning But he you know there's plenty of time for him To get back into the mix and be a contributor once they get to the playoffs So when you're evaluating the Warriors, it's there. They are for the first time in many many years They are a value bet which is crazy to say but here we are And you know, I think you have to talk to yourself into okay. Well is Steph Curry capable of carrying the offensive load effectively on his own without clay Thompson over the course of the regular season this year And you know if he's if if you know, it's the the x-factor and all this really is you know as D'Angelo Russell Dilo is Capable of doing a lot of interesting things on offense not necessarily a great fit with Steph Curry But pretty obviously and clearly like a trade piece come You know come December January I got a funny feeling that we'll see you know a D. Lo for kind of a guy in the you know in the Sort of swingman type of role You know good good good a good swap would be sent D. Lo to the Minnesota Timberwolves and try to get back Robert Covington and another offensive piece You know that that would immediately I think improve my my Expected wins and expected performance for the for the Warriors over the season and I feel like a deal like that is imminent And at that point you're just hoping that the Warriors medical staff Pulls themselves together and gets clay Thompson healthy and back on the court And then you probably have pretty nice ticket come come April that you'll be sitting on with a number that no one would Believe you actually got if you have 15 to 1 so that that that does make sense to me as a bet right now And the Wolves obviously very interested in D. Angelo Russell. So that's not a shock See a big shot Bob at West would be a lot of fun. So I'm on board Idea could be a lot of fun. I don't know big shot Bob still applies, but we'll go with it Anyway, you touched on the warrior him. Can I just jump in real quick? I just wanted to jump in because because web was talking so much about how those odds have moved I feel like the first time I saw a golden state. I saw him somewhere at 10 to 1. Yeah After we had all the news. So like this number is getting longer. Yeah I feel like it's going the wrong way But yeah, just a little bit more history on where it is. Also. I like Kevin Looney as well I think he's gonna be a good piece of that next year. They're obviously gonna miss a good dollar, but But yeah, I think we're in agreement on that. Yep strong agree Kevin Looney. Nice player So you mentioned the Warriors of 15 to 1 you touched briefly on the jazz and the nuggets the jazz are 12 to 1 the nuggets 23 to 1 at Fandals sportsbook If you had to settle on one team that you view as being like a value You're willing to bet right now and lock up that bankroll for such a long time as we had discussed Which team stands out most to you based on the ads at Fandals sportsbook? Yeah, it's the nuggets for me I went back and forth between the jazz and nuggets because the jazz the jazz From a metric standpoint just scream at you a team that is better than the market things Right like you look at their numbers and they were like clearly a top four or five team for most of the season last year And they've not done nothing but addressed some of their key weaknesses. So there's there is value on the jazz I think but but what we saw in the playoffs out of out of Jokic was Incredible he is the real deal. He has the tools to make an absolute difference in any playoff series that he's in I Was shocked that they lost that game seven to the Timberwolves that was wild But that's but spoke to their any experience, you know It was a team that was almost all of those players first-ever playoff run yet They beat Popovich in a series which was pretty damn impressive and now they head into a you know Take presumably take another step forward And I think are going to be a very very tough out in the playoffs on top of a team that you could concede conceivably See pile up a lot of regular seized wins again I mean this is the nuggets I think are kind of because of the potential star super duper star power of a player like Jokic and what he can do from You know both the shooting outside and getting to the rim you know with his size is Potentially the deciding factor in a playoff series against you know equal opponents So so I'm I'm a bigger buyer in the nuggets probably than Than any other team in the West right now Yeah, 23 to 1 for a team that does have one of those Kawhi guys you mentioned who can make a difference in a series I think is certainly very tempting. That's all we got. Well, I want to thank you for hopping on here I think it was a fun discussion about kind of how you do your NBA futures bets because for a lot of people They may not know you know the the opportunity cost with betting a future at this time But sounds like the nuggets worthy of that bankroll burn for a little bit of time So I want to thank you for coming on again. Enjoy the weather in SoCal Hopefully you have a good couple of weeks and hopefully you're getting sent for NBA and NFL season. Thank you again for coming on We'll talk to you again soon for some tennis talk in August. Oh, I can't wait guys bucks to win the East Covering the future One a final big Thank you to whale capper for hopping on and talking about NBA futures again Follow him on Twitter at whale underscore capper to get his thoughts on the NBA NFL and tennis will have whale back on pretty soon. You're talks about FL and of course tennis prior to the US open as well Once you get in on the action check out the Fandal sportsbook and place your first bet today If you lose Fandal will give you a refund of up to $500 in site credit visit sportsbook that fandal.com for more details terms and conditions apply must be 21 plus and Physically present in New Jersey gambling problem. Call 1-800-gambler. Let's move now into covering the future and Ed as we look forward to this week I know you mentioned you were doing your college football numbers up on the power bank com for this week Any big takeaways for you based on going through that process and looking at what they say for 2019 Yeah, you know, I kind of mentioned Texas Longhorns last week coming into the season There's a ton of hype and went 10 and 4 last year huge wins over Oklahoma and Georgia But the one thing I want to say about Texas for this year is They're overrated. So I kind of warned Texas fans about, you know, getting my report I've offered them a refund on the free report that they can get on my site But you know, the numbers just don't like Texas this year. They're ranked 42nd by my numbers That's gonna be way lower than they end up in in the polls that are gonna come out Later in August and you can really argue that 42nd is You know, the numbers have them a little bit high at 42nd and let me get into this first, you know They're obviously propelled by what they did last year that big win over Georgia Georgia was missing their two of their best defensive players in that game It wasn't something that knew about beforehand But when they kicked they didn't have two of their best players getting ready for the draft And then the other thing that you know, when I do my preseason model like one of the most important factors is how they performed last year and What I do what I put in is my team rankings and these are the algorithms. I developed based on my research It takes margin of victory in games and adjust restraint the schedule a simple yet still powerful predictor and Texas was 14th By those numbers and that's what's you know, and despite that they're still 42nd You could also evaluate this Texas team in a different way from last season. You can take yards per play offense defense adjust restraint the schedule put them back together and rank them as a team They were as low as 30th last year when you look at adjusted yards per play so So they might not even as been as good last year based on the Georgia game big Georgia win When you look at some Efficiency metrics they might not have been as good as even we thought them I definitely don't think they were as good as the 10 win season They might have been even worse and then the numbers are also seeing a lack of returning stars This isn't such a big deal on offense. They get quarterback Sam Elinger back They got a study Collin Johnson at wide receiver. They should be good. I'm not super high on Elinger as a quarterback I think he's got limited upside, you know How much better are they gonna do than the 59th in adjusted yards per play that I had him ranked last year? We'll see but where this really comes in is on the defensive side of the ball They are gutted of their top performers from last year They lose defensive end Charles and men who big 10 defensive player in the year quarterback Chris Boyd Another key piece that got drafted in the NFL So this unit was 24th last year and it's gonna require a Myron miracle to stay at that level a top 25 level So I'm I think Texas is gonna be seriously overrated this year Nine and a half win seems a lot of very high at the fan dual sports book and and just let me close with one other thing You know, you're gonna see a lot this year about how Tom Herman Is great as an underdog and it's terrible as a favorite I could quote numbers, but this is a kind of trend that just screams small sample size to me Like please don't make any of your bets based on what Tom Herman has done over four years of coaching And I know you can you know, you can kind of make up these stories about why this is true And I'm sure some of those are are true, but it's small sample size. It's screaming regression to mean to me You know, if that's you know bet against Texas if you think they're not a good team And you agree with me bet for Texas if you think Ellinger is gonna be a first-round draft pick next year But just don't put too much weight in in these in these kind of trends of what Tom Herman teams have done It's just a very different context for 2019 Than what the context was with where he was previously and I think that that's a key thing that is lost in those numbers also Losing a guy with the name as glorious as little Jordan Humphrey like name values matters a lot in my algorithms And that's a big that's a big loss for Texas. So I agree You know, it's tough loss. Yeah My cover in the future back for this week is gonna go to the NFL because I haven't got to talk NFL yet And when I look at the MVP odds on Fandals sportsbook, there's one name that stands out to me I didn't go Marcus Mariota despite the fact that I always for some reason gravitate towards Marcus Mariota But you look at the odds for MVP you see can Newton at 50 to 1. I think that's Much longer than it should be those are the same odds as Matthew Stafford who may throw the ball five times in total in 2019 Dak Prescott's there and Prescott I can understand more but Can's odds are also longer than Jimmy Garoppolo and Mitchell Trabisky cams MVP odds tied for 16th among all quarterbacks and I think a lot of this is due to the shoulder injury, but Let's play the assumption game here So we talk a lot about on the DFS podcast where if you assume Cam Newton is healthy I don't think he's longer than 25 to one or so at most He's actually not even the shortest guy on his team Christian McCaffrey is 34 to 1 to win MVP at Fandals sportsbook and given how rarely running backs win especially in this analytics age It seems odd that can is not at least shorter than Christian McCaffrey last year before that shoulder injury got really bad I think it was that game against Tampa Bay where it really got pretty bad He had 7.9 adjusted yards per attempt at that point That would have been the second best mark of his entire career trailing only the year that he won MVP And he also had just four rushing touchdowns last year, which is the fewest that Newton has had his entire career So if we get some more variance along the goal line where cam Newton is not deferring to Christian McCaffrey, you know Healthier taking that rock himself. We could see some pretty gaudy numbers in the rushing category in addition to Potentially getting back to where he was last year as a passer this offensive line is I believe 12th in my offensive line rankings Now up on number fire. They've got good playmakers and DJ more and Curtis Samuel They'll win every track meet every single week and that has a lot of value So I think that there's definitely some risk here with cam Newton in that shoulder injury But I like to play the assumption game And if cam Newton comes out during training camp as it starts now and looks healthy He's not going to be 50 to 1 for very long So I think that it makes a lot of sense to get in on cam now before we get those reports about his health If he's not healthy, you know, then that's going to be a loss and you're gonna take that L for sure But 50 to 1 given the odds that thing moves pretty soon I'm gonna take that for sure add any thoughts for you on the Panthers as we get set for 2019 Yeah, absolutely. I mean as far as cam goes to me like what I don't like about cam is his accuracy He's not one of the most accurate quarterbacks and you want to kind of you know Tend towards those guys for success both team and MVP level But you're absolutely right that I think there's a ton of value in his MVP odds for all the reasons that you mentioned And you know, you actually shouldn't take my opinion on it You should take Evan Silva's opinion on it because this was the future bet that he talked about on my show Oh, my podcast the football analytics show And that was I mean he was gushing about this for all the same reasons that you mentioned Evan's gonna also be our guest later this week as well But yeah, I think there's a lot of reasons to think that 50 to 1 is is is a pretty good one To is a pretty good futures bet to tuck away in your account and that one is queued up for me that podcast is I have to listen before Thursday clearly I hadn't listened yet So I'm excited to dive into that as Ed mentioned Evan will be on here on for Friday morning talking about His win total bets for 2019 so make sure you subscribe to covering the spread on Spotify Apple podcast SoundCloud Stitcher wherever you get your podcasts and once again ratings reviews help us a ton So we thank you if you liked what whalecappers said earlier leave us a review leave us a rating and leave one for Evan Silva Later in the week as well at any big things popping over at the power rank for this week prior to Friday Yeah, I mean we're still got the college football win totals report You can get my win total for Texas. I should give it to you right now It's significantly lower than nine and a half. So let me just let me just put that out there But there's a win total for 130 teams based on my preseason model The model has been successful of predicting the game winner straight up in 70% of games over the last five years It's something that I use as is objective baseline to start the season and I think you should as well So check it out at the power rank calm. All right. Thank you, Ed. I appreciate that. We'll talk to you again on Friday Awesome. All right, that is yeah, absolutely. That is Ed Fang to follow him on Twitter at the power rank I am at Jim Sonnis J. I am S a n n e s you can also follow the fan dual podcast network at Fan dual podcasts on Twitter. We'll talk to you once again on Friday to break down NFL win totals with Evan Silva Until then good luck with your bets and we'll talk to you once again later this week This has been covering the spread here on the fan dual podcast network


And that's history, Brew Crew. 52 strikeouts to start the season without a walk. Way to go, Corbin Burns. You are the ace of the Brew Kids.


Toby you're on you got a tough act to follow I was going to say this is a double challenge being one of the last three barriers to dinner in addition to following read tux and in addition to following read tux and all I can say is I'll do my best and I'm also a friend of Mark's and and a fan of Mark's and a mayor of Mark's and and when he called me he told me a little bit about this group I think I may have misnamed it on the title slide but most importantly he told me it was a group that in particular at this meeting wanted to hear multiple perspectives from different components of the health system on medical genetics and would appreciate me saying a few things about what public health expects from medicine as public health moves forward using genetics to accomplish public health goals and the mission of public health and it struck me as being very consistent with what we in public health have been using as a framework to consider the public health system you just will call it the health system which is a number of sectors that have to work together in order to make effective strategies like genetic genomic strategies to improve the populations health and prevent disease these being the health care delivery system governmental public health community-based organizations employers and employees the media and academe ideally working together so what Reed Tuxin said about the fact that we all need to find ways to work together certainly resonates with that framework it seems to me as if there's historically been and is increasingly becoming a closer relationship between public health and medicine as we each find ourselves more dependent on on each on each other for accomplishing our objectives and genetic seems to be a technology that especially calls for that interdependent relationship we in public health can't accomplish public health goals with genetics except if medical care in the medical care system applies genetics in their applications by the same token I would submit that medical care cannot be a can not assure itself that what it does in utilizing genetics will in fact improve the health of populations and reduce health disparities without the full cooperation and connection with public health and that I guess is the main message that I would like to bring to the group today in terms of our own role in applying genetic technologies genetic knowledge genomic knowledge we are prone to take everything we do and put it into the framework of core functions of public health that were first enunciated by the IOM future of public health report back in 1988 and that is assessment policy development and assurance so using our so-called mother science of epidemiology we carry out surveillance we gather continuing data on the frequency the prevalence the incidents of genetic related diseases and conditions that relate to genetics and genomics and make use of them in developing our own policies by the same token we carry out risk assessment of populations and with family health history are starting to incorporate genetics in how we assess risk and then turn that kind of information information over to the medical care system to deal with in the case of policy development we we adopt and develop and support various programs such as screening programs utilizing genetic knowledge going back to newborn screening historically we provide and and urge the provision of both patient and provider education in genomics and we try to adopt policies that create a an interface between what we do and what the medical care system does and finally with respect to the third of our core functions assurance in addition to assuring the access to our own programs of screening as an example it is the concern of public health that the public at large has access to medical technologies that have proven their efficacy so everything that's been said today about effectiveness comparative effectiveness certainly resonates to our desire to make sure that access to effective technology is spread among the population each of our uses of genetics of applying that framework of core functions necessitates linking with the medical care system if we are to carry if we are to carry out epidemiologic studies on the impact of genetic conditions genetic profiles on the health of populations we need data from the medical care system by the same token if we gather information on individual risk through tools such as family health history we depend upon medical care to know what to do with that in information when a patient brings a family health history to a physician our efforts to develop policies and our efforts to educate the public patients and providers need the cooperation of the medical care system if there to be effective and certainly our efforts to assure access to medical care using genetic technologies needs the cooperation in support of medical care in those efforts Mark suggested that in sharing comments with you about the public health perspective I draw upon several projects that we in our Center for Public Health and Community Genomics at University of Michigan projects that we've been very much involved in along with the Center for Disease Control's Office of Public Health Genomics and its director Muin Kuri and the first of these which occurred three years ago was an initiative that some of you were involved in called GapNet genetic applications in practice and prevention which has been a continuing attempt that the Office of Public Health Genomics has had to form and support a large network committed to accelerating and streamlining the translation of genetic research into evidence-based applications in both clinical practice and public health certainly almost everything that's been said in today's meeting fits into that goal of GapNet. More recently last year we carried out an extensive stakeholder consultation from the public health sector in the public health sector to get people's opinions on what should be the leading priorities to advance public health genomics in the next five years and currently we're working with the Office of Public Health Genomics on a conference an invitational conference that's going to be held this September which has now been named and I have to read it because of recent name new strategies in public health genomics actions to save lives now trying to incentivize public health departments to utilize what now has evidence as public health strategies that can save lives again necessitating the cooperation with the medical care system and I'll get to those those applications in a moment. In assessing what public health professionals think about the promise of genetics in public health in serving public health goals we find that most public health professionals categorize these technologies or if you want to look at the rapidly expanding amount of tests screening programs categorize them into three categories there's the historic use of genetics in screening through newborn screening programs which every state health department is involved in and typically operates then at the other end there's a wide horizon that we look at a broad horizon that we look at in terms of the promise of genomics to revolutionize as some of us speak of public health as increasingly we in public health as you in medical care have available to us more and more information on individualized risk for disease we traditionally don't deal with that individualized information we're a population oriented enterprise but as we are able to learn more about individual risk what do we do about that how do we regulate the workplace when there will now be increasing information about variation in risk to various workplace exposures so these are the sort of broad futuristic if you will ways in which we look at public health and genomics from our perspective but then there are several technologies that we now have available to us that can save lives and CDC's office of public health genomics is in convening this conference in the fall has is has identified three technologies as to which there is sufficient evidence to know we can satisfy public health goals by saving lives now and these are hereditary breast and ovarian cancer and of course that being linked with family health history utilization lynch syndrome and the utilization of cascade testing resulting from diagnosis of colorectal cancer and lynch syndrome and familial hypercholesterolemia also calling for cascade testing where there has been a diagnosis of that condition and the office of public health genomics has come up with the statistic that if public health is able to advance these three types of programs effectively we will save significantly more lives than are saved through all of the newborn screening programs in all the states each year so these are technologies that we feel are in front of us now they might be considered the low-hanging fruit of public health genomics the CDC has also created this multi-tier way of categorizing screening and testing and you've seen this list with net colonizers presentation so I'm not going to repeat it again other than to say that it is the tier one evidence-based applications that CDC's office is now working on with the public health community leaving tier two to inform decision-making between physicians and patients based on the context the clinical scenario if you will and the evidence to date and public health does have a role to play in trying to assure that little if any resources are being applied to the utilization of technologies screens tests as to which there is insufficient evidence of an impact on outcomes the so when one looks at the these low-hanging fruit what many of us would like to see us concentrate on now that can save lives what are the expectations from that we have from the medical care community I've put them into four categories with the acronym PEP practice education policy and partnership in terms of clinical practice if there will be effective implementation of programs that utilize family health history for testing of BRCA one and two genetic profiles if you will public health needs to be involved in encouraging the population at large to have their family health histories taken to utilize tools such as a surgeon general's family health portrait it needs the cooperation and connection with the medical care system in order to assure that these family health histories are utilized appropriately by the medical care system and of course efforts that we are both engaged in public health and now and the medical care system to further the integration of family health history into electronic medical records and and connecting them in turn with decision support tools this all needs to come together if this particular technology is to save the lives that it can save by the same token lynch syndrome testing utilizing cascade testing in order to start with a diagnosis of lynch syndrome and utilize that in order to identify family members who ought to be tested for lynch syndrome with resulting medical care interventions where there is a positive test this is the kind of technology that needs both public health in organizing these programs on a statewide basis if you will at the same time that it needs medical care starting with the diagnosis initially which occurs in a in a medical setting now both of those technologies happen to be the sum total of recommendations made in the healthy people 2020 report that relate to the use of genetic technologies these two in addition the first of these is the one recommendation that also has been given the sort of gold standard imprimatur if you will of the U.S. preventive medicine task force the third of these low-hanging fruit if you will that we need public health and medicine to connect together on is the the the application of cascade testing to those who are diagnosed again initially by the medical care community for familial hypercholesterolemia in connection with with the the patient doctor relationship and to move from that diagnosis to identification of family members and tests of that genetic profile among those family members and if we can do these three kinds of connections between clinical practice and public health we can save an awful lot of lives each year with respect to education we need to work together certainly on provider education you all knew that know that many of you work on on projects of that type some of you are active in nitchpeg the the prime organization the lead organization to to further genetic education among health professionals including medical professionals but we have much to do together in terms of informing the public at large and patients as a subset of that population on just what genetics me and how the genes within us relate to the environment outside of us we do a poor job at this point in public health in enabling the public to understand how on the one hand we can say that health disparities result from social and and environmental factors while at the same time the public reads increasingly headlines and articles about genetic causes of those same diseases and how these multiple factors intersect relate to each other and need to be studied together is a task that seems to me we we both have together and by the same token the utilization of professionals such as genetic counselors is something that we both need to do a better job at medical professionals need to know at what point a patient needs the intervention of a genetic counselor in making these tough decisions on whether to test or not how to share and with whom to share information resulting from those tests and by the same token it is part of the task of public health to let the public know about the availability of genetic counseling when people are troubled by these kinds of of questions and have to make these kinds of decisions in terms of policy development we both need to work together both sectors on speeding up this translation pipeline and there are several of you have highlighted that starting from Eric Green with his left to right slide in an ordinate amount of our resources is continuing to be placed at the left end of the scales again morning query several years ago wrote an article dividing the various the various stages of translation from T one to T four at the end needing the increasing amount of funding of research on what is it isn't effective again something you all been talking about jointly we need to be arguing for not necessarily less money for basic research but certainly more effort being placed at that right end of that continuum so that we have more information used in ways that you've all been talking about today we need policies that support the integration of genomics into medical education we need integration of genomics as I mentioned earlier into electronic medical records and decision support tools and we need to support public health in utilizing genomic tools together with the medical care system these are some of the policy tasks it seems to me that we all have before us and it would take all of us together hopefully with a slice of the public at large to get these policies adopted and to get these activities and these functions sufficiently funded and I cannot overemphasize another policy area that we have to work on that very little has been said about at this meeting so far two of you very recently use the term health disparities in your talks but only two of you genetics as I teach my students and as many of us have written about is a two-edged sword with respect to health disparities it can be used in ways that simply develop increasingly high-priced technologies available to the medical haves and not available to the medical have nots or it can be used in ways that actually help us address those diseases that are mainly responsible for health disparities and if those tools those interventions are applied equitably can do an awful lot to reduce health disparities and it seems to me that all of us who work in one way or another on advancing the knowledge of these technologies and the application of them have a moral responsibility to be involved in efforts policy efforts largely to make sure that genetics is one technology that is not going to widen for further this growing gap in health disparities in the United States finally there are a variety of partnerships happily that have been formed that are increasingly being formed to connect the various sectors of the health care system together in order to improve the populations health certainly your group and the people you have invited into your conversations your deliberations that is an example of this kind of a partnership the the leadership in genetics and chronic diseases in state health departments have in recent years convened groups that connect public health medical care labor Torian's epidemiologists legal experts maternal and child health professionals chronic disease experts along with public health professionals a number of coalitions have been formed dealing with cancer and heart disease from a genetic standpoint and many of the national professional and disease related organizations that many of you are a part of represent these kinds of partnerships and I need to separately mention the work that's being done by the genetic alliance which I'm sure you all familiar of on behalf of patients and increasingly on behalf of the public at large spreading out information nurturing these kinds of partnerships and providing the kind of tools that enable patients and the public at large to connect with both public health and medical care so those are a few of the comments that we have drawn from the people in public health that we've discussed genomics in particularly public health genomics with and be happy to hear your comments and entertain any questions thank you Debra so in talking about disparities from a laboratory perspective and I know we're looking at public health perspective but one of the things that would be extremely useful is having reference genomes from different race ethnicity groups and I didn't hear that mentioned in the sequencing group but it would be very very helpful to have that I appreciate that comment it suggests that in your deliberations and in your working groups you might consider among what might be thought of as cross-cutting goals how what you work on might have an impact positively or negatively on dealing with health disparities addressing health disparities in the country and that would be a service that you'd all be providing to to to the country at large and that's a very good recommendation and one specific way you could do that I have a comment that may or may not be it may or may not be out of place but I'll make it here because you had on one of your slides the the idea that that HIV HIV screening on a public health or a population basis was was a tier three effort in the in the Emerge Network we've we have the opportunity of looking at HFE genotype people people people who have been genotype for something else in whom we happen to acquire HFE genotypes for the heck of it because it's on a lot of the platforms and what we have found in our own group and I think this probably represents what goes on in other places is that there's a small group of people who are homozygous for the common mutation who who don't carry the diagnosis and yet who have clinical features suggestive of it and a small group of those people are actually being treated with iron which is totally inappropriate so it seems to me that we're at this point where you could say well let's go out and prospectively screen a population that's not cost-effective but what happens when you have the data anyway so it relates back to all the conversations that we've had all all day today the metrics the calculus may really change I'm not I'm not arguing with putting it on tier I heard in the last conversation we need to generate some evidence but but it really sounds like we're in a different place mark I'll just and I'll just add one perspective I think I think it really relates back to that to what I'm taking away as a key concept which is we need to stop thinking about this is as being technology focused and think about this in the context you just to find a beautiful context of how this could be highly useful which is you have a genetically screened population you look for homozygous and then you look for evidence in their medical record that they're that they are either on a disadvantageous treatment or they have clinical signs and symptoms that you can detect and then you can apply that in a group that is appropriate to apply it and and that's a clinical context utilizing a technology as opposed to a technology being deployed irrespective of a clinical context and I think that that's where the intersection between what we're doing in the clinic and then a public health perspective which is to say okay if we can actually demonstrate that this has benefit in this specific circumstance in three health systems then does that raise this up to a priority for a public health approach as we move into the idea that more and more people will have genomes so that response sorry am I hearing other comments