{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,1]],"date-time":"2025-11-01T09:23:11Z","timestamp":1761988991421,"version":"3.40.3"},"publisher-location":"Cham","reference-count":24,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319436586"},{"type":"electronic","value":"9783319436593"}],"license":[{"start":{"date-parts":[[2016,1,1]],"date-time":"2016-01-01T00:00:00Z","timestamp":1451606400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2016,1,1]],"date-time":"2016-01-01T00:00:00Z","timestamp":1451606400000},"content-version":"vor","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":[[2016]]},"DOI":"10.1007\/978-3-319-43659-3_20","type":"book-chapter","created":{"date-parts":[[2016,8,8]],"date-time":"2016-08-08T02:54:01Z","timestamp":1470624841000},"page":"264-277","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["Portable SIMD Performance with OpenMP* 4.x Compiler Directives"],"prefix":"10.1007","author":[{"given":"Florian","family":"Wende","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Matthias","family":"Noack","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Thomas","family":"Steinke","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"Klemm","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Chris J.","family":"Newburn","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Georg","family":"Zitzlsberger","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2016,8,9]]},"reference":[{"unstructured":"Kuck, D., Kuhn, R., Leasure, B., Wolfe, M.: The structure of an advanced retargetable vectorizer. In: Tutorial on Supercomputers: Designs and Applications, pp. 163\u2013178. IEEE Press, New York (1984)","key":"20_CR1"},{"unstructured":"Davies, I., Huson, C., Macke, T., Leasure, B., Wolfe, M.: The KAP\/S-1: an advanced source-to-source vectorizer for the S-l Mark IIa supercomputer. In: Proceedings of the 1986 International Conference on Parallel Processing, pp. 833\u2013835. IEEE Press, New York (1986)","key":"20_CR2"},{"unstructured":"Davies, I., Huson, C., Macke, T., Leasure, B., Wolfe, M.: The KAP\/205: an advanced source-to-source vectorizer for the Cyber 205 supercomputer. In: Proceedings of the 1986 International Conference on Parallel Processing, pp. 827\u2013832. IEEE Press, New York (1986)","key":"20_CR3"},{"unstructured":"Allen, J., Kennedy, K.: PFC: A program to convert Fortran to parallel form. Report MASC-TR82-6, Rice Univ. Houston, Texas, March 1982","key":"20_CR4"},{"issue":"9","key":"20_CR5","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1109\/C-M.1981.220603","volume":"14","author":"B Brode","year":"1981","unstructured":"Brode, B.: Precompilation of Fortran programs to facilitate array processing. Computer 14(9), 46\u201351 (1981)","journal-title":"Computer"},{"unstructured":"Shin, J.: SIMD Programming by Expansion. Technical report, Mathematics and Computer Science Division, Argonne National Laboratory Argonne, IL 60439 USA (2007). \n                      http:\/\/www.mcs.anl.gov\/papers\/P1425.pdf","key":"20_CR6"},{"key":"20_CR7","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"137","DOI":"10.1007\/978-3-642-29740-3_17","volume-title":"Euro-Par 2011: Parallel Processing Workshops","author":"O Krzikalla","year":"2012","unstructured":"Krzikalla, O., Feldhoff, K., M\u00fcller-Pfefferkorn, R., Nagel, W.E.: Scout: a source-to-source transformator for SIMD-Optimizations. In: Alexander, M., et al. (eds.) Euro-Par 2011, Part II. LNCS, vol. 7156, pp. 137\u2013145. Springer, Heidelberg (2012)"},{"doi-asserted-by":"crossref","unstructured":"Karrenberg, R., Hack, S.: Whole function vectorization. In: International Symposium on Code Generation and Optimization. CGO (2011)","key":"20_CR8","DOI":"10.1109\/CGO.2011.5764682"},{"key":"20_CR9","doi-asserted-by":"publisher","first-page":"358","DOI":"10.1090\/S0002-9947-1953-0053041-6","volume":"74","author":"H Rice","year":"1953","unstructured":"Rice, H.: Classes of recursively enumerable sets and their decision problems. Trans. Am. Math. Soc. 74, 358\u2013366 (1953)","journal-title":"Trans. Am. Math. Soc."},{"issue":"4","key":"20_CR10","doi-asserted-by":"publisher","first-page":"345","DOI":"10.1145\/197405.197406","volume":"26","author":"D Bacon","year":"1994","unstructured":"Bacon, D., Graham, S., Sharp, O.: Compiler transformations for high-performance computing. ACM Comput. Surv. 26(4), 345\u2013420 (1994)","journal-title":"ACM Comput. Surv."},{"key":"20_CR11","volume-title":"High-Performance Compilers for Parallel Computing","author":"M Wolfe","year":"1995","unstructured":"Wolfe, M.: High-Performance Compilers for Parallel Computing. Pearson, Redwood City (1995)"},{"unstructured":"Senkevich, A.: Libmvec (2015). \n                      https:\/\/sourceware.org\/glibc\/wiki\/libmvec","key":"20_CR12"},{"unstructured":"Intel: Intrinsics for Short Vector Math Library Operations (2015). \n                      https:\/\/software.intel.com\/en-us\/node\/583200","key":"20_CR13"},{"unstructured":"O\u2019Donell, C.: The GNU C Library version 2.22 is now available (2015). \n                      https:\/\/www.sourceware.org\/ml\/libc-alpha\/2015-08\/msg00609.html","key":"20_CR14"},{"unstructured":"Intel: Vectorization and Loops (2015). \n                      https:\/\/software.intel.com\/en-us\/node\/581412","key":"20_CR15"},{"unstructured":"Intel(R) Mobile Computing and Compilers: Vector Function Application Binary Interface, Version 0.9.5 (2013). \n                      https:\/\/www.cilkplus.org\/sites\/default\/files\/open_specifications","key":"20_CR16"},{"unstructured":"Intel: Intel Cilk Plus Language Extension Specification (2013). \n                      https:\/\/www.cilkplus.org\/sites\/default\/files\/open_specifications\/Intel_Cilk_plus_lang_spec_1.2.htm","key":"20_CR17"},{"unstructured":"OpenMP Architecture Review Board: OpenMP Application Program Interface, Version 4.5 (2015). \n                      http:\/\/www.openmp.org\/","key":"20_CR18"},{"unstructured":"Krzikalla, O., Wende, F., H\u00f6hnerbach, M.: Dynamic SIMD vector lane scheduling. In: Proceedings of the ISC 2016 IXPUG Workshop. LNCS. Springer (2016). \n                      www.ixpug.org","key":"20_CR19"},{"issue":"11","key":"20_CR20","doi-asserted-by":"publisher","first-page":"1409","DOI":"10.1002\/spe.1149","volume":"42","author":"M Kretz","year":"2012","unstructured":"Kretz, M., Lindenstruth, V.: Vc: a C++ library for explicit vectorization. Softw. Pract. Exper. 42(11), 1409\u20131430 (2012)","journal-title":"Softw. Pract. Exper."},{"unstructured":"This paper: Code samples hosted on \n                      https:\/\/github.com\/flwende\/simd_benchmarks","key":"20_CR21"},{"key":"20_CR22","doi-asserted-by":"publisher","first-page":"11169","DOI":"10.1103\/PhysRevB.54.11169","volume":"54","author":"G Kresse","year":"1996","unstructured":"Kresse, G., Furthm\u00fcller, J.: Efficient iterative schemes for ab initio total-energy calculations using a plane-wave basis set. Phys. Rev. B 54, 11169\u201311186 (1996)","journal-title":"Phys. Rev. B"},{"key":"20_CR23","doi-asserted-by":"publisher","first-page":"1758","DOI":"10.1103\/PhysRevB.59.1758","volume":"59","author":"G Kresse","year":"1999","unstructured":"Kresse, G., Joubert, D.: From ultrasoft pseudopotentials to the projector augmented-wave method. Phys. Rev. B 59, 1758\u20131775 (1999)","journal-title":"Phys. Rev. B"},{"unstructured":"Griffies, S.M.: Elements of the Modular Ocean Model (MOM). NOAA Geophysical Fluid Dynamics Laboratory, Princeton, USA (2012)","key":"20_CR24"}],"container-title":["Lecture Notes in Computer Science","Euro-Par 2016: Parallel Processing"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-43659-3_20","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,8,9]],"date-time":"2020-08-09T00:04:56Z","timestamp":1596931496000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-43659-3_20"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016]]},"ISBN":["9783319436586","9783319436593"],"references-count":24,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-43659-3_20","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2016]]},"assertion":[{"value":"9 August 2016","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"Euro-Par","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"European Conference on Parallel Processing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Grenoble","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"France","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2016","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"24 August 2016","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 August 2016","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"22","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"europar2016","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/europar2016.inria.fr\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"This content has been made available to all.","name":"free","label":"Free to read"}]}}