Good afternoon everybody or good morning if you're on the other side of the world. Welcome to the bioxial webinar number 62. Today topic is improvement in the pro maxeterogeneous polarization and the speaker of today is Cedar Paul from the Royal Institute of Technology Sweden. I'm most in the I'm Alessandra Villa and I'm hosting this webinar together with Stefan Far from University of Edinburgh. So, something about Sheila, Sheila is a HPC researcher at PDC Center for I performance computing that is located at KTH Royal Institute of Technology in Stockholm Sweden. He has a background in computer science, but he has a lot of experience also computational biophysics, it work a lot with GPU acceleration, actually more than 10 years. I formulate keep parallel, parallel algorithm in molecular dynamics for modern process architecture, and he's also co author of the first heterogeneous CPU GPU parallelization of promise. Currently is focused is an economist does scheduling and strong scaling in molecular dynamics simulation on as a scale heterogeneous architecture. I'm very very happy that he's here and now I give him the world. Hello everyone and welcome to this bioxial webinar where I will be talking about the improvements in the heterogeneous parallelization in grow max. And the first I will give you a bit of a background to why, why are we parallelizing molecular simulations and what is behind the scenes in the heterogeneous parallelization in the grow max molecular simulation engine and then I will follow. This will follow with this will be followed by a description and details some details of the most recent work that we have put into this parallelization to improve performance robustness and various features of the code. First is just a very brief introduction about grow max and because most of you probably know the code fairly well. I will not dive into too many details grow max is a molecular classical molecular dynamics code. It's focused on performance flexibility. It's free for use its open source it has an open development scheme. One of the one of the key things that it's known for is its bottom up performance optimizations and the broad support for for very efficient algorithms and and diverse set of parallelization schemes. So why do we paralyze. Why do we need to paralyze in in at this day and age and what is the role of parallelization in computational science and specifically molecular simulations. These plot it might be a little bit busy and complex but I would like to draw your attention to the two features of it. The black curve and I'm pointing at shows the number of logical CPU course. Over time and most important is is the green curve which was the frequency of microprocessors. As you can see for until around the mid 2000s, the, the number of logical core course state constant while the number of, while the frequency of processors shown in green has has steadily increased. This was what provided that performance improvements in most computational codes, including molecular simulations and researchers could just sit back and wait for the next generation of algorithm of architectures and focus on algorithms and methods to improve performance of simulations, however, this scaling has stopped and performance has translated into an increase of number of course, and these course can only be made use of by parallelization, and that is why parallelization is a key since the next 2000s and it's increasing in its importance, because parallelism is presented at multiple levels all the way from from the level of multiple nodes in a cluster to multiple CPUs in a node. Combined these days very often with GPUs and within node we have course and accelerators and vector units so it's a complex landscape and this landscape is changing fast. As you probably already know, access scale is it's here and the major access scale challenges, the increase the past increase in parallelism and the increasing complexity, how this parallelism is presented in terms of the hardware and increasing diversity in terms of architectures and heterogeneity that we will talk more about. So in order to exploit this hardware parallelism with multiple levels of parallelization and the way this multiple levels of parallelization is expressed is to expose parallelism using algorithms and express parallelism in the implementation to map it to to to each level of hardware, for instance as illustrated here, we have on the highest level and assemble each member of the ensemble may have domain decomposition, which is then further parallelized over CPUs CPU cores GPUs Cindy and it's using data parallelism. What is very important here is choosing the right granularity and the abstraction and that is where our work is focused. So what I would like to highlight here is a is a very important feature of of the various heterogeneous hardware and where have to where by heterogeneous I mean a combination of CPUs and GPUs CPUs and accelerators and note that there has been for a long time a wide variety of both CPUs and GPUs large CPUs large GPUs, often large CPUs in a server with a smaller GPU. And the way in gray, I wanted to represent the relative speed of the interconnect of the connection between the CPU and GPU, which represents how fast the data can be exchanged between these components. Same applies to servers, early mid to 2010s, we had one CPU and one GPU or one CPU and two GPUs with a fairly fat link between the two. How did this change later as you might notice the most prominent change that I illustrate here is the GPUs GPUs became big, but even more prominent is that these links between CPUs and GPUs has become small. And this is, this is a hallmark of a lot of the hardware development over the last 10 years. And it's made different more difficult making use of such hardware because this link this gray line in between CPU and GPU, which is typically a so called PCI Express interconnect has stagnated and has not include increased in performance while there has been a big leap in compute performance here. Don't look too much at the details but I want to just show the big, the big leap in raw performance on the top and bottom on the bottom this this is the one of our most engromax and over three, four generations of this kernel, the application kernel, the pair interaction kernel has increased in performance by nearly 10x. While this interconnected gray link I showed you has not really improved much as it's been with its performance has stagnated for nearly eight years. In addition, what I want to add to this is is is the background, suddenly the previous picture has become more colorful and this this is representing the diverse the increasing diversity in architectures there are and the GPUs coming up to the show is releasing GPUs so more and more vendors are showing up to the to the and then competing in this world. In addition to that HPC nodes which many of you might be using and many of you might might interface with have have also been increasing in complexity and come in various shapes and forms with multiple types of interconnects and what I would like to talk about here which which we will discuss a little bit more later how the blue blocks the CPUs and the GPUs are connected to each other but then but then GPUs tends to get connected between each other as well in compute nodes in order to exactly to avoid that that thin black or gray link between the CPU and GPU and be able to rely on a fast communication between GPUs. This is this is also going to be reflected in the next generation access scale architectures like the MD or Intel access scale architectures that will be present and do me in frontier or dvc startle or the Intel's machines in Aurora there will be a complex interconnect both inside the node and cross nodes and we need to get ready for this. We need to ready our applications and algorithms to to be able to utilize these machines efficient. So, what I want to illustrate here is is is the molecular dynamics algorithm molecular dynamics so called molecular dynamics step which is, which consists of a sequence or a collection of, of tasks. The tasks that need to be computed as shown in colorful boxes, and then integration constraining finishes the main iteration, and then we repeat that in an inner loop and occasionally every 50 or to 200 iterations we do a decomposition step, and we want to do this as fast as possible. And why do we want to do this as fast as possible. That's because we want to close the the time scale gap between our time step which needs to be small, and the real world time scales, and this this is the main goal of parallelization in studying molecular systems to to tackle this time, or sometimes length scale challenge, and this typically requires strong scaling and increasingly ensemble scale. So just to give you a bit of an insight into where the computational costs are here I show the floating point operations in a pie chart on the left of the most computational expensive tasks, you can see the number of the pair interactions and P&E is next. And then we translate this into into a wall time breakdown. Then we see that that that things change slightly that is because some tasks scale better sometimes perform better and scale better. More than the number of flops and others less so, but but the picture is still very similar, the non bonded tasks and the P&E and bonded so our force computations take most of the computational time. One important thing, especially when it comes to heterogeneous parallelization is the structure of this algorithm, we do not need to sequentially compute these force tasks, we can compute them typically in any order, either concurrently or or or sequentially, but then when we have computed the forces we need to do a reduction step so we converge and reduce to get the forces so that which which then can be used for integration. This will be an important feature in any heterogeneous code that that that tries to do task based parallelization because it allows doing these force computations in parallel. So a quick summary of the chromax parallelization before moving on to the concrete improvements we have made during the recent years. This gromax employs a multi level hierarchical parallelization in order to target each level of hardware parallelism individually on the intranode. It uses open MP multi threading, which combines allows combining the set of CPU course. We can work along a GPU and GPUs are used using API's which we'll talk about a little bit later, and there's also Cindy parallelization, which which allows great performance on CPU using library abstractions in order to allow portability. We can also include the use MPI and their best features like dynamic load balancing and task balancing which, which improved scaling and performance. One important thing I wanted to mention is that when we started working on bringing Romax on to GP accelerators and and heterogeneous architectures and algorithm redesign was necessary. This algorithm redesign was was what unlocked the world of GP accelerators and allowed Romax to perform well. And this algorithm redesign really had to go come from from a bottom up rethinking of algorithms, all the way to, to, to adjusting the main decomposition a little balancing schemes. Another highlight is is one of them, one of the interesting and exciting algorithms where where we face this issue that when we offload it to GPUs or or paralyzed over CPUs we had to trade cost in between the blue box and the green box if we made the pair search less often this out calling the outer loop as often then we we increased the cost directly on in the low bonded forces. And in order to avoid this inconvenient trade off we went back to the algorithms and used an accuracy based approach to create a so called dual pair list algorithm where the data generated the pair list and domain decomposition data generated during the blue blue algorithm we keep that for much longer instead of 20 to 150 to 400 even 500 iterations, but instead of of of this resulting in a very large long bonded computational cost. We mitigate that by trading this cost and and and do so called dynamic pruning, this dynamic pruning step can be done often. And on the next slide I'll show you why it can be done. This can be done often because the way we laid out the algorithm is that we create a large pair list for this large interaction sphere. If we would compute interactions within that sphere then we will be computing a lot of zeros, because, because there will be a lot of no interacting atoms but instead, we create a smaller inner list, shown by the dashed green line, and periodically we reduce this large list of created from the from the outer list to the inner list and compute for forces with that. And because data access is is optimized by our interaction algorithms and the pair search code. This free pruning is very, very cheap, and it can be done very frequently and it allows us to create this accuracy based balancing between different over phases. What I would like to spend the. The next one is is is discussing the evolution of the GPU hardware and API supporting Romax, wherever come from and where are we now. The work started early 2010s and late 2009 2010, and it took quite some time to port the initial code to GPUs and and tune the code for for heterogeneous parallelization. And later on open CL parallelization was added in order to improve the portability and robustness with that the robustness of the code. This was later improved for for NVIDIA and Intel architectures. These were added throughout the years, improving communication and uploading more code. And what more, most recently, we have been working on is, is, is new APIs and better support for various products core features and functionalities. In this release, we have further optimized the GPU direct communication which I'll be talking about. We have integrated new distributed FFT back ends and quite excitingly we have, we have full, nearly full support in our cycle back end for the GPU resident loop, which will be the main means of targeting Intel and architectures starting from the second half of this year. So to compare these current API support and grow max on NVIDIA, we have, we have very mature CUDA, and it's, it's the bread and butter of, of, of programming GPUs, but only for NVIDIA. It's not portable and therefore we have for long time invested into open CL, which, which is fairly mature and it's an open standard. But it's a bit awkward to use in the modern C++ code and therefore new development has shifted to sickle and with early support in 2021, and it will be, as I mentioned, the primary means of supporting Intel architectures and the NVIDIA architectures from q3 q2 plant. It's still an underactive development because not all hardware is available. So next, I would like to explain why did we choose heterogeneous parallelization. The main reason for that was instead of just choosing homogeneous parallelization where where we forget about CPUs and only use the GPUs. Well, the main reason, there were two main reasons flexibility and performance. We wanted to maintain the versatility of grow max, and we wanted to support keep supporting the majority of the features and doing a full part of the large code, the million lines of source code and the very versatile features that is very difficult, it's nearly impossible. Performance can be additional performance can be obtained as I'll show shortly if we allow flexibility in the parallelization. We wanted portability based on abstraction layers, which, which allow easy porting of, of, of to new architectures because we knew and we anticipated that things will be changing fast. GPUs will be the main drivers of computation but but they there will not be a stable foundation of, of, of APIs and programming models. There are some challenges in finding a good balance between flexibility and complexity and because we have fast CPU quote on the CPU side. It's often worth using, but moving data around is difficult as I, as I have illustrated with the big campaign interconnect lines, but moving between different computing is difficult. And so therefore, we have a complex set of problems to solve and the way we tried to tackle this, this over the years is the transfer on the top. I show the homogeneous scheme where everything is executed on the CPU to initially a so called force of load parallelization where we gradually uploaded more and more force computations to the GPU to, to address the, the, the faster and faster to make use of the faster and faster. GPUs that were coming out during the late mid and late 2010s. However, we had to later shift to a SOHO GPU resident parallelization for, for very good reasons that I will come to next. So the challenges with the force of load is, is that we needed this data movement. To illustrate the color boxes compute force forces forces on the GPU, but then everything gets brought back to the CPU, and these black boxes illustrate the reduction where we sum up all the forces before integration. Now as GPUs get faster and faster on those low dictates that that the cost in integration that during which the GPU left idle will be increasing. The computation as I illustrated earlier, moving data between CPU and GPU has already has also been becoming increasingly costly relative to computation and this this was becoming major bottlenecks so this is why the GPU resident mode was born where we prioritize keeping instead of trying to balance load between CPU and GPU with prioritize trying to keep the GPU busy as much as possible. This launched a lot of work from the CPU on to the GPU and maintain the forces and coordinates on the GPU as long as possible. So this is of course a trade off because we're now we're leaving the CPU empty, but it also leaves us an opportunity with with with performance for performance for obtaining more performance by making use of the CPU and also it maintains our ability to keep the GPU infected even better enables us to support less common features which may not be uploaded to the GPU, but maybe very valuable to many researchers, like pulling more free energies, which now can be taken, taken, can be taken by the GPU and can buy the CPU and can be computed on the CPU while the GPU is busy with the main part of the work as shown here in the magenta books. Particularly in most cases, the CPU will be done well before the GPU needs that data, and now the reduction and integration will only depend on on mostly GPU work and possibly if there are features on the CPU features requiring compute on the CPU and some smaller amount of CPU work. What this also allows is is the next topic I would like to talk about that is our data now resides on the GPU. Therefore, I mentioned earlier and I showed the topology and and and the complex interconnects on high performance computing nodes. Now, before that, let's take a quick look at at what what performance looks like in this this in the different heterogeneous offload modes and here, the different colors represent offloading more and more computation the GPU, where black line is the CPU only performance on a single node with a typical high molecular system. And what we see going from red to blue to to light blue to green is that the performance keeps increasing because we have a fast GPU. The more we offload the more performance we get. However, note that we have the number of CPU cores as as the x axis. And this is where where our heterogeneous parallelization flexibility comes into play. The dark yellow line crosses the green line. If we have sufficient number of course from around three to four course, maintaining the CPU, the ability to to execute code and do work on the CPU is a benefit, because we can get more performance by leaving the bond interactions in the CPU. So this is how we benefit from from heterogeneous parallelization. Now moving on to the so called therapy communication, which is essentially enabled by by primarily by the new architectures which have various interconnects directly between GPUs, excluding the CPUs to avoid these slow connections between CPU and GPU. And we essentially have two flavors of this one with our so called MPI and one with who they were MPI. But most important is that both aim to do efficient communication between the different accelerators in the system. This work was carried out in an NVIDIA co design project. And now I would like to highlight the main benefits of this this direct GPU communication mode. So what I show here is is the earlier node layout of a modern GPU system where we have these these fast green links between the GPUs. Now, before we had this functionality what we would have to do when communicating data between, for instance for halo exchange between GPU zero and GPU three is that we had to first go to the CPU zero then to the CPU one, and this that is where our MPI rank will reside that is as the GPU three associated to it, and then copy the data to the GPU three. So these, this is called stage data movement and this stage data movement will go through this slow gradings, and it will completely ignore the fast links between the GPUs, whereas by using the other GPU communication features, because our coordinate data is already on the GPU, we do the integration and the new coordinates are already there we could communicate between GPUs. But we need to make use of the special communication like this. We need to have such fast links like, like the MV link interconnect. We can have some benefit because we don't need to explicitly in the application copy to the CPU then copy to the other CPU then copy to the GPU. And with that block our CPU from being able to compute for instance free energy interactions with this new direct GPU communication mode we can just tell the communication layer. Move the data between GPU zero and GPU to here, and then move on and start computing, for instance, cool or free energy interactions. And that is the benefit that can be a benefit even on systems which don't have these high performance independence. Now where this becomes even more important is when we have multiple nodes. So the node on the left and half of a node on the right. And the same thing happens when we when we need to stage, and we need to copy data. If we want to communicate from from the left node GPU three to the right nodes GPU two, we need to first copy data to the CPU, then hop onto the network then hop through the network of to the to the network network card, the other node, and hope the CPU and then hope to the GPU. Now, instead of having to make these many hopes, we can just tell the communication library. Communicate this data from GPU three online node to GPU two on this other node, and the communication will proceed. These hopes will happen, but without the involvement of the CPU and without the involvement of the application coordinate in the stage. So what this looks like in a in a timeline based picture is is the following and here focus on the on the vertical lines, which represent the data movement. And here this is the, the force of load scheme where colorful boxes are on the GPU were computing forces on the GPU but we're moving data back and forth, you can see the GPU and the black box reduction is on the CPU together with the integration constraints. Now when we move our reduction and integration with the GPU resident mode. We managed to avoid some of the communication, or at least overlap it with computation. But the challenge is still that these dashed lines which represent those previous dashed lines and the previous previous cartoons. These are the stage communication phases, and, and these are the bottleneck in because because this stage communication of the coordinates. And I'm pointing at will delay the computation of this magenta box, for instance free energy calculations. Instead in our implementation can trans trans trans transfer the data directly between GPUs as shown by these by these green lines. And with that avoid a lot of the communication. So now you see the work many of the horizontal lines. Vertical lines are eliminated. And what this allows us is to essentially encapsulate the entire inner loop, including communication in some of the, the parallelization modes, and hand it over to the GPU run time. For instance, and tell the food around time to, to, to do 100 iterations, including communication and computation and schedule it as efficiently as possible. So this opens up the path to further improvements and further optimizations, for instance using CUDA graphs for now we're not making use of these features but it's definitely unlocking the performance and enabling further benefits on the, on the way. Now, MPI works a little bit differently with MPI, we still need to stop wait for the data to be available on GPU, and then communicate directly from our local GPU to remove GPU. So there is still some involvement from the CPU, but the efficiency benefits are still there. And what does this look like in practice in terms of performance. On the left, I show the performance with reactions in a reaction field simulation, because PME simulations call some more complexity first. As you can see the blue line shows staged GPU communication. If we do, if we, if we do direct GPU communication that is the red line, we get better performance. But here, we're doing direct GPU communication without residency. When we enable GPU resident steps as in keep the forces and, and coordinates on the GPU. We unlock the full performance. The same pattern can be seen on the right panel with PME performance, but this, this is somewhat more limited because PME is costly, but also because PME is very hard to scale. And these are difficult to scale distributed fashion. And this is what, why we initially chose to run PME on a single dedicated GPU and that is what you can see from from eight GPUs, having one of them dedicated to PME sufficient, but at 16 GPUs it's not sufficient. However, if we look further forward to the latest performance features of of the Cromax 2022, we can see the same system that is a one million at an STMB benchmark. If we run it with the reaction field only and without PME, we scale really well on the dual booster nodes. And if we further optimize locality and mapping to map better to the hardware and I won't go into details. If you use these these machines, please read the documentation because there are some tricky details in getting these things right. But if we optimize it further, we get, we get very good parallel perform parallel efficiency up to 50% strong scaling with 12 nodes and peaking at more than 500 milliseconds per day for a one million atom system only on only 48 nodes. However, we don't have PME here and we want to do PME. This was the next NVIDIA code design project that we worked on PME decomposition which required distributed FFT library that was able to keep up with the rest of the code and and at least not slow things now because FFTs are very hard to scale. So the initial support for this in in the 2020 release is somewhat limited because of the lack of availability of various libraries. So what we support in the 2020 release is a hybrid is this hybrid mode, which uses the CPUs for the distributed FFT, and we have a basic FFT support which is a library on the US access scale computing project. This still does not unlock the full capability of the call. In the current development version, we have much improved performance and we are making use of the STU FFT MP library which is a recently released library developed by NVIDIA, which does distributed FFTs. And it was partially motivated by our needs, and we were closely with NVIDIA to get to good performance in this library. And a preview, as a preview to the performance of this feature on an older type of DGX1 node, you can see in the dashed green line the PME performance now is not limiting us at 16 GPUs. And if we take the same performance to the dual nodes that I showed a little bit earlier, oh sorry, this is on the selling cluster, then we can see that now we scale up to 24 nodes. And with our optimized scheme shown on the green curve, we get more than 209 seconds per day. Further improvements are planned, but this is already fairly good and we expect that the next generation hardware will help to further improve this together with improvements into the competition libraries. Finally, before closing this talk, I would like to mention work we have done on hierarchical ensemble parallelization. This is very important because as most of you are familiar with, bimolecular systems are often limited in size. Biological bimolecules are just of a given size and we cannot really weak scale the way other fields like computational fluid dynamics can obtain more science with using larger systems. However, new methods like advanced sampling methods do allow exposing more parallelism along different dimensions and essentially allow scaling using a coupled set of independent parallelization. So here what I show is a new power, how typical such a run will look like where in our innermost regular step to sample we do our MD sampling, then occasionally we calculate an AWH bias for instance with the AWH method and then depending on the frequency requirements of the problem. Occasionally we do a bias sharing stuff and in this setup we can paralyze better because we only need to tackle the strong scaling parallelization challenge for the innermost gray loop. And the outermost blue dash loop here it can scale across many nodes without being hampered by the strong scaling parallelization. So how does this look like in practice? What this means is that we can use multiple walkers in a coupled ensemble and we can get even more than linear scaling in this case we show super linear scaling with multiple walkers which can offset limitations of strong scaling when the problem allows. So for instance, on the right side I show ours to solution with the number of GPUs and as you can see we get very good scaling up to 16 even 32 walkers and both with one GPU per walker and four GPUs per walker. Thanks to the good parallel efficiency across the multiple walker simulations which is shown on the right here with dashed, I show the parallel efficiency with multiple walkers which is 85 to 90% even after 32 walkers on a noisy production machine that is CSC is put in here and on the left side I show the performance per AWH walker here and as you can see we get even for such a small system in this case it's a boring channel with 90,000 atoms we get more than a factor of two performance improvement from one to four GPUs so that is pretty decent even in terms of strong scaling. And in addition feature that we added is so good flex sharing where where the sharing does not meet where not all simulations need to be coupled and and different parts of the simulation can exchange biases while others can can proceed completely independently, which allows more efficient scheduling and less work in terms of scheduling simulations because one can just use Gromax's multi-day functionality. In closing, I would like to acknowledge the work of colleagues and collaborators among them, a lot of this work wouldn't have been possible with the contributions from the CAS and Arstam Smurov, Andrej Alekschenko have contributed a lot to the GPU code and in addition, I would like to thank Alan Dury and Gurav Gaurd from NVIDIA with whom we have collaborated on the core design projects. And with that, I will close here and we'll take questions. Alright thanks for the talk it was really interesting and detailed yes and now we have the Q&A so if you have any questions you can put them in the Q&A section which you'll see at the bottom of your zoom. So, if I begin. So we have a question from Arno, which I'll read out. So, I think Shilad's slide on GPU direct communications between nodes showed comms going via CPU host memory and fire infinite band. If MV link or MV switch connections between nodes are available, will direct GPU communications as they have been implemented make use of this instead of going via infinite band? So the answer to that is, I'll go back to that slide quickly, yes, the answer is yes, primarily because when it comes to internal communication we chose to rely on the implementations in MPI. Now, there is exploratory work on going to use more efficient libraries for communication, but in case of MV switches, if we just swap out this yellow box which is infinite band here, with MV switch we will be able to communicate through those MV switches equally efficiently and actually more efficiently because the overhead of going from this GPU to that GPU will be lower, the bandwidth will be higher, but it will be transparent because we rely on MPI. Thanks. So a question from Valeria. Are you planning to release tabulated potentials with GPU acceleration? I am not familiar with the features planned for the upcoming releases, so I cannot comment on that, but I am confident that when such a feature gets implemented we will strongly consider GPU acceleration. So then we have a question from Ali which says thanks for a nice talk. Is CUDA toolkit necessary to install for compiling Gromax with a graphics card? To answer that question I'll quickly go back to this table. The answer to that is no, it is not. That is why these additional two columns are here and that's why it mentions in both of these columns that there is NVIDIA, sorry the last one doesn't mention it. Both last columns are viable solutions to target NVIDIA GPUs, in particular the middle column OpenCL is a viable solution. However, if you need performance I would recommend, I would strongly recommend using NVIDIA CUDA because in terms of performance it is the best approach. So I have a question for you which is, so in terms of system size you get this sort of you get the limit of where you can't really use more GPUs if you need to compute the PME. So is there a system size where you're better off just using a pure CPU system because of the better strong scaling? Yes, that is true at the moment. To answer that question, in a general way in general it does not need to be the case and I will try to explain that quickly with this slide. So when it comes to CPUs, most CPU systems do not have any of these additional complexity here. It's just straight the CPU going to the network through the network to the other CPU. Now on current machines there is always an added complexity in terms of hardware, which does have a certain amount of overhead, and there is an added complexity in terms of the communication libraries which needs to handle this complexity. And the combination of the two does add an inherent overhead to strong scaling molecular simulations. Now what will be coming in the next generation hardware is better integration and an increasing level of integration will remove these additional boxes and additional complexities in hardware. And we can only hope that the software will keep up and MPI will allow better scaling across GPUs to GPUs. As I said, there is just simply a very hard limit to how far can you paralyze FFTs and distributed FFTs will not scale very well past a couple of nodes and past a couple of CPUs or GPUs. And therefore, the main solution to that, I think, is looking into different algorithms. For instance, fast multiple method could allow better scaling on extra ratio architectures. Okay, yes, we have a question from veteran, which is, what is the performance of sickle on modern AMD GPUs? Is it comparable to CUDA on modern Nvidia GPUs? I'm trying for the question. That's indeed an important question. One caveat is before I comment on the performance, things are changing fast and therefore improvements to many of these components are expected. As I said, currently, our sickle support is stable but preliminary. However, the performance on a single GPU is quite good, I would say, maybe 20 to 30% lower at worst compared to the native. And we are working on improving that. I see no reason, no strong reason why we could not get nearly on par performance by the time the AMD machines arrive. And our main target, let me just emphasize our main target for now, is the big pre-access scale machines. And next, we will look at the commodity hardware and gaming GPUs when those get enabled in the software stack. So we should be able to get on par, performance on par with the naked when it comes to single GPU performance. Going beyond that, I think a lot will depend on the maturity and performance of the communication libraries and run times. And there, there is still, I expect that some, there is some gap will remain, and video libraries and communication support in MPIs is far better. When it comes to strong scaling, even though our algorithms and implementation are highly portable, I expect that when we compare, and these machines arrive and we compare, for instance, sickle on NVIDIA with MPI to our CUDA aware MPI based implementation, there will be a significant difference. So I think you might be there for questions, unless there's any more. So I'll leave Alessandra to tell you about our next webinar that we'll be having. Next bike cell webinar will be on one of the use case that we have, and one of the tools also that we have in bike cell. So it's more, and it's by Vitas Gapus, and it will be on Gromach's PMEs for large scale and chemical protein league and binding affinity screening. And it will be the 21st of April, that is a Thursday, not, just pay attention that is a Thursday and not Tuesday as usually we have the webinar. Okay. And also the following webinar will be on use case that are deal inside biocellular to at the end of June. So I thank you all the attendee for attending and for asking question. And I thank you very much to join us and to give a webinar to the bike cell webinar. Thank you everybody. And I hope see you next time. Thank you. Thank you.


please pay close attention this alert concerns a ongoing outbreak this alert is from serious contamination prevention limited serious contamination prevention limited and the world health organization would like to confirm that the ongoing outbreak of progressive corpo slash oremorphic caravirus PCNC has transitioned from an epidemic level outbreak to a pandemic the world health organization and serious contamination prevention limited have decided that the outbreak of PCNC constitutes a pandemic due to its out globally widespread nature and high level of infectiousness continue to take steps to ensure your safety please remember at all times that the virus can spread through airborne spores physical contact with those who have been infected blood contact with those who have been infected or saliva contact with those who have been infected the disease causes bodily transformation the likes of which have never been seen in any other disease the disease causes extreme psychological effects increasing aggression and decreasing intelligence an infected person should be considered deceased if you see an infected person identifiable by their significant bodily transformations leave the area immediately notify local authorities who will take steps to contain the infected and cordon off the area to restrict the spread of the virus likely hot spots of infection are airports bus stations cities or other population dance areas and warm areas where the virus incubates faster and spreads more effectively you should avoid these areas if at all possible early signs of infection include an extreme rash extreme itchiness extreme confusion sluggishness and a high fever if you know this these symptoms contact your local authorities immediately as the disease is treatable in early phases thank you for your attention and cooperation at this difficult time serious contamination prevention limited remains committed to your safety and security and to the containment of this outbreak serious contamination prevention limited prevention today for safety tomorrow this is this month's review of the scp foundation and its global mission of securing containing and protecting anomalies across the world especially as regards to the outbreak of scp 6 10 the outbreak of scp 6 10 continues to spread mostly affecting significant urban population centers in europe north america south america north africa and east asia the scp foundation european subcommand scp f euro subcomm predicts that national governments throughout europe will be unable to provide significant assistance to the foundation in containing the outbreak within eight months civilian deaths here that refers to an infection and transfiguration by scp 6 10 our termination by scp 6 10 infective entity from scp 6 10 now range upwards from 10 million globally the foundation's secondary mission of maintaining the civilian populace is unawareness of the anomalies has been somewhat successful the public has been largely convinced by front companies that scp 6 10 is an anomalous virus called pc and c this has been achieved through strict information control and this information campaign supported by most major governments and allied groups of interest including the global occult coalition scp foundation artificially intelligent conscripts predict that the outbreak will continue for another year before effective containment methods can be devised leading to up to 50 million additional civilian deaths other than these issues the foundation's mission has continued without major disruption and the reduced movement of civilians due to the outbreak has made the secret containment of other anomalies significantly easier at this time thank you for your attention secure contain protect


This research paper examines the use of unmanned aerial vehicle, UAV, technology to create detailed point clouds from aerial photographs taken at a natural coastal site in southeastern Tasmania, Australia. The resulting point clouds were then compared to ground truth data gathered by a total station survey to determine the accuracy of the point cloud data. The authors found that the point clouds were accurate to within 25 to 40 millimeters, which was sufficient to detect changes in the terrain caused by coastal erosion. This article was authored by Arco Lucier and Steve Harwin.


er is the plan for tonight so Oka will be called upon to speak at least twice in tonight's meeting one will be regarding the non-voting resident members of the finance committee Darcy wrote and filed that report thank you for doing that Darcy my expectation is that when that when Oka is called for report or comment on that I will defer to Darcy to deliver the report um of course at any moment any member not any moment when Darcy finishes other members of Oka are welcome to chime in but my expectation which I assume is also your expectation is that you'll deliver the report on that tonight the second time is regarding director of senior services my plan is to give a report then my expectation was to provide an oral report because it would be very difficult to write a report between now and 6 30 and I don't know that anyone would read it but I will do my best to capture all my scribbles on this page are there any questions or comments on the the reports for tonight Darcy I just have one comment and that is um I think that we need to streamline our procedure a little bit in that um I don't think we need to submit a 24 page report on each appointment maybe we can have a separate document that has sort of the boilerplate I mean I know that there's a lot of things that change on each appointment but it seems a bit much to be submitting that much information um and I'm wondering if people are actually reading the whole thing so just to just something for us to consider in the future it seems like we're kind of going overboard on some of this stuff any other final thoughts or comments before we adjourn Alyssa I would just like that when the discussion takes place about the finance committee members that we not that we refrain from using not that we refrain from using but that we refrain from using the concept of a minority report and just refer to the differing opinions on various issues okay final comments Alyssa um so final comments before we adjourn or final comments on that topic yes so is it my understanding that tonight when we're talking about the zoning bylaw the zoning bylaw which of course Ocas had no direct involvement in just as town counselors but the it still says four associate members for ZBA but we only appointed three associate members for ZBA is that in fact correct and of the reason I don't know that for absolute certain is because of course the board and committee list that's on the town website is out of date it's from May 9th but the webpage has been updated to show three and it's counting four as a vacancy but I didn't think I thought we intended to just do three and we did three whereas the bylaw that we'll be looking at tonight says four even though we had no intention of doing four and so we should just be clear on that because tonight when a town counselor says but I thought we only had three ZBA or vice versa so I'll have to go back and take a look but we filled the number of people that the ZBA the chair of the ZBA told us that he wanted which was three and not four right which I was just making sure we all agreed that that was how we remembered it because the reality is the zoning bylaw that we're looking at tonight completely irrespective of what was reported today at public comment says four which does not mean we're necessarily arguably obligated to fill all four but what I'm trying to get at now that we've heard that public comment in addition is either one we should be telling the town council to change it to three if we believe three is the right number or are we comfortable with the fact that it says four and we may or may not fill that fourth position at any time in the near future I guess I don't since I don't know where the disconnect happens speaking of someone who also happens to serve on bylaw review why it is that the zoning section that we're bringing forward on the ZBA still says four when we all knew internally right that it changed to three and it says that in our report that that's what the ZBA because the number right it was because the other number changed from three to five we were changing the associate number from four to three at the recommendation of the ZBA I get all that but what I'm trying to get at is I think maybe we're better off to leave it alone in the zoning bylaw tonight rather than trying to quick change it to three because then we just don't then we can have that conversation later and the town council can say which if it hadn't been me bringing it up now maybe nobody would have brought it up but if any of you have strong feelings that we need to change it from four to three in the bylaw tonight then we should know that now the other part is that because we were told three we could report that we were told three that's why we gave them three fours there as a maximum and someday maybe we'll appoint four and someday maybe we won't so speaking as also a member of bylaw review I remember we were very the original one said zoning board of appeal because it consists of three members and four associate members which said that has to implies there's four and if there's not four then there's a vacancy that was changed in bylaw review to the zoning board of appeals may include up to four with the understanding that we were only going to put in three and that doesn't mean there's a vacancy it means we could do up to four and we're going to which means we could in theory do one two three or four and we decided to do four so I don't I there are three I don't think it requires any type of change and I don't think it implies that OKA didn't do its job it just means we had up to four and we only chose to do three because that's what we heard so I don't I don't feel like there's actually a conflict because I remember we put may include may include up to which was very intentionally something that came from you and I on bylaw review because it happened just after we had submitted our zba and we thought hold on it can't say that because that's not what we just did exactly so I think we should we're all clear on that since we just had that brought up to us we don't know if that's going to get brought up tonight the town council at public comment which could just confuse things when it comes to the zoning bylaw issue tonight at town council and you said it so well it doesn't mean that there's a vacancy but the bylaw gives us the ability to go up to four right we did not take that ability based on the recommendation of the zba chair at that time we did three and we didn't say and oh that leaves us a vacancy because we weren't looking right we don't perceive it to be a vacancy exactly so so in case this becomes an issue do you want me to make sure that I have all of the emails that I have from Lynn asking mark parent how many people he felt should be for associate do you need me back up on that or are we just fine with it because it was it was definitely more than verbal it was expressly written so in case that comes up I'm not I'm just saying I got it if you have easy access to that email it won't be easy but I absolutely do yep just in case we the public commenter from today yeah also the meeting tonight because that may very quickly become a conversation of should we use up that fourth spot yeah and so I'll have I have a lot of documentation on whether or not they wanted three or four officially so I'll make sure that I have that okay available to you I'll put it in our meeting and I can just send it to you final comments uh august 12th all right then with that I will adjourn the meeting at 12 14 p.m


This institution was vouched to protect and guard and we're sitting like nothing happened. You know, I would use the momentum and apologies, Mr. Chair. I will convey a message to the Russian Federation delegation sitting in this room and I will call the Ukrainian border guards. Thank you. Thank you. Mr. Boucher will be followed by Mr. Mark Pritchard from the United Kingdom. Mr. Boucher, you have the floor.


Welcome back to day three of React Holiday 2019. I'm Chan Tastic. And today we're talking about JSX spread attributes and object destructuring assignment. Big words, big words. Not that big of a concept though. So let's dive in. If you look here in our console, you see that we have these H1 elements that get spit out by our components. Now I'd like to add some very standard host element attributes now. So like class, Pokemon, we'll put ID two on this one down here and then data something, something. Now what we'll notice is those actually don't make it through to our components. And that's because we aren't doing anything with them. We just said the only thing that we care about is props, props.name. So what we can do is we can actually take, use destructuring assignment to peel off the name which we care about down here. I got a point to it with my clicker. And then we can take all of the rest of the props, any other thing that might end up on an HTML attribute. And we can use destructuring assignment to pass those along to the host element. So we say, hey, we care about this name. That's all we care about. So we're gonna take that. We're gonna take everything else that we could possibly end up throwing on it in the future and spread those out over the host element as H1 as if we were just using H1 directly. So let's see how we did. We'll go into our component and boom, this one says class Pokemon. This one says ID number two and data something equals something. Boom, you understand destructuring assignment and JSX spread attributes. Good for you.


Hey, this is Brett, and this 2019 Chevy Silverado 2500 Crew Cab Short Box LTZ Z71 is stock number 13226Z. I am here at Summit Automotive in Fond du Lac, Wisconsin, your new and used heavy-duty truck headquarters. This 2019 Chevrolet Silverado 2500 has the 6.6 liter Duramax diesel. It's paired up with the Allison 6-speed automatic transmission. This is the last year of this body style, and the last year of the 6-speed Allison. And this truck puts out 445 horsepower. This truck has been fully-safetyed and inspected by our service shop, has a fresh oil and filter change per the state of Wisconsin inspection process, and has been completely gone over 100 percent, and is 100 percent ready to go. I'm going to go all the way around in this video, inside underneath, start it up, and take a look under the hood. Havana Brown Metallic is the color. I shoot all my videos in 4K, so if you have HD capabilities, turn them on right now, because it is your best way to check out the quality, condition options, and of course, cleanliness of the truck before seeing it in person. And if you like the video, you can subscribe to the YouTube channel, which is YouTube.com, so I have Summit Auto. And as you go down this side, you can see just how nice and clean that box is, how clean the body is. I didn't see any dents or dings on there. Front fenders in great shape. And like I said, you can subscribe to that YouTube channel, click the bell notifications, you'll get updates on the videos I do each and every day here at Summit Automotive. This one comes with the 18-inch chrome to alloy rims. They are in very nice condition, and it has Michelin LTX AT tires. These are LT265 70R18s, and they have right around 60 percent of the tread left on there. Frame and underbody is exceptionally clean. It does have the Rancho shocks, part of that Z71 off-road suspension. Front fender, I didn't see any major dents or dings on there. It comes with the projector lamp headlamps and the factory fog lights. Front bumper and lower valence are in very nice condition. I didn't see any dents or dings on there. And the grille is in very nice condition as well. This one does come with the Coal Induction Hood. That is a fully functional Coal Induction Hood. I'll show you that in just a little bit. And the hood itself, no dents or dings on there. The passenger side front fender looks really good as well. And the passenger side front rim, no scuffs or scrapes. Havana Brown Metallic's got a good amount of metal flake in it. Really a cool looking color. In the sunlight it really brightens up. And as you go down this side of this 2019 Chevy Silverado 2500, take note of how clean that body is, how reflective and mirror-like the paint is. I take these HD videos so if you are far away or even if you're close by and you just cannot make the trip down but you're still interested in purchasing the truck, you can see the truck, hear the truck and have confidence in the vehicle that you're looking at before you even get here. So when you do get here, there's absolutely no surprises. And you can make a smart and informed buying decision from wherever you're at. Very clean down that side. And if this video helps you make that decision, let your salesmen know that you saw the video that was helpful and that Brett sent you. Back rims in excellent shape as well. And the back tires have just as much tread as the front tires. Frame and underbody is in very nice clean condition. Has all the remaining factory exhaust so it hasn't been altered in any way. And very nice under there. Lower rockers and cab corners all look really good. And it does come with the factory chrome step bars. Coming around to the back of the vehicle, rear bumper is in great shape. Does have the backup parking sensors, full towing package, rear bumper steps, receiver hitch, four pin and seven pin wiring. And the tailgate is in very nice condition as well. Does have a locking tailgate, shock down assist tailgate so it's never going to slam on you. And the beds in really nice condition does come with a very nice spray and bed liner. You do get LED bed lighting up there and fifth wheel bed rails. If you want to put a fifth wheel back here, it's all set to go. Spray and bed liner goes on to the tailgate which is nice. And it does have the easy lift assist so it's very easy to close too. For full disclosure this back rim is in excellent shape as well. And on the rest of the side once again looks really good. No dents, no dings, paint is very nice. Comes with the telescopic tow mirrors built in directional signals, LED side lights. They do telescope out like that and fold in like so. Inside the LTZ package gives you the tan leather interior. There are no rips or tears on the seats. Both these front seats are heated and cooled, factory all-weather floor mats, auto headlamps turned out four-wheel drive and factory brake controller tilt, telescopic steering wheel, power windows, power locks, power mirrors and memory driver seat. Does have the Bose sound and these mirrors do power fold in. I always like showing both sides so that you know that both sides are working properly. Coming around to the back here, the back seats are just as clean as the front seats. No rips or tears. You get the latch child safety system for any child car seats you may have. Power slide and rear window with the built-in rear defrost. Seats are in great condition. They do fold up like so. All-weather floor mats back here and they keep your carpeting looking like new. Side curtain airbags and then the headliner is in great shape as well. Bottoms of the doors all look really good. Let's do the insides. We'll hop inside, check out the miles, the radio and everything that this truck has to offer on the interior. You can see that this one has 18,136 miles and yes, we will be putting some fuel in this truck right after this video. Comes with the Z71 instrument cluster and that is very nice and clean. Comes with the heated leather wrap steering wheel. No major wear on there. Bluetooth and information center controls on the right. Cruise controls and heated steering wheel button on the left. It does have audio controls on the back of the steering wheel. This one does have the Allison heavy-duty six-speed automatic transmission with the optional tap shift. Comes with the Chevy MyLink system. It does have the factory navigation system on there. There's highway 41, so you can see that is working nicely. And you do get AM, FM and Sirius XM radio capabilities on this radio. This one also has projection manager. You can project your cell phone to the screen via Android Auto or Apple CarPlay to project your cell phone to the screen, which is pretty neat. And this is also where your backup camera shows up.   Parking sensors, you can turn those off and on. Downhill assist control and factory exhaust break. Two USBs, two 12 volt power points and a 110 volt, 150 watt plug-in. You get cupholders here. It does have the wireless cell phone charge pad, passenger side format and seat are in fantastic condition as well. And once again, that headliner is in nice shape and it does have the power sunroof. Map lights up there, home link buttons for your garage door security systems and lighting systems, sunroof controls, and power side and rear window button. On-star SOS buttons in the rear view mirror. We'll start it up and take a look under the hood. Starts right up. No check engine lights or anything like that, other than that it means some fuel. And then there is your backup camera that is working nicely. All right, let's take a look under the hood. I didn't want to show you the tire and loading information sticker as well as the VIN sticker. There are those LED side lights. They are super bright. I would personally like to thank you for checking out the video today. And hopefully from this HD video, you'll been able to verify the quality condition options and cleanliness of this truck all the way around inside and out. Under the hood we have the 6.6 liter Duramax diesel engine. This is the L5P engine. 445 horsepower. Engine bay is very clean. It's very smooth. And once again, this truck has been fully safety and inspected by our service shop. Has a fresh oil and filter change. All the foods have been checked and topped off. And this truck is 100% ready to go. There is your emissions sticker. And once again, the air comes in from the cold hood, comes down on this side right into the air cleaner. And that's how that works. I would highly recommend this truck for make quality and condition standpoint. And to see more pictures of this truck or one of our other 550 new and used cars, trucks, SUVs, minivans, wranglers, halftones, three-quarter-tons, one-tons. The unit name that we got to go to that website right there is summitauto.com. Full pictures and descriptions of every single vehicle from two locations all at summitauto.com. And if you'd like to check out more HD videos, you can go to youtube.com slash summitauto. Remember to like, subscribe, and share on this video and all the videos that you see there. Click the bell notifications to get updates on the videos I do each and every day here at Summit Automotive. In fact, in the second you'll see links to subscribe, subscribe to my YouTube channel in the upper left. A link to more Chevy 2500 truck videos are done in the upper right. A link to this vehicle on the website in the lower left. And a link to one of our latest YouTube videos in the lower right. With those, check us out. We're super excited to help you with this Ultra Clean 2019. Chevy Silverado 2500 crew cab Short Box LTZ Z71 in Havana, Brown without. Thanks again for checking out the video. Remember to like, subscribe, and share on the YouTube channel. I really appreciate it. Thanks again.


They thought it would never happen, but the city and the state together today announced that they will be divesting from fossil fuels. My name is Beda. I work for 350.org as the U.S. National Organizer and I'm here to share really big news. After years of campaigning, attending dozens of hearings, signing thousands of petitions, and ending with a 5,000 person march on the anniversary of Hurricane Sandy, city and state officials announced that they will begin the process of divesting public pension funds from the fossil fuel industry. Both city and state funds amount to $390 billion. Not only that, the city is suing the top five fossil fuel companies for the cost of climate change.  In that moment, I thought of the hundreds of people who came out to Sandy 5, the folks that I have gotten to know personally who were victims of Hurricane Sandy and thought that this win is for them. A city as iconic as New York taking this kind of action is triggering waves of resistance against the fossil fuel industry in cities and states across the U.S. and globally. Fossil Free is asking cities and towns to take on three demands. One, a fast and just transition to 100% renewable for all. Two, an end to new fossil fuel projects through local infrastructure banks. And three, not a penny more for fossil fuels. We can only build on this effort and power our campaigns with your support. And that's why I'm asking you to donate to 350.org today so that we could see more victories like this and create a fossil free world for all. Thank you.


Now over at the Carrigan Cycle Club they've had another busy year and well they're continuing to cycle but it's been busy on the fundraising front because it's not a formal cycling club as such started out with a few of them like to cycle back in 2013 and it took off from there and they've been raising money right the way through well pretty much 2014 was the first fundraiser they did a Mallon to Misen Cycle and raised 10,000 euro for that so then it took off from there and to date they have raised over 105,000 euro so that is phenomenal for one week club Gary Stewart is a member and joins us now and we're streaming as well on Facebook and on YouTube if you want to have a look Gary hello John how are you good good thanks for coming in thank you thanks for having me now tell me about the club 2013 seems like a long time ago well just to me but alright we started it was there was a couple of local guys that had motor neurons and we decided or we thought chatting on the pub as you do we would like to do something for them you know for the charity and there was a few people in the area cycling I wasn't cycling a lot of the other guys weren't cycling and somebody said one night one Sunday night we had made up why didn't we cycle from Misen de Mallon we all laughed of course well you're not a cyclist even if you're a cyclist you might laugh at that one so that was alright wasn't talked about much the following week I'd come up again and then we eventually says you know what let's do this and that's when the ball started to get rolling are we chatting fellas roughly the same age or that's just a complete you couldn't when I was coming on here today I decided did not mention any names because you just couldn't there's too many people we do cycles there's young guys there 17 18 19 there's guys 70 so it's just across the board I suppose over the years a fellas have come and go got gone people come and go we we are main area as karygans so we sort of base everything around the karygans and karygans so we have meetings and stuff there and then we we're sort of our area then will be kind of newton blugary run around millenon st johnson so you've that main area but then you have other people that has cycled with us from like convoy and refoe and different places so as you say people come they do maybe just one cycle and people go and then we have a sort of a we have a good sort of a core and the group and we didn't want to be a club because a club meant that we were going to have a chair man and we're going to have a secretary and we're going to be really official and we weren't that official we just were like a people that wanted the cycle so it's a group that's a group yeah that's a group group yeah so the the purpose really would be I suppose a two-fold one would be to you know get together regularly and do an activity in this case cycling and also to raise money for charity yeah uh the the board on your own thing came up and we said we would we would do something for it and then the the the musnty man come up and we started training so we were training all together for uh maybe on a tuesday night and a thursday night and then we were out on a big cycle on a sunday and everybody knew I mean when you're cycling on a big group like that I think there was 18 of us done the musnty man then we had people that cooked for us we had people that drove done traffic management we you know a sign in the front of a vehicle saying charity cycle the whole thing started to get very it wouldn't say professional but it started to get it started to get good people come on with different ideas they says why don't we get a a shirt printed I think we're on our fourth shirt now over the years we were we got a t-shirt done with the charity on the t-shirt so when we were on the cycle we were going on the pubs people was coming up to you and saying oh you sure doing that for motor neurons or neonatal or whatever you were doing it for and they were just handing you money so um over the various cycles and over the years you've raised money for for different charities yeah has it all been official charities or has it been for the for the community as well no there's been ones for the community there's a wee group there and carragans who does a carragans tidy town they actually had a wee event there on sunday and the pub and they had a wee auction and they actually raised £8,000 on sunday there uh so we would do we would help them out we we we don't know we uh run and we bought a defibrillator for outside the pub just in case anybody had too much stout and then uh but that went outside the pub so it's a great thing you know and we done that for the the the tidy towns kind of group you know uh but there's stuff going on all the time and it's great for your it's great for yourself mentally to you know you you could pull back the curtains and out sunday morning at eight o'clock and say you know what not going to bother the day i'll just lie on but you never regretted them when you go out no you don't i mean i've seen us come in uh been in carrandona one sunday and we were going over the whole road from carranday on kralla and the hillstone was bitten off the side of your face and you were saying to yourself why am i doing this sunday morning you know but when you when you hand over the check when you have the the when you see what you're doing i mean even to this day when i look at this plaque and this is one of the reasons that we had to do this plaque that's because we were forgetting yeah for those for those that aren't watching it's uh it's more than a plaque it's a it's a big it's a big board and it's got all the all the plaques from the various fundraisers on it good ideas he just decided to put each one up there as as you as you went along we had a job because we were forgetting what we were doing and when when we all sat down somebody would have said you know oh man we done that there uh we do different things we there's a there's a motorcycle run we we don't there's some of us bigger so we don't a motorcycle run for the r&la and all about it's not all about it's like we do tractor runs we do walks we climb mountains we do stupid things we one of the challenges we done was a big one now and we cycled from uh carragans on a saturday morning to westport i think it was 147 miles uh we climbed copatric on the sunday and then no no we cycled down on the friday we cycled down on the friday we climbed copatric on the saturday and then we cycled home on the sunday you know i see it relaxing again and where's that is that going on the bar that's on the on the bar yeah that stays in the bar all the time so there's actually three more runs there we done a spun on carragans there on saturday past uh and it's just amazing that i done from 10 o'clock to uh 11 and there's just a table there's buckets sitting out on it we done it for uh we done that one for there's that much stuff goes on uh i understand it'll be hard hard to keep track so we done that for the irish kidney association and on oncology unit and in letter kenny and that raised three thousand pounds there's that many there's a lust of people that wants to wants us to do things for them and we will get round to them all but just different things come in and you say i will do it for that and you know and i think it's just good if you're doing it for anything you know if you're well it's good on different levels you say good for your mental health um great that you're raising money for charity uh it's great that it's um it's you know it's the community it's the group coming together yeah and and you know just i suppose enjoying you yeah you will be doing these things if you weren't enjoying it along the way and even even the training that you know as long as not all hail showers is is a bit of fun the training's good crack the the crack and that's why it has a grip and people come and people go and new people join and and there's a core group there all the time but there's always a bit you know when things become when things start happening the lack of that spun at cairns on sunday uh i mean we don't the spun from nine in the morning the nine at night uh it takes a bit of organizing so it takes a bit of organizing but everybody pulls on together then you know when you have people that maybe have stop cycle and they'll come over and they'll do a wee button everybody does everybody knows what they do you know and that's the great thing about it and that's great for a community that that gels the community together yeah it is brilliant for the community and that's brilliant for the four cairns and the surrounding area and i think when people you know when i look at this plaque i don't believe and i don't everything on it and you're involved in all of those yeah and uh i just look at it and say god i i don't believe i don't believe that i've done that you know so it's guess when one's over you're just you're on to the next thing on the next thing kovat had us a wee bit there so kovat sort of knocked the one that air sales a bit uh because we couldn't train because you were meeting people on the road you were out training on your own you couldn't go too far you wanted to stick by the rules you couldn't go out in a group way where you're carrying us top on you and and you know you were breaking the rules obviously and so we just trained on our own round back roads but things have started to come around again there now took it away but they get going again but it is going again and that's good so what next do you know do you know what the next challenge is we're talking about now maybe next aster so we couldn't do an aster challenge this past couple of years so we're talking about maybe next aster uh cycling up maybe the androm coast lovely we looked at getting through belfast and we didn't we weren't unsure of how to get through belfast on a bicycle uh but then we researched a wee bit and we seen then that there was cycle pass right right through belfast and a friend of mine in belfast who cycles up there he sort of told us what to do and where they go so we're maybe looking at that now and it will be up the androm coast probably over a couple of days so we would stay away two nights and what we usually do is we have meetings up to the event yeah and we just the planet the planet yeah and we throw on a few pounds for a hotel and our food and along along the way yeah yeah so we you know you're not giving out no big money you're you're giving it as you go along and it's just it's good it's good to be a long way people you know and yeah see everybody working together and i suppose covid brought that into focus just how much we rely on one another and how much we we need a community and you know this is a great example of one that that's working really well in the form of carrigan's cycle club willison well done gary you and everybody that's currently in the club or that's helped on any any of those charity initiatives cycles or or other events it's it's a credit to everybody involved and and continued success thank you very much john thanks for helping me happy news from alde


What is up everybody, Jason here for jaspyscasemix.com. We just sold out 2021, Panini, Mosaic, Choice, basketball, four box break, Pikachu number one guys. And again, we are also giving away $500 in break credit, but there's a little bit of a twist. So if you buy any team, you're at least getting one entry, but if you were to buy the Hornets, the T Wolves, the Kings, the Warriors, the Lakers, the 76ers, we're going to give you five times the entries actually. Now, of course, those are the more expensive teams. As you can see, there's a big jump between those teams and a lot of the teams that are as little as $12.99 to $19.99. You know, nothing wrong with those teams there, but of course, now that it's been a few years, some of these teams here have separated themselves with their rookies that they drafted, especially like the T Wolves with Ant-Man. So like I said, these customers here that are highlighted will get an extra five entries per spot. Everybody else still gets an entry, still a chance, but like I said, if you bought a bigger team, not only do you have a chance to get a bigger hit, potentially with those rookies, but also getting a chance to get something nice back for $500 and break pair to two as well. So we'll do that randomizer at the end, guys. All right, cool front end. Well, most likely gonna happen after this, but thank you, man. All right, so it is a fresh case, guys. Mosaic choice, open it up, and we'll do it just like the other choice breaks. We'll choose four boxes here. We'll use a random generator, but then after that, we'll just grab randomly from the case, one through 20. First generator is 14. It's 11, 12, 13, 14, two, 17, three. So there's two and three. There's 14. And then there's 17. There's some marks on there. All right, let's pull some big key here, guys. Now for Mosaic choice, you're still looking for some one-on-one nebulas, but get some Peacock parallels amongst other really nice stuff. Both with two back hearts first. Niko Manian. And nice, there you go, Lamella Ball. Charlotte Hornets, Brian. Brian bought his Hornets, and there you go.  Green, red. I got Rudy Gay. There's a Lamella Ball NBA debut. And a redemption, which could be Lamella Ball too. Maybe Lamella Ball Bucks. Josh Hart, Mitchell Robinson to 88. And another Mitchell Robinson for the Knicks, back-to-back Mitchell Robinson's. 27 out of 88, and then 88 out of 88, or 68 out of 88. Pelicans, that's gonna, David and the Knicks is going to DMACC. All right, let's see who this goes to. Rugi Mose, Choice Fusion, red and yellow. Woo-hoo-hoo! Damn, Luca Doncic. That is awesome. Now, it is expired, but, you know, with Panini, you still get some points if they don't have it. Maybe they give you the card as a replacement too. If they have the card, I'd assume they still give it to you, but it did expire about half a year ago. But still, Aaron, try to get that redeem, buddy. Maybe they have it. You have the Mavericks, and there you go. Solid first box. If not, they're gonna give you a really, really good amount of points, I'd assume. All right, next box, good start.  I've got Jordan Nora, and then Jaden McDaniels, who's also a really good rookie too, in this class, just hiding behind Ant-Man. Timberwolves on the board with Joe. Derek Rose, Isaiah Joe, and Jalen Harris for the Raptors. Toronto Raptors, that's going to Mark. And we got a little Steph Curry to 88, Chris Boucher to 88 for the Raptors, and then Udoka to 88. Hey, Pizzle, what's going on, man? Oh yeah, how's it going? You already started, right? Payton Pritchard, baby. Boston Celtics, and then Puku. Jay Chante, Marvin Bagley, and Marcus Howard. Denver Nuggets, going to Mark. Jop Moran for the Grizzlies, going to Michael. 6988, Derek Rose, and Aniko Mannion, nice.  When is the full time? All right, last box here, guys. Xavier Tillman, and another Niko Mannion. Ooh, we got a Peacock, guys. Peacock coming up. One of Carter Juner, John J. Murray, and Ish Smith, but we got a Peacock, Jason Tatum. Celtics, what a Chris parent. And we got Chuck and Deandre Hunter. What's official now, Pizzle? There you go, guys. All some solid boxes. No bigger rookie autograph, really. Got a Peacock, though.  Now, let's give away 500 bucks back to somebody, guys. So, again, I'm gonna copy the non-names first that are just getting normal entries. I just wanna double check. This makes 24. Yes, perfect. Okay, because there's six names. All right, so now we're gonna go with the first name, which is Brian. We're gonna go six times on that. One, two, three, five. I mean, five times on that. Joe, last ball module warriors. We're gonna go five times. One, two, three, four. And Aaron got the Lakers. We're gonna go five times. One, two, three, four. Joe, again, who got the biggest team, Timberwolves. Unfortunately, nothing super crazy for them. But hey, could turn that back into some break credit. And Brett got the 76ers. Unfortunately, nothing crazy for that team either, but chance to bring back some money. Tristan got the Kings. Unfortunately, nothing crazy for them either. Good luck, buddy. All right, there you go. So that's the list right there. Let's click dice roll. Four to five, nine times. Here we go. One, two, three, four, five, six, seven, eight, nine. Four to five, nine. Good luck, guys. Just missing out, Brian. But you do have five entries with your team. Let's see, maybe we can be at the top. Tristan, congrats, buddy. Four and a five. You had a lot of teams, including some of the bigger ones as well. So play the odds and came in your favorite guys, a paper man. So there you go, Trist.  I'm gonna send that to you right now. You can reuse it on whatever you'd like, buddy. Thank you. Next one is in the store, guys. Do you guys wanna run it back down there at 29? Or if you wanna have a chance to win another $500 break credit code, you can buy the last couple teams there and sell that out. Appreciate it, guys.


MSNBC's Stephanie Rule appeared to say the quiet part out loud yesterday when she told host and former Biden Press Secretary Jen Psaki that under liberal economic policies, things are just more expensive. Despite all of this positivity, he has the overhang of inflation. So you and I can sit here and talk about all of this good stuff, but people's lived experience day in, day out. Their car insurance, buying a car, their rent, the grocery store, going to a restaurant, life is expensive. And is corporate greed partially to blame? Absolutely. But that is just part of the story. And you know, it is really good news that we're seeing wages grow up, right? Go up in California, minimum wage is about to go to $20 an hour. That's great news for our labor force. And while that shouldn't automatically mean we should expect higher prices, it is what we end up getting. So if you own a small business out there, Jen, if you own a sandwich shop and you are now paying your employees more money and that's going to help retain employees, it's going to help attract employees, in the end, you might end up charging more because all sorts of your input costs are going up. It's something we have to currently get used to, but it makes this to be a difficult communications challenge. And that's your expertise for the White House. You can almost sense Saki's horror at this obvious truth being stated so plainly by someone I'm sure she considers an ally in the ideological struggle. Of course, if you artificially or by law force employers to pay people higher wages that that doesn't occur in a vacuum, they will compensate by raising prices on the service they offer. And then you end up in a place where are you actually making anyone better off on net? This is exactly what's contributing. One of the factors contributing to inflation. So I'm good on Stephanie Ruhl for stating a obvious and well-cited and well-resourced economic fact, even though it's not inconvenient, perhaps, for Team Biden. Yeah. And you know, this is a rare moment of honesty for Stephanie Ruhl. I used to watch her show a lot back when I was a media reporter and she used to have this afternoon show with Allie Velshey. And they were one of the most, I mean, riddled with falsehood shows on MSNBC, which is saying a lot. And so this is kind of refreshing to hear from her, but you're exactly right. There are obviously trade-offs to raising the minimum wage. You're going to have knock-on economic effects. And you know, some businesses, instead of raising their prices, will actually just lay off workers and switch to technological replacements. I mean, this is why probably 50% of the McDonald's you go in nowadays only have one employee behind the register because they have six of these digital screens that you can put your order in on. And you're taking away the opportunity for part-time laborers, for high school and college kids, younger workers to enter the economy for the first time, really build up some equity, build up some wealth, or at least just be able to pay for their schooling and take some of the burden off of their parents. And they don't really get to do that anymore. And I've noticed too that in a lot of the jobs in my hometown that were traditionally filled by these team workers, you actually now have a lot of people from other countries coming in on visas who are filling those jobs. And so I think that's unfortunate too. I definitely think it's unfortunate, especially if it's like an artificial government constraint on people being able to do these jobs. There has been this whole move towards stigmatizing, I think, sort of summer jobs, jobs for high school kids. Yeah, like I don't think a 12-year-old should be like laboring in the salt mine or the factory instead of being at work. Fine, you win liberals, but I think it's totally fine for like an eighth grader, ninth grader, tenth grader to work at McDonald's like for a couple extra hours during summers or on vacations or weekends or something. And that is being treated like child abuse these days by many take-havers in the mainstream media that I think is just like totally, it can be good and healthy for young people to do, again, somewhere they shouldn't be doing it instead of school. They shouldn't be like suddenly the single providers for their family. But it seems fine to me to have kids do a reasonable amount of yard work or fast food work or whatever that is. There was a recent backlash towards a state law that was changed to, I think, lower the age for which you have to get a permit to be able to work. And I think it might have been Florida, but you're right. There was this huge backlash of people claiming that we were going back to the Industrial Revolution when 10-year-olds were basically in the Cheerios factory getting their fingers chopped off because they had to fill boxes so quickly. And I always found, you know, the work that I did when I was a teenager was extremely rewarding. It felt amazing to have my own income that I could use to buy things that I wanted. I was able to save up some for college so that I didn't have to work while I was in school. I only had to work during the summers. And coming from like a low to middle income family, that was hugely important for me and for my parents to be able to have that opportunity. And so I think it's really shameful that people are trying to, one, criminalize that and also make it out to be some form of abuse, as you said. I think a lot of kids in the younger generations would actually probably end up better off if they had to work a little bit harder in their younger years. Yeah, and they might be happy to do so. We're talking a lot these days about the anxious generation, the new Jonathan Haidt book about pointing to smartphones and social media addiction as being so bad for kids. And I think a lot of what he says and has found is insightful. I've pushed back and some of my colleagues at Reason have pushed back on many of the solutions he's offering in terms of having the government more involved in restricting these things for kids. But I totally agree with the basic point that it is healthier for kids instead of spending all their time on social media. Just like if they were spending all their time on video games or on the computer or staring at a TV screen, that would not be good. They should get outside. They should get some exercise. They should do work. They should do an extracurricular activity. They should do something to stimulate their minds. And that is good. And taking away, again, again, I don't need to spend all their time doing manual labor or something. But taking away options for young people to occupy their time other than just staring at a screen, why would we do that? And an important part, too, of Haidt's book talked about the need for young people to socialize face to face and in person. And for a lot of people, the first time that they really interact with adults on an equal basis is when they're working in one of these roles, like in fast food service. I mean, granted, a lot of boomers look down on food service workers and aren't very nice to them. But it's kind of the first time they have those interactions with adult strangers. And one of the keys to getting over anxiety is actually putting yourself in situations that make you anxious, that are low stakes and force you to get over it. I mean, what better way than taking someone's order at a drive-through? Or I used to work at a pool, and I would have to tell adults they couldn't come in because they didn't have their pool passes. And it taught me how to have a backbone. I mean, these things are richly rewarding for young people and really can't help them grow into functioning, healthy adults. And again, we continue to take these things away and replace it with phones, with coddling and parents, a lot of parents in the millennial generation I think went so far in the other direction of their own parents who were either not present or were extremely strict and decided to be their kid's friend and were reaping the consequences. And to some extent, those things were forced on them, I would argue, by changing cultural and social norms. And even, frankly, by explicit government pressure, my friend and colleague, Lenore Scanesi, writes about all of these terrible laws that came into being after reasonable concerns about rising crime in the 80s and early 90s with this idea that if you ever let your kid out of your sight, you're a negligent parent, ever letting your kid walk to school or play at the park by themselves or having an older sibling, watch a younger sibling in your own house, in your own backyard, that sort of stuff became widely criminalized and there's all these cases of child services and the police getting involved in parental decisions where it is a no-brainer that it was perfectly within the realm of safety to let kids have this sort of autonomy that, you know, we walk to school as kids, our parents walk to school as kids. Frankly, in situations that at times where crime was way worse in many urban and rural communities, so that all got criminalized and I think parents, unfortunately, many of them felt they had no choice but to do this helicopter parenting. And socially now, it's frowned upon to either leave your kid alone or allow an older kid to watch a younger kid because they say that it can cause trauma in children. I kid you not, they call it parentification now where an older child is perhaps responsible for the younger children and so they, a lot of people on the left really don't like when people have big families because they think it forces the older kids to grow up too quickly, which is a form of abuse. I mean, this is like the deranged kind of thinking we're talking about. We have over-applied the word trauma to way too many situations and I'm traumatized just thinking about it. We'll be back with more right after this.


Ukrainian and Russian negotiating teams had started discussing concrete topics rather than exchanging ultimatums. Speaking at the news conference in Kiev, Zelensky said Ukrainian and Russian negotiating teams had started discussing concrete topics rather than exchanging ultimatums. He said he discussed the war with Chancellor Olyovsky and President Emmanuel Macron and Germany French leaders then spoke to Putin by phone and our Russian leaders to order an immediate ceasefire.