Performance Improvements of a Parallel Multithreading Self-gravity Algorithm

  • Nestor RocchettiEmail author
  • Daniel Frascarelli
  • Sergio Nesmachnow
  • Gonzalo Tancredi
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 796)


This article presents the application of performance optimization techniques to improve the computational efficiency of a parallel multithreading algorithm for self-gravity calculation on agglomerates. The studied algorithm applies the Discrete Element Method to simulate an ensemble of interacting particles under several contact and body forces. Based on the time scales of the process involved in the problem, we used a computation algorithm that speed up the self-gravity calculation based on defining a mesh over the simulated space. Specific performance improvements are presented, including the update of the occupied regions of the space, profiling and reimplementation of the most time consuming routines. Results indicate that the proposed implementation scale appropriately (almost-linear behavior) with the number of computational resources and the number of particles. The proposed improvements allow accelerating up to 50\(\times \) the execution times over the previous version of the self-gravity algorithm in the studied scenarios.



The work of Néstor Rocchetti, Sergio Nesmachnow, and Gonzalo Tancredi has been partly supported by CSIC, ANII, and PEDECIBA (Uruguay).


  1. 1.
    Sánchez, P., Scheeres, D.: The strength of regolith and rubble pile asteroids. Meteorit. Planet. Sci. 49(5), 788–811 (2014)CrossRefGoogle Scholar
  2. 2.
    Harris, A., Fahnestock, E., Pravec, P.: On the shapes and spins of “rubble pile” asteroids. Icarus 199(2), 310–318 (2009)CrossRefGoogle Scholar
  3. 3.
    Fujiwara, A., Kawaguchi, J., Yeomans, D., Abe, M., Mukai, T., Okada, T., Saito, J., Yano, H., Yoshikawa, M., Scheeres, D., et al.: The rubble-pile asteroid Itokawa as observed by Hayabusa. Science 312(5778), 1330–1334 (2006)CrossRefGoogle Scholar
  4. 4.
    Rozitis, B., MacLennan, E., Emery, J.: Cohesive forces prevent the rotational breakup of rubble-pile asteroid (29075) 1950 DA. Nature 512(7513), 174–176 (2014)CrossRefGoogle Scholar
  5. 5.
    Hager, G., Wellein, G.: Introduction to High Performance Computing for Scientists and Engineers. CRC Press, Boca Raton (2010)CrossRefGoogle Scholar
  6. 6.
    Cundall, P., Strack, O.: A discrete numerical model for granular assemblies. Geotechnique 29(1), 47–65 (1979)CrossRefGoogle Scholar
  7. 7.
    Abe, S., Altinay, C., Boros, V., Hancock, W., Latham, S., Mora, P., Place, D., Petterson, W., Wang, Y., Weatherley, D.: ESyS-Particle: HPC Discrete Element Modeling Software. Open Software License version 3 (2009)Google Scholar
  8. 8.
    Tancredi, G., Maciel, A., Heredia, L., Richeri, P., Nesmachnow, S.: Granular physics in low-gravity environments using discrete element method. MNRAS 420, 3368–3380 (2012)CrossRefGoogle Scholar
  9. 9.
    Frascarelli, D., Nesmachnow, S., Tancredi, G.: High-performance computing of self-gravity for small solar system bodies. Computer 47(9), 34–39 (2014)CrossRefGoogle Scholar
  10. 10.
    Nesmachnow, S., Frascarelli, D., Tancredi, G.: A parallel multithreading algorithm for self-gravity calculation on agglomerates. In: Gitler, I., Klapp, J. (eds.) ISUM 2015. CCIS, vol. 595, pp. 311–325. Springer, Cham (2016). CrossRefGoogle Scholar
  11. 11.
    Sánchez, P., Scheeres, D.: Dem simulation of rotation-induced reshaping and disruption of rubble-pile asteroids. Icarus 218(2), 876–894 (2012)CrossRefGoogle Scholar
  12. 12.
    Barnes, J., Hut, P.: A hierarchical O(N log N) force-calculation algorithm. Nature 324(6096), 446–449 (1986)CrossRefGoogle Scholar
  13. 13.
    Gropp, W., Lusk, E., Skjellum, A.: Using MPI: Portable Parallel Programming with the Message-passing Interface. MIT Press, Cambridge (1999)zbMATHGoogle Scholar
  14. 14.
    Weatherley, D., Boros, V., Hancock, W., Abe, S.: Scaling benchmark of ESyS-particle for elastic wave propagation simulations. In: IEEE Sixth International Conference on e-Science, pp. 277–283. IEEE (2010)Google Scholar
  15. 15.
    Intel\(\textregistered \) vtune™ amplifier 2017 (2006). Accessed July 2017
  16. 16.
    Nesmachnow, S.: Computación científica de alto desempeño en la Facultad de Ingeniería, Universidad de la República. Revista de la Asociación de Ingenieros del Uruguay 61(1), 12–15 (2010)Google Scholar

Copyright information

© Springer International Publishing AG 2018

Authors and Affiliations

  • Nestor Rocchetti
    • 1
    Email author
  • Daniel Frascarelli
    • 1
  • Sergio Nesmachnow
    • 1
  • Gonzalo Tancredi
    • 2
  1. 1.Facultad de IngenieríaUniversidad de la RepúblicaMontevideoUruguay
  2. 2.Facultad de CienciasUniversidad de la RepúblicaMontevideoUruguay

Personalised recommendations