{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:53:43Z","timestamp":1750308823072,"version":"3.41.0"},"reference-count":19,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2011,3,29]],"date-time":"2011-03-29T00:00:00Z","timestamp":1301356800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGMETRICS Perform. Eval. Rev."],"published-print":{"date-parts":[[2011,3,29]]},"abstract":"<jats:p>We present a performance analysis and benchmarking study of the OP2 \"active\" library, which provides an abstraction framework for the solution of parallel unstructured mesh applications. OP2 aims to decouple the scientific specification of the application from its parallel implementation, achieving code longevity and near-optimal performance through re-targeting the back-end to different hardware.<\/jats:p>\n          <jats:p>Runtime performance results are presented for a representative unstructured mesh application written using OP2 on a variety of many-core processor systems, including the traditional X86 architectures from Intel (Xeon based on the older Penryn and current Nehalem micro-architectures) and GPU offerings from NVIDIA (GTX260, Tesla C2050). Our analysis demonstrates the contrasting performance between the use of CPU (OpenMP) and GPU (CUDA) parallel implementations for the solution on an industrial sized unstructured mesh consisting of about 1.5 million edges.<\/jats:p>\n          <jats:p>Results show the significance of choosing the correct partition and thread-block configuration, the factors limiting the GPU performance and insights into optimizations for improved performance.<\/jats:p>","DOI":"10.1145\/1964218.1964221","type":"journal-article","created":{"date-parts":[[2011,4,1]],"date-time":"2011-04-01T15:54:25Z","timestamp":1301673265000},"page":"9-15","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":32,"title":["Performance analysis of the OP2 framework on many-core architectures"],"prefix":"10.1145","volume":"38","author":[{"given":"M. B.","family":"Giles","sequence":"first","affiliation":[{"name":"University of Oxford"}]},{"given":"G. R.","family":"Mudalige","sequence":"additional","affiliation":[{"name":"University of Oxford"}]},{"given":"Z.","family":"Sharif","sequence":"additional","affiliation":[{"name":"Imperial College London"}]},{"given":"G.","family":"Markall","sequence":"additional","affiliation":[{"name":"Imperial College London"}]},{"given":"P. H.J.","family":"Kelly","sequence":"additional","affiliation":[{"name":"Imperial College London"}]}],"member":"320","published-online":{"date-parts":[[2011,3,29]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"HMPP workbench. http:\/\/www.caps-entreprise.com\/.  HMPP workbench. http:\/\/www.caps-entreprise.com\/."},{"key":"e_1_2_1_2_1","unstructured":"Intel Xeon Processor E5540 specifications. http:\/\/ark.intel.com\/Product.aspx?id=37104.  Intel Xeon Processor E5540 specifications. http:\/\/ark.intel.com\/Product.aspx?id=37104."},{"volume-title":"Tesla C2050 \/ C2070 GPU Computing Processor. http:\/\/www.nvidia.com\/object\/product_tesla_C2050_C2070_us.html.","author":"NVIDIA","key":"e_1_2_1_3_1","unstructured":"NVIDIA Tesla C2050 \/ C2070 GPU Computing Processor. http:\/\/www.nvidia.com\/object\/product_tesla_C2050_C2070_us.html. NVIDIA Tesla C2050 \/ C2070 GPU Computing Processor. http:\/\/www.nvidia.com\/object\/product_tesla_C2050_C2070_us.html."},{"key":"e_1_2_1_4_1","unstructured":"The ROSE Compiler. http:\/\/www.rosecompiler.org\/.  The ROSE Compiler. http:\/\/www.rosecompiler.org\/."},{"key":"e_1_2_1_5_1","volume-title":"International Journal for Numerical Methods in Fluids","author":"Asouti V. G.","year":"2010","unstructured":"V. G. Asouti , X. S. Trompoukis , I. C. Kampolis , and K. C. Giannakoglou . Unsteady CFD Computations Using Vertex-Centered Finite Volumes for Unstructured Grids On Graphics Processing Units . International Journal for Numerical Methods in Fluids , pages n\/a--n\/a, 2010 . V. G. Asouti, X. S. Trompoukis, I. C. Kampolis, and K. C. Giannakoglou. Unsteady CFD Computations Using Vertex-Centered Finite Volumes for Unstructured Grids On Graphics Processing Units. International Journal for Numerical Methods in Fluids, pages n\/a--n\/a, 2010."},{"key":"e_1_2_1_6_1","first-page":"391","volume-title":"Computational Fluid Dynamics'94:Proceedings of the Second European Computational Fluid Dynamics Conference","author":"Burgess D. A.","year":"1994","unstructured":"D. A. Burgess , P. I. Crumpton , and M. B. Giles . A Parallel Framework for Unstructured Grid Solvers . In S. Wagner, E. Hirschel, J. Periaux, and R. Piva, editors, Computational Fluid Dynamics'94:Proceedings of the Second European Computational Fluid Dynamics Conference , pages 391 -- 396 . John Wiley and Sons , 1994 . D. A. Burgess, P. I. Crumpton, and M. B. Giles. A Parallel Framework for Unstructured Grid Solvers. In S. Wagner, E. Hirschel, J. Periaux, and R. Piva, editors, Computational Fluid Dynamics'94:Proceedings of the Second European Computational Fluid Dynamics Conference, pages 391--396. John Wiley and Sons, 1994."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.2514\/2.6106"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1869459.1869527"},{"key":"e_1_2_1_9_1","volume-title":"International Journal for Numerical Methods in Fluid","author":"Corrigan A.","year":"2010","unstructured":"A. Corrigan , F. F. Camelli , R. L\u00f6hner , and J. Wallin . Running Unstructured Grid-based CFD Solvers on Modern Graphics Hardware . International Journal for Numerical Methods in Fluid , 2010 . A. Corrigan, F. F. Camelli, R. L\u00f6hner, and J. Wallin. Running Unstructured Grid-based CFD Solvers on Modern Graphics Hardware. International Journal for Numerical Methods in Fluid, 2010."},{"key":"e_1_2_1_10_1","volume-title":"Multigrid Aircraft Computations Using the OPlus Parallel Library. Parallel Computational Fluid Dynamics: Implementations and Results Using Parallel Computers. 339--346","author":"Crumpton P. I.","year":"1996","unstructured":"P. I. Crumpton and M. B. Giles . Multigrid Aircraft Computations Using the OPlus Parallel Library. Parallel Computational Fluid Dynamics: Implementations and Results Using Parallel Computers. 339--346 , A. Ecer, J. Periaux, N. Satofuka, and S. Taylor, editors, North-Holland , 1996 . P. I. Crumpton and M. B. Giles. Multigrid Aircraft Computations Using the OPlus Parallel Library. Parallel Computational Fluid Dynamics: Implementations and Results Using Parallel Computers. 339--346, A. Ecer, J. Periaux, N. Satofuka, and S. Taylor, editors, North-Holland, 1996."},{"key":"e_1_2_1_11_1","doi-asserted-by":"crossref","unstructured":"Z. DeVito N. Joubert M. Medina M. Barrientos S. Oakley J. Alonso E. Darve F. Ham and P. Hanrahan. Liszt: Programming Mesh Based PDEs on Heterogeneous Parallel Platforms. Presentation given by the Stanford PSAAP Center Oct 2010 http:\/\/psaap.stanford.edu.  Z. DeVito N. Joubert M. Medina M. Barrientos S. Oakley J. Alonso E. Darve F. Ham and P. Hanrahan. Liszt: Programming Mesh Based PDEs on Heterogeneous Parallel Platforms. Presentation given by the Stanford PSAAP Center Oct 2010 http:\/\/psaap.stanford.edu.","DOI":"10.1145\/2063384.2063396"},{"key":"e_1_2_1_12_1","unstructured":"M. Giles. Hydra. http:\/\/people.maths.ox.ac.uk\/gilesm\/hydra.html.  M. Giles. Hydra. http:\/\/people.maths.ox.ac.uk\/gilesm\/hydra.html."},{"key":"e_1_2_1_13_1","unstructured":"M. Giles. OPlus2 Developer's Manual. http:\/\/people.maths.ox.ac.uk\/gilesm\/op2\/dev.pdf.  M. Giles. OPlus2 Developer's Manual. http:\/\/people.maths.ox.ac.uk\/gilesm\/op2\/dev.pdf."},{"key":"e_1_2_1_14_1","unstructured":"M. Giles. OPlus2 for Many-Core Platforms. http:\/\/people.maths.ox.ac.uk\/gilesm\/op2\/.  M. Giles. OPlus2 for Many-Core Platforms. http:\/\/people.maths.ox.ac.uk\/gilesm\/op2\/."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.2514\/2.1961"},{"issue":"4","key":"e_1_2_1_16_1","first-page":"434","volume":"16","author":"Giles M. B.","year":"2008","unstructured":"M. B. Giles , D. Ghate , and M. C. Duta . Using Automatic Differentiation for Adjoint CFD Code Development. Computational Fluid Dynamics Journal , 16 ( 4 ): 434 -- 443 , 2008 . M. B. Giles, D. Ghate, and M. C. Duta. Using Automatic Differentiation for Adjoint CFD Code Development. Computational Fluid Dynamics Journal, 16(4):434--443, 2008.","journal-title":"Using Automatic Differentiation for Adjoint CFD Code Development. Computational Fluid Dynamics Journal"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-92990-1_14"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cma.2009.11.001"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.2514\/2.1556"}],"container-title":["ACM SIGMETRICS Performance Evaluation Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1964218.1964221","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1964218.1964221","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T20:26:47Z","timestamp":1750278407000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1964218.1964221"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011,3,29]]},"references-count":19,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2011,3,29]]}},"alternative-id":["10.1145\/1964218.1964221"],"URL":"https:\/\/doi.org\/10.1145\/1964218.1964221","relation":{},"ISSN":["0163-5999"],"issn-type":[{"type":"print","value":"0163-5999"}],"subject":[],"published":{"date-parts":[[2011,3,29]]},"assertion":[{"value":"2011-03-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}