This Beautiful Fluid Simulator Warps Time…Kind Of 🌊

A new fluid simulation technique uses different timesteps in different regions instead of one global timestep, cutting computation by 40% to 10× depending on the scene. Károly Zsolnai-Fehér explains how asynchronous time-stepping avoids the usual tradeoff between missing collisions and wasting processing power.
Questions this video answers
January 14, 2020
Károly Zsolnai-Fehér (Two Minute Papers)
Worst cases ~40% faster; best cases up to 10× faster.
Chapters
Dear fellow scholars, this is Two Minute Papers with the opening video sequence of this paper immediately starts with a beautiful snow simulation, which I presume is an homage to a legendary Disney paper from 2013 by the name a material point method for snow simulation, which to the best of my knowledge was used for the first Frozen movie. I was super excited to showcase that paper when this series started. I, however, unfortunately I was unable to get the rights to do it. But I'll make sure to put a link to the original paper with the same scene in the video description if you're interested. Now, typically we are looking to produce high resolution simulations with lots of detail. However, this takes from hours to days to compute. So how can we deal with this kind of complexity? Well, approximately 400 videos ago, in Two Minute Papers episode 10, we talked about this technique that introduced spatial adaptivity to this process. The adaptive part means that it made the simulation finer and coarser, depending on what parts of the simulation are visible. The parts that we don't see can be run through a coarser simulation because we won't be able to see the difference. Very smart. The spatial part means that we use particles and subdivide the 3D space into grid points in which we compute the necessary quantities like velocities and, and pressures. This was a great paper on adaptive fluid simulations, but now look at this new paper. This one says that it is about temporal adaptivity. There are two issues that immediately arise. First, we don't know what temporal adaptivity means, and even if we did, we'll find out that this is something that is almost impossible to pull off. Let me explain. There is a great deal of difficulty in choosing the right time steps for such a simulation. These simulations are run in a way that we check and resolve all the collisions, and then we can advance the time forward by a tiny amount. This amount is called a time step. And choosing the appropriate time step has always been a challenge. You see, if we set it to too large, we will be done faster and compute less. However, we will almost certainly miss some collisions because we skipped over them. It gets even worse because the simulation may end up in a state that is so incorrect that it is impossible to recover from and we have to throw the entire thing out. If we set it to too low, we get a more robust simulation. However, it will take from many hours to days to compute. So what does this temporal adaptivity mean exactly? Well, it means that there is not one global time step for the simulation, but time is advanced differently at different places. You see here this delta T. This means the numbers chosen for the timesteps and the blue color coding means a simple region where there isn't much going on so we can get away with bigger time steps and less computation without missing important events. The red regions have to be simulated with smaller time steps because there's a lot going on and we would miss out on that. Hence the new technique is called an asynchronous method because it is a crazy simulation where time advances in different amounts at different spatial regions. So how do we test this solution? Well, of course, ideally this should look the same as the synchronized simulation. So does it? You bet your papers it does. Look at that. Absolutely fantastic. And since we can get away with less computation, it is faster. How much faster? In the worst cases, 40% faster. In the better ones, 10 times faster. So 10 of my all nighter fluid simulations can be done in one night. Sign me up. What a time to be alive. This episode has been supported by Lamda. If you're a researcher or a startup looking for cheap GPU compute to run these algorithms, check out Lamda GPU Cloud. I've talked about Lambda's GPU workstations in other videos and am happy to tell you that they are offering GPU cloud services as well. The Lambda GPU Cloud can train ImageNet to 93% accuracy for less than $19. Lambda's web based IDE lets you easily access your instance right in your browser and finally hold on to your papers because the Lambda GPU Cloud costs less than half of AWS and Azure. Make sure to go to lambdalabs.compapers and sign up for one of their amazing GPU instances today. Our thanks to Lambda for helping us make better videos for you. Thanks for watching and for your generous support and I'll see you next time.










