{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T07:44:29Z","timestamp":1740123869356,"version":"3.37.3"},"reference-count":27,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2017,3,13]],"date-time":"2017-03-13T00:00:00Z","timestamp":1489363200000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Int J Parallel Prog"],"published-print":{"date-parts":[[2018,2]]},"DOI":"10.1007\/s10766-017-0497-y","type":"journal-article","created":{"date-parts":[[2017,3,13]],"date-time":"2017-03-13T09:53:44Z","timestamp":1489398824000},"page":"23-41","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":5,"title":["High-Level Programming for Many-Cores Using C++14 and the STL"],"prefix":"10.1007","volume":"46","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-0225-498X","authenticated-orcid":false,"given":"Michael","family":"Haidl","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sergei","family":"Gorlatch","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2017,3,13]]},"reference":[{"key":"497_CR1","doi-asserted-by":"crossref","unstructured":"Aldinucci, M., Campa, S., Danelutto, M., Kilpatrick, P., Torquati, M.: Targeting distributed systems in fastflow. In: Euro-Par 2012: Parallel Processing Workshops, pp. 47\u201356, Springer (2012)","DOI":"10.1007\/978-3-642-36949-0_7"},{"key":"497_CR2","unstructured":"AMD: Bolt C++ Template Library. Version 1.2 (2014)"},{"key":"497_CR3","doi-asserted-by":"crossref","unstructured":"Bell, N., Hoberock, J.: Thrust: a parallel template library. GPU Computing Gems Jade Edition. pp. 359\u2013372 (2011)","DOI":"10.1016\/B978-0-12-385963-1.00026-5"},{"issue":"03","key":"497_CR4","doi-asserted-by":"crossref","first-page":"257","DOI":"10.1142\/S0129626405002209","volume":"15","author":"H Bischof","year":"2005","unstructured":"Bischof, H., Gorlatch, S., Leshchinskiy, R., M\u00fcller, J.: Data parallelism in C++ template programs: a Barnes-Hut case study. Parallel Process. Lett. 15(03), 257\u2013272 (2005)","journal-title":"Parallel Process. Lett."},{"key":"497_CR5","doi-asserted-by":"crossref","unstructured":"Enmyren, J., Kessler, C.: SkePU: A multi-backend skeleton programming library for multi-GPU Systems. In: Proceedings of the Fourth International Workshop on High-Level Parallel Programming and Applications, ACM, pp 5\u201314 (2010)","DOI":"10.1145\/1863482.1863487"},{"issue":"2","key":"497_CR6","doi-asserted-by":"crossref","first-page":"129","DOI":"10.1504\/IJHPCN.2012.046370","volume":"7","author":"S Ernsting","year":"2012","unstructured":"Ernsting, S., Kuchen, H.: Algorithmic skeletons for multi-core, multi-GPU systems and clusters. Int. J. High Perform. Comput. Netw. 7(2), 129\u2013138 (2012)","journal-title":"Int. J. High Perform. Comput. Netw."},{"key":"497_CR7","unstructured":"Gorlatch, S., Cole, M.: Parallel skeletons. In: Encyclopedia of Parallel Computing. pp. 1417\u20131422, Springer (2011)"},{"key":"497_CR8","unstructured":"isocpp (2014a) Programming languages - C++ (committee draft)"},{"key":"497_CR9","unstructured":"isocpp (2014b) Working draft, C++ extensions for ranges [N4569]"},{"key":"497_CR10","unstructured":"isocpp (2015a) Programming languages\u2014C++ extensions for library fundamentals [N4480]"},{"key":"497_CR11","unstructured":"isocpp (2015b) Technical specification for C++ extensions for parallelism [N4578]"},{"key":"497_CR12","unstructured":"Khronos Group: the OpenCL specification. Version 1.2 (2012)"},{"key":"497_CR13","unstructured":"Khronos Group: the SPIR specification. Version 1.2 (2014)"},{"key":"497_CR14","unstructured":"Khronos Group: SYCL specifcation. Version 1.2 (2015)"},{"key":"497_CR15","unstructured":"Lattner, C.: LLVM and Clang: next generation compiler technology. In: Proceedings of the BSD Conference, pp 1\u20132 (2008)"},{"key":"497_CR16","unstructured":"Lutz, T.: ParallelSTL. https:\/\/github.com\/t-lutz\/ParallelSTL . Accessed 30 Apr 2016"},{"key":"497_CR17","unstructured":"Microsoft: C++ AMP: language and programming model. Version 1.0 (2012)"},{"key":"497_CR18","unstructured":"Microsoft: Parallel STL. https:\/\/parallelstl.codeplex.com\/ Accessed 30 Apr 2016"},{"key":"497_CR19","unstructured":"Nvidia: CUDA programming guide. Version 7.5 (2015a)"},{"key":"497_CR20","unstructured":"Nvidia: CUDA Toolkit 7.5 (2015b)"},{"key":"497_CR21","unstructured":"Nvidia: Parallel thread execution ISA. Version 4.3 (2015c)"},{"issue":"1","key":"497_CR22","first-page":"677","volume":"3","author":"L Nyland","year":"2007","unstructured":"Nyland, L., Harris, M., Prins, J.: Fast N-body simulation with CUDA. GPU Gems 3(1), 677\u2013696 (2007)","journal-title":"GPU Gems"},{"key":"497_CR23","volume-title":"Spatial Tessellations: Concepts and Applications of Voronoi Diagrams","author":"A Okabe","year":"2009","unstructured":"Okabe, A., Boots, B., Sugihara, K., Chiu, S.N.: Spatial Tessellations: Concepts and Applications of Voronoi Diagrams, vol. 501. Wiley, Hoboken (2009)"},{"key":"497_CR24","doi-asserted-by":"crossref","unstructured":"Rompf, T., Odersky, M.: Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs. ACM SIGPLAN Notices, vol. 46, pp 127\u2013136, ACM (2010)","DOI":"10.1145\/1942788.1868314"},{"key":"497_CR25","doi-asserted-by":"crossref","unstructured":"Steuwer, M., Kegel, P., Gorlatch, S.: SkelCL\u2014a portable skeleton library for high-level GPU programming. In: Workshop on High-Level Parallel Programming Models and Supportive Environments at IPDPS 2011, IEEE, pp 1176\u20131182 (2011)","DOI":"10.1109\/IPDPS.2011.269"},{"issue":"4s","key":"497_CR26","doi-asserted-by":"crossref","first-page":"134:1","DOI":"10.1145\/2584665","volume":"13","author":"AK Sujeeth","year":"2014","unstructured":"Sujeeth, A.K., Brown, K.J., Lee, H., et al.: Delite: a compiler architecture for performance-oriented embedded domain-specific languages. ACM Trans. Embed. Comput. Syst. 13(4s), 134:1\u2013134:25 (2014)","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"497_CR27","doi-asserted-by":"crossref","unstructured":"Taha, W.: A gentle introduction to multi-stage programming. In: Domain-Specific Program Generation, pp 30\u201350, Springer (2004)","DOI":"10.1007\/978-3-540-25935-0_3"}],"container-title":["International Journal of Parallel Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10766-017-0497-y\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-017-0497-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-017-0497-y.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,9,19]],"date-time":"2019-09-19T13:24:22Z","timestamp":1568899462000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10766-017-0497-y"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,3,13]]},"references-count":27,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2018,2]]}},"alternative-id":["497"],"URL":"https:\/\/doi.org\/10.1007\/s10766-017-0497-y","relation":{},"ISSN":["0885-7458","1573-7640"],"issn-type":[{"type":"print","value":"0885-7458"},{"type":"electronic","value":"1573-7640"}],"subject":[],"published":{"date-parts":[[2017,3,13]]}}}