{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T12:49:01Z","timestamp":1743079741421,"version":"3.40.3"},"publisher-location":"Cham","reference-count":38,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030242886"},{"type":"electronic","value":"9783030242893"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-030-24289-3_16","type":"book-chapter","created":{"date-parts":[[2019,6,28]],"date-time":"2019-06-28T11:03:03Z","timestamp":1561719783000},"page":"193-208","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Parallel OpenMP and CUDA Implementations of the N-Body Problem"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0489-9573","authenticated-orcid":false,"given":"Tushaar","family":"Gangavarapu","sequence":"first","affiliation":[]},{"given":"Himadri","family":"Pal","sequence":"additional","affiliation":[]},{"given":"Pratyush","family":"Prakash","sequence":"additional","affiliation":[]},{"given":"Suraj","family":"Hegde","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1230-8729","authenticated-orcid":false,"given":"V.","family":"Geetha","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2019,6,29]]},"reference":[{"key":"16_CR1","unstructured":"COS 126 Programming Assignment: N-Body Simulation, September 2004. \n                      http:\/\/www.cs.princeton.edu\/courses\/archive\/fall04\/cos126\/assignments\/nbody.html\n                      \n                    . Accessed 07 May 2018"},{"key":"16_CR2","unstructured":"CUDA C Programming Guide, October 2018. \n                      https:\/\/docs.nvidia.com\/cuda\/cuda-c-programming-guide\/index.html#cuda-general-purpose-parallel-computing-architecture\n                      \n                    . Accessed 07 May 2018"},{"key":"16_CR3","unstructured":"n-body problem - Wikipedia, October 2018. \n                      https:\/\/en.wikipedia.org\/wiki\/N-body_problem\n                      \n                    . Accessed 7 May 2018"},{"key":"16_CR4","unstructured":"The Barnes-Hut Algorithm: 15\u2013418 Spring 2013, October 2018. \n                      http:\/\/15418.courses.cs.cmu.edu\/spring2013\/article\/18\n                      \n                    . Accessed 7 May 2018"},{"key":"16_CR5","unstructured":"The Barnes-Hut Galaxy Simulator, October 2018. \n                      http:\/\/beltoforion.de\/article.php?a=barnes-hut-galaxy-simulator\n                      \n                    . Accessed 7 May 2018"},{"key":"16_CR6","unstructured":"World\u2019s Largest Supercomputer Simulation Explains Growth of Galaxies, October 2018. \n                      https:\/\/phys.org\/news\/2005-06-world-largest-supercomputer-simulation-growth.html\n                      \n                    . Accessed 7 May 2018"},{"issue":"1","key":"16_CR7","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1137\/0906008","volume":"6","author":"AW Appel","year":"1985","unstructured":"Appel, A.W.: An efficient program for many-body simulation. SIAM J. Sci. Stat. Comput. 6(1), 85\u2013103 (1985)","journal-title":"SIAM J. Sci. Stat. Comput."},{"issue":"6096","key":"16_CR8","doi-asserted-by":"publisher","first-page":"446","DOI":"10.1038\/324446a0","volume":"324","author":"J Barnes","year":"1986","unstructured":"Barnes, J., Hut, P.: A hierarchical O (N log N) force-calculation algorithm. Nature 324(6096), 446 (1986)","journal-title":"Nature"},{"key":"16_CR9","unstructured":"Barney, B.: OpenMP, Jun 2018. \n                      https:\/\/computing.llnl.gov\/tutorials\/openMP\n                      \n                    . Accessed 07 May 2018"},{"key":"16_CR10","unstructured":"Bhatt, S., Liu, P., Fernandez, V., Zabusky, N.: Tree codes for vortex dynamics: application of a programming framework. In: International Parallel Processing Symposium. Citeseer (1995)"},{"key":"16_CR11","doi-asserted-by":"publisher","first-page":"81","DOI":"10.1090\/dimacs\/030\/06","volume-title":"Parallel Algorithms","author":"G Blelloch","year":"1997","unstructured":"Blelloch, G., Narlikar, G.: A practical comparison of TV-body algorithms. In: Parallel Algorithms: Third DIMACS Implementation Challenge, 17\u201319 October 1994, vol. 30, p. 81 (1997)"},{"key":"16_CR12","unstructured":"Board Jr., J.A., Hakura, Z.S., Elliott, W.D., Rankin, W.T.: Scalable variants of multipole-accelerated algorithms for molecular dynamics applications. Technical report. Citeseer (1994)"},{"key":"16_CR13","doi-asserted-by":"crossref","unstructured":"Burtscher, M., Pingali, K.: An efficient CUDA implementation of the tree-based barnes hut N-body algorithm. In: GPU computing Gems Emerald edition, pp. 75\u201392. Elsevier (2011)","DOI":"10.1016\/B978-0-12-384988-5.00006-1"},{"key":"16_CR14","unstructured":"Carugati, N.J.: The parallelization and optimization of the N-body problem using OpenMP and OpenMPI (2016)"},{"key":"16_CR15","series-title":"Advances in Intelligent Systems and Computing","doi-asserted-by":"publisher","first-page":"662","DOI":"10.1007\/978-3-030-16657-1_62","volume-title":"Intelligent Systems Design and Applications","author":"B Chanduka","year":"2020","unstructured":"Chanduka, B., Gangavarapu, T., Jaidhar, C.D.: A single program multiple data algorithm for feature selection. In: Abraham, A., Cherukuri, A.K., Melin, P., Gandhi, N. (eds.) ISDA 2018 2018. AISC, vol. 940, pp. 662\u2013672. Springer, Cham (2020). \n                      https:\/\/doi.org\/10.1007\/978-3-030-16657-1_62"},{"issue":"1","key":"16_CR16","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1109\/99.660313","volume":"5","author":"L Dagum","year":"1998","unstructured":"Dagum, L., Menon, R.: OpenMP: an industry standard api for shared-memory programming. IEEE Comput. Sci. Eng. 5(1), 46\u201355 (1998)","journal-title":"IEEE Comput. Sci. Eng."},{"key":"16_CR17","unstructured":"Damgov, V., Gotchev, D., Spedicato, E., Del Popolo, A.: N-body gravitational interactions: a general view and some heuristic problems. arXiv preprint astro-ph\/0208373 (2002)"},{"key":"16_CR18","doi-asserted-by":"crossref","unstructured":"Del Sozzo, E., Di Tucci, L., Santambrogio, M.D.: A highly scalable and efficient parallel design of N-body simulation on FPGA. In: 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 241\u2013246. IEEE (2017)","DOI":"10.1109\/IPDPSW.2017.43"},{"key":"16_CR19","doi-asserted-by":"crossref","unstructured":"Fernandez, V.M., Zabusky, N.J., Liu, P., Bhatt, S., Gerasoulis, A.: Filament surgery and temporal grid adaptivity extensions to a parallel tree code for simulation and diagnosis in 3D vortex dynamics. In: ESAIM: Proceedings. vol. 1, pp. 197\u2013211. EDP Sciences (1996)","DOI":"10.1051\/proc:1996010"},{"key":"16_CR20","doi-asserted-by":"publisher","first-page":"13","DOI":"10.1109\/MM.2008.57","volume":"4","author":"M Garland","year":"2008","unstructured":"Garland, M., et al.: Parallel computing experiences with CUDA. IEEE Micro 4, 13\u201327 (2008)","journal-title":"IEEE Micro"},{"issue":"2","key":"16_CR21","doi-asserted-by":"publisher","first-page":"325","DOI":"10.1016\/0021-9991(87)90140-9","volume":"73","author":"L Greengard","year":"1987","unstructured":"Greengard, L., Rokhlin, V.: A fast algorithm for particle simulations. J. comput. Phys. 73(2), 325\u2013348 (1987)","journal-title":"J. comput. Phys."},{"key":"16_CR22","doi-asserted-by":"publisher","first-page":"229","DOI":"10.1017\/S0962492900002725","volume":"6","author":"L Greengard","year":"1997","unstructured":"Greengard, L., Rokhlin, V.: A new version of the fast multipole method for the laplace equation in three dimensions. Acta Numer. 6, 229\u2013269 (1997)","journal-title":"Acta Numer."},{"key":"16_CR23","doi-asserted-by":"crossref","unstructured":"Heggie, D., Hut, P.: The gravitational million-body problem: a multidisciplinary approach to star cluster dynamics (2003)","DOI":"10.1017\/CBO9781139164535"},{"issue":"12","key":"16_CR24","doi-asserted-by":"publisher","first-page":"1306","DOI":"10.1109\/71.895795","volume":"11","author":"P Liu","year":"2000","unstructured":"Liu, P., Bhatt, S.N.: Experiences with parallel N-body simulation. IEEE Trans. Parallel Distrib. Syst. 11(12), 1306\u20131323 (2000)","journal-title":"IEEE Trans. Parallel Distrib. Syst."},{"key":"16_CR25","unstructured":"Mills, P.H., Nyland, L.S., Prins, J.F., Reif, J.H.: Prototyping N-body simulation in Proteus. In: Proceedings of the Sixth International Parallel Processing Symposium, pp. 476\u2013482. IEEE (1992)"},{"key":"16_CR26","unstructured":"Nyland, L.S., Prins, J.F., Reif, J.H.: A data-parallel implementation of the adaptive fast multipole algorithm. In: Proceedings of the DAGS 1993 Symposium (1993)"},{"key":"16_CR27","unstructured":"Nylons, L.: Fast N-body simulation with CUDA (2007)"},{"key":"16_CR28","unstructured":"Pringle, G.J.: Numerical study of three-dimensional flow using fast parallel particle algorithms. Ph.D. thesis, Napier University of Edinburgh (1994)"},{"key":"16_CR29","unstructured":"Salmon, J.K.: Parallel hierarchical N-body methods. Ph.D. thesis, California Institute of Technology (1991)"},{"key":"16_CR30","unstructured":"Singh, J.P.: Parallel hierarchical N-body methods and their implications for multiprocessors (1993)"},{"issue":"2","key":"16_CR31","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1016\/S1384-1076(01)00042-2","volume":"6","author":"V Springel","year":"2001","unstructured":"Springel, V., Yoshida, N., White, S.D.: GADGET: a code for collisionless and gasdynamical cosmological simulations. New Astron. 6(2), 79\u2013117 (2001)","journal-title":"New Astron."},{"key":"16_CR32","unstructured":"Sundaram, S.: Fast algorithms for N-body simulation. Technical report, Cornell University (1993)"},{"key":"16_CR33","unstructured":"Swinehart, C.: The Barnes-Hut Algorithm, January 2011. \n                      http:\/\/arborjs.org\/docs\/barnes-hut\n                      \n                    . Accessed 07 May 2018]"},{"issue":"4","key":"16_CR34","doi-asserted-by":"publisher","first-page":"987","DOI":"10.1002\/cpe.3087","volume":"26","author":"P Totoo","year":"2014","unstructured":"Totoo, P., Loidl, H.W.: Parallel Haskell implementations of the N-body problem. Concurr. Comput.: Pract. Exp. 26(4), 987\u20131019 (2014)","journal-title":"Concurr. Comput.: Pract. Exp."},{"key":"16_CR35","unstructured":"Warren, M.S., Becker, D.J., Goda, M.P., Salmon, J.K., Sterling, T.L.: Parallel supercomputing with commodity components. In: PDPTA, pp. 1372\u20131381 (1997)"},{"key":"16_CR36","doi-asserted-by":"crossref","unstructured":"Warren, M.S., Salmon, J.K.: A parallel hashed oct-tree N-body algorithm. In: Proceedings of the 1993 ACM\/IEEE conference on Supercomputing, pp. 12\u201321. ACM (1993)","DOI":"10.1145\/169627.169640"},{"issue":"1\u20132","key":"16_CR37","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1016\/S0304-3975(97)00232-6","volume":"197","author":"G Xue","year":"1998","unstructured":"Xue, G.: An o(n) time hierarchical tree algorithm for computing force field in N-body simulations. Theor. Comput. Sci. 197(1\u20132), 157\u2013169 (1998)","journal-title":"Theor. Comput. Sci."},{"issue":"6","key":"16_CR38","doi-asserted-by":"publisher","first-page":"1420","DOI":"10.1137\/0912077","volume":"12","author":"F Zhao","year":"1991","unstructured":"Zhao, F., Johnsson, S.L.: The parallel multipole method on the connection machine. SIAM J. Sci. Stat. Comput. 12(6), 1420\u20131437 (1991)","journal-title":"SIAM J. Sci. Stat. Comput."}],"container-title":["Lecture Notes in Computer Science","Computational Science and Its Applications \u2013 ICCSA 2019"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-24289-3_16","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,6,28]],"date-time":"2019-06-28T15:21:36Z","timestamp":1561735296000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-24289-3_16"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030242886","9783030242893"],"references-count":38,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-24289-3_16","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"29 June 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICCSA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Computational Science and Its Applications","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Saint Petersburg","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Russia","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"1 July 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"4 July 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"19","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"iccsa2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.iccsa.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}