For a computer with 8 GB of memory, which is the order of magnitude for the number of particles that could be used in a simulation.

Is the answer $N=8/6\times 10^9$? or do the particles take up more memory than 6N(3N position +3N velocity)?

  • $\begingroup$ It also depends on the type of information you wish to store per particle. You will most likely need 3 double for velocity, 3 double for position, 1 integer for ID and most likely some other information if you are using an octree or a binned list to locate the particle. A double does not take a single byte, but 8 bytes. So if you were to store only 6 doubles, the answer would be $N= 8 * 10^9 / (6*8)$ $\endgroup$ – BlaB Dec 15 '16 at 21:16
  • $\begingroup$ If you had a pure particle algorithm (e.g., something like a non-fast multipole method $N$-particle method for gravity), then I would say that ~100-200 bytes per particle is a reasonable number. That leaves you with 40-80 million particles. $\endgroup$ – Wolfgang Bangerth Dec 16 '16 at 5:01
  • 2
    $\begingroup$ But in practice, it would probably be far less because it's going to take a heck of a long time to evolve all of them. $\endgroup$ – Wolfgang Bangerth Dec 16 '16 at 5:01
  • $\begingroup$ Are your computations on the CPU or GPU ... a simple n-body CPU approach hits a computational wall in the 10^5 scale $\endgroup$ – Scott Stensland Dec 16 '16 at 14:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.