17 ms·
Simulation of a 2B-atom cell that metabolizes and grows like a living cell
- sydthrowaway 5y agoThis seems like the company that will dominate the 2020s. The time is ripe to join NVIDIA
- husamia 5y agothe idea is great but the specifics are oversimplified.
- capableweb 5y agoIt seems that the researchers did use NVIDIA GPUs to perform the work, but it's not clear what sets the GPUs apart from others and why this research wouldn't be possible without NVIDIA's GPUs, as the article title and body implies.
- Tenoke 5y agoMost likely because the software they use uses CUDA.
- capableweb 5y agoI know that CUDA is faster than OpenCL for many tasks, but is there something that is not possible to achieve in OpenCL but possible in CUDA?
- belval 5y ago> is there something that is not possible to achieve in OpenCL but possible in CUDA Developing fast... OpenCL is much harder to learn than CUDA. Take someone who did some programming classes, explain how CUDA works and they'll probably get somewhere. Do the same thing with OpenCL and they'll probably quit.
- immibis 5y agoWhat makes it harder?
- Cthulhu_ 5y agoPossibly, but that's not really the point, the article is part marketing push from nvidia for their HPC department.
- capableweb 5y ago> but that's not really the point That's what I thought as well, so the title on the website ("NVIDIA GPUs Enable Simulation of a Living Cell") is not really truthful then.
- Symmetry 5y agoMy understanding is that CUDA has a lot of optimized libraries for common tasks, think BLAS, that don't currently exist in OpenCL/Vulkan Compute.
- TomVDB 5y agoI’m subscribed to some CUDA email list with weekly updates. One thing that strikes me is how it evolves with new features. Not just higher level libraries, but also more fundamental, low level stuff, such as virtual memory, standard memory models, c++ libraries, new compilers, communication with other GPUs, launching dependent kernels, etc. At their core, OpenCL and CUDA both enable running parallel computing algorithms on a GPU, but CUDA strikes me as much more advanced in terms of peripheral features. Every few years, I think about writing a CUDA program (it never actually happens), and investigate how to do things, and it’s interesting how the old ways of doing things has been superseded by better ways. None of this should be surprising. As I understand it, OpenCL has been put on life support by the industry in general for years now.
- 4gotunameagain 5y agoIf you ever need to reap the benefits of CUDA & GPU computations without getting into the details, check out JAX by our corporate overlords™ (https://github.com/google/jax https://github.com/google/jax), it has a NumPy like syntax and super fast to get started
- p1esk 5y agoWhy would you suggest JAX? CuPy seems like an obvious choice here (simpler and a lot more mature). Jax is only needed if you want automatic differentiation.
- erwincoumans 5y agoThe fine grain parallelism of this simulation suits the GPU well. It would be possible on multicore CPUs, but possibly slower.
- Gehoti 5y agoI'm much more aware of slot of things research is doing with Nvidia. Due to cuda, tools, SDKs etc Nvidia is providing. I'm not aware of anything similar at any other GPU company
- jabbany 5y agoInteresting question. Press article aside, GPGPU applications like scientific compute, ML etc. have all mostly gravitated to Nvidia / CUDA. Not working in this space, I'm curious why this is the case. Is there something inherently better about CUDA? Or is it that Nvidia's performance is somehow better for these tasks? Or maybe something else?
- naavis 5y agoNVIDIA provides tools that just mostly do not exist for other GPUs, making it easier to build on CUDA instead of something else.
- hiptobecubic 5y agoAbsolutely this. When cuda was first making headway it was the only thing even remotely close to a "developer environment" and made things significantly easier than any of the alternatives. It might be different now, but at that time, many of the users were not computer scientists, they were scientists with computers. Having an easier to use programming model and decent debugging tools means publishing more results, more quickly.
- carlmr 5y agoFrom my cursory knowledge of the topic, there are competitors like ROCm, but CUDA was the first that had a useable solution here. Also last time I checked ROCm doesn't have broad support on consumer cards, which makes it harder for people to try it out at home. But it seems ROCm is getting better and it has tensorflow and pytorch support, so there's reasons to be hopeful to see some competition here.
- jjoonathan 5y agoBack in 2014 or so I made the unfortunate mistake of buying AMD cards with the thought that I'd just use OpenCL. I knew that some codes wouldn't run, but I had catalogued the ones I really cared about and thought I was up for the challenge. I was so, so wrong. First of all, software that advertised OpenCL or AMD compatibility often worked poorly or not at all in that mode. Adobe creative suite just rendered solid black outputs whenever acceleration was enabled and forums revealed that it had been that way for years and nobody cared to fix it. Blender supported OpenCL for a while, but it was slower than CPU rendering and for a sticky reason (nvidia did the work to support big kernels with heavy branching and AMD didn't). Ironically, OpenCL mode had decent performance but only if you used it on an nvidia card. The situation was even worse in scientific codes, where "OpenCL version" typically meant "a half-finished blob of code that was abandoned before ever becoming functional, let alone anywhere near feature-parity." I quickly learned why this was the case: the OpenCL tooling and drivers weren't just a little behind their CUDA counterparts in terms of features, they were almost unusably bad. For instance, the OpenCL drivers didn't do memory (or other context object?) cleanup, so if your program was less than perfect you would be headed for a hard crash every few runs. Debugging never worked -- hard crashes all around. Basic examples didn't compile, documentation was scattered, and at the end of the day, it was also leagues behind CUDA in terms of features. After months of putting up with this, I finally bit the bullet, sold my AMD card, bought an NVidia card, ate the spread, the shipping, the eBay fees, and the green tax itself. It hurt, but it meant I was able to start shipping code. I'm a stubborn bastard so I didn't learn my lesson and repeated this process two years later on the next generation of cards. The second time, the lesson stuck.
- 01100011 5y agoNvidia is pushing vertical integration hard. There are all sorts of libraries from Nvidia which build on top of CUDA, from simple cuBLAS to smart cities, autonomous driving, robotics and 5G. They also provide acceleration of open source libraries like GROMACS, used for molecular dynamics simulation.
- immibis 5y agoAs you do, when you're the market leader. Wouldn't want people to be able to swap their GPUs to AMD. This is a real problem at the moment. Of course AMD is making their own system that works on AMD and nVidia and Intel GPUs. It'll probably get locked down again if AMD gets market dominance.
- 01100011 5y agoReminds me of how people used to think MS was absolutely evil while Apple was an altruistic company and Steve Jobs was some kind of saint. Turns out Apple just needed to gain some market dominance.
- CoastalCoder 5y agoCan someone comment on the legality of a 3rd party providing an unauthorized implemention of the CUDA API? I would think that Oracle's loss of a similar lawsuit with Java would be related.
- my123 5y ago> Can someone comment on the legality of a 3rd party providing an unauthorized implemention of the CUDA API? NVIDIA said that they would be fine with it in the past, and ROCm HIP is just a (bad) CUDA API clone.
- tmearnest 5y agoThere are two main reasons to take advantage of the Gpu in lattice microbes. It can simulate the stochastic chemical reaction and diffusion dynamics in parallel: one thread per voxel. For instance, an E. coli sized cell would have ~40000 voxels. It’s not quite embarrassing parallel, but close. Second, the simulation is totally memory bound so we can take advantage of fast gpu memory. The decision to use CUDA over OpenCL was made in like 2009 or so. Things have changed a lot since then. I don’t think anyone has the time or interest to port it over, unfortunately.
- amelius 5y agoA two-billion atom cell ... isn't that a bit small for a cell?
- vital101 5y agoThe article mentions that they use minimal cells. "Minimal cells are simpler than naturally occurring ones, making them easier to recreate digitally."
- wcoenen 5y agoYes. The cell was first created in the real world as part of research about the minimal set of genes required for life.[1] It is known as "JCVI-syn3.0" or "Mycoplasma laboratorium".'[2] Still amazing that it can now be fully simulated "in silico". [1] https://www.science.org/doi/10.1126/science.aad6253 https://www.science.org/doi/10.1126/science.aad6253 [2] https://en.wikipedia.org/wiki/Mycoplasma_laboratorium https://en.wikipedia.org/wiki/Mycoplasma_laboratorium
- Traubenfuchs 5y agoIt says "In this new organism, the number of genes can only be pared down to 473, 149 of which have functions that are completely unknown." But if we now can simulate this cell completely, shouldn't it be easy to figure out what those genes are doing? Just start the simulation with them knocked out.
- WJW 5y agoPresumably if the number of genes cannot be pared down below 473, it dies very quickly if one of the 149 genes is knocked out. But "it doesn't work without it" is not a very satisfactory answer to "what does it do".
- amelius 5y agoYes, this is similar to opening a radio and saying "I don't know what this transistor does; let's take it out and see what the radio does".
- agentultra 5y agoPermutation City, here we come. I wonder if Greg Egan had the foresight to predict this for the story or if he invented that part for narrative purposes.
- agentultra 5y agoSpecifically, I'm referring to Autoverse, the artificial simulation of a single bacterium down to the atomic level. It was such a fascinating idea that I found myself more than once trying to mimic the atomic part at a much smaller scale over the years.
- chinathrow 5y agoWhen I was like 12 or so, I had a thought that if we can calculate everything, we could be living in a full blown simulation. To be honest, like 30y later, I still go back to that nagging thought _a lot_.
- fefe23 5y agoNvidia GPUs enable nothing, because you can't buy any at reasonable prices.
- jabbany 5y agoThis argument makes no sense. Consumer GPU pricing (which I'm assuming is what you're referring to) has very little to do with the pro market (industry, research etc.) The researchers are using things like the DGX or RTX A-series. These, while quite expensive, are not that unreasonable when it comes to pricing.
- pepemon 5y agoAn individual could afford computing power for such research activities (not exactly like this one, but e.g. for personal ML experiments) in 2018-2019 for an adequate price. You were able to buy 2 new RTX2080s for the today price of a used single unit. If you want to tinker and need GPU power today, your best option is to rent special datacenter-approved(tm) GPUs for the really expensive $/h. And you don't own anything afterwards (except if you bought GPU before the end of 2020). Does this make no sense? Is this how technological progress should work?
- jabbany 5y ago2080s? With only 8GB of VRAM that's not even ECC backed? Even for ML model training back then, 8GB was on the small side (a lot of the research repos even had special parameter sets to allow running on consumer level VRAM GPUs). Also, for something like long running bio simulations, you'd probably want to be sure that your memory bits aren't being flipped by other sources -- the extra upfront cost is well worth preventing potentially wrong research results... Nvidia consumer products have been a better value proposition in the past for sure. But they've always done market segmentation. It's not merely a matter of "datacenter-approved(tm) GPU" (though they do also do driver-based segmentation).
- freemint 5y agoIf you don't care if some rando who's machine you rented does see what you are doing vast.ai can be a good resource for GPU compute too.
- lolive 5y agoApart from this article, do we have any visual representation [a CGI, may be] of the full activity inside a cell?
- vasili111 5y agoWe can't visualize what we do not know. Full activity inside cell is not known and we are pretty far from knowing that.
- p1esk 5y agoWhat do you mean? Didn’t they just simulate the full activity of a cell on a molecular level?
- lolive 5y agoI have always been amazed by these 2D representations: https://www.digizyme.com/cst_landscapes.html https://www.digizyme.com/cst_landscapes.html
- Traubenfuchs 5y agoAll of this incomprehensible complexity just so our genes can compete against other genes in their mindless drive for survival. It's kind of sad.
- vasili111 5y agoIs this simulation on the atomic level with full all interatomic physics processes simulation or there were made some simplifications? All interatomic interactions are simulated separately for each atom or they made statistical estimations and used some assumptions? Those two are absolutely two different types of simulation.
- Frost1x 5y agoIt doesn't appear to be ab initio simulated (e.g. QED up) if that's what you're asking. They appear to swoop in at higher scales (molecular level) and simulate molecular interactions across "hundreds of molecular species" and "thousands of reactions." Apparently the interface between molecules uses the Chemical Master Equations (CME) and Reaction-Diffusion Master Equations (RDME) both of which I'm unfamiliar with: http://faculty.scs.illinois.edu/schulten/lm/download/lm23/UsersGuide.pdf http://faculty.scs.illinois.edu/schulten/lm/download/lm23/Us...
- dahart 5y agoYes, this appears to be the underlying simulation software. Here’s a home page link to the project as well: http://faculty.scs.illinois.edu/schulten/Software2.0.html http://faculty.scs.illinois.edu/schulten/Software2.0.html “Lattice Microbes is a software package for efficiently sampling trajectories from the chemical and reaction-diffusion master equations (CME/RDME) on high performance computing (HPC) infrastructure using both exact and approximate methods.”
- vasili111 5y agoFor anyone who is wondering what QED is: Quantum electrodynamics (QED) https://en.wikipedia.org/wiki/Quantum_electrodynamics https://en.wikipedia.org/wiki/Quantum_electrodynamics
- kingcharles 5y agoAh, should have realized when Quad Erat Demonstradum made no sense...!
- Jeff_Brown 5y agoI wish they detailed how independent the simulated processes really are, and what sorts of dynamics are lost by not considering the atomic level.
- Jeff_Brown 5y agoHow much emergent behavior arises from the model? The only passage I see describing any of it is this one: > The model showed that the cell dedicated most of its energy to transporting molecules across the cell membrane, which fits its profile as a parasitic cell. Whether it mimics the behavior of real cells seems like the right test. We'll never be able to get it to parallel the outcome of a real system, thanks to chaos theory. But if it does lots of things that real cells do -- eating, immune system battles, reproduction -- we should be pretty happy.
- VikingCoder 5y agoHow long did it take to simulate 20 minutes? Looks like one NVIDIA Titan V took 10 hours to do it, and one NVIDIA Tesla Volta V100 GPU took 8 hours to do it? Am I reading that right? So the NVIDIA Tesla Volta V100 is 24 times slower than real life? Pretty cool.
- Koshkin 5y agoGenerally speaking, this depends on the size (in terms of the number of constituents) of the piece of "real life" you are simulating.
- neom 5y agoI don't see in the article why this is useful or what is it used for?
- madhato 5y agoIts simple really. First you simulate a single cell, then a sperm and an egg cell. Then you simulate a virtual a world of virtual captive humans to do our work for us without payment.
- joejoesvk 5y agoi don't even know where to start. you could simulate one cell, then two cells then 4..suddenly you could have an organisms...hell you could see organism that could have lived on earth. maybe it'll one day help with cancer research.
- neom 5y agoOh I see, I didn't realize it extrapolated out that way, this was a good explanation that makes a lot of sense to me, thanks. Also.. that's f'ing cool.
- JabavuAdams 5y agoIt's generally not possible to see where everything is in an actual cell, in realtime, due to the sizes of the components. So most of molecular biology relies on very clever lab techniques to indirectly infer what cells are making and doing. Cells are like little cities in terms of the complexity of their biochemistry. We want to ask questions like "How does this cell respond to this chemical/drug/change in environment." Imagine trying to understand in detail the gun crime epidemic in a city, if you can only see objects larger than 100 m on a side. You wouldn't see people, cars, or many buildings. We want to be able to understand, explain, predict, and control cellular process, but so far we have to be quite indirect. Understanding these things at a mechanistic level, in realtime would revolutionize our ability to understand, repair, and build biological systems.
- JabavuAdams 5y agoFor instance, the cartoon version of DNA that is presented to even lower-year biology undergraduates is of linearized strands. But of course, it's really all spooled and tangled and crunched up into the nucleus of cells. Note that the cell they simulated is of a prokaryote (no nucleus, much simpler cellular processes than e.g. a mammal cell). About 1-2% of our genes make proteins, although the proportion is much larger in single-celled organisms (less redundancy in the genome, no splicing, etc.) So when you hear that e.g. genes turn on or off, this is not a switch. It's literally some sections of DNA being unwound, and large complexes of mutually interacting molecules probabilistically glomming on and off the DNA. The actual 3d layout of this DNA "ramen" matters to e.g. bring promoter regions of genes close to the actual genes they control. So basically, we have a schematic-level understanding of cellular processes, but to see the actual 3D interactions in realtime would be extremely illuminating.
- intrasight 5y agoSomeone is simulating all of my cells - and yours too ;)
- CapsAdmin 5y agoIf this is true, there must be some species at some level of simulation who's not being simulated. I'm not sure if you're being real or not, but if you are, do you think the species running who made our simulation are also being simulated?
- webmaven 5y ago> If this is true, there must be some species at some level of simulation who's not being simulated. You can't fool me, it's turtles all the way down! With that out of the way, I'll observe there is no reason that such a base layer of reality need bear any particular resemblance to ours except in the tautological sense that it would need to be Turing complete in order to be capable of hosting a simulation.
- CapsAdmin 5y agoI agree that it would probably not resemble our universe. I would think it has to be a universe that's capable of simulating our universe without consuming all of the host universe's resources as it would need at least some sort of species that would want to simulate our universe. At least initially. I'm not sure what you (and other people) really mean when you say our universe is simulated. - Do you mean that the entire universe is simulated down to the planck level? - Do you think there's some sort of optimization going on? - Do you think it's done by a species that evolved to become curious to see what would happen if you simulate the universe (like us)? I can say that our universe is simulated too, but I have no idea if this simulation was made by someone or if it "just is". But if you believe the universe is a simulation in some host universe, then it must be possible to have a universe that "just is" / or is Turing complete as you put it.
- webmaven 5y ago
- kingcharles 5y agoThe question is (again) how soon now until I can boot the "ROM" file of my DNA in an emulator?
- jacquesm 5y agoThis won't happen. Computationally inconceivable with all that we know at the moment.
- airstrike 5y agoNow we just need to scale this by a mere 37,200,000,000,000x and we'll have simulated the entire human body!
- barrenko 5y agoDevs, the prequel.
- deleted 5y ago[deleted]
- ajuc 5y agoI think it has to reproduce to qualify.
- rsfern 5y agoThis is really cool, but I don’t think it’s an atomistic simulation so I’m not sure where the title is coming from. It seems to be some kind of a (truly impressive) kinetic model The paper in Cell is open access https://doi.org/10.1016/j.cell.2021.12.025 https://doi.org/10.1016/j.cell.2021.12.025
- hardwaresofton 5y agoNvidia and Facebook are working on building the world’s largest super computer. The stated reason I heard was to power the metaverse but that strikes me as a red herring. Things closer to this are probably what they want to do. A slighty more pessimist take would be that they want to manage and crunch all that personal data they have more quickly, or for others that have lots of data to crunch that Facebook might benefit from managing/having (governments).