{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T00:52:38Z","timestamp":1740099158094,"version":"3.37.3"},"publisher-location":"Cham","reference-count":34,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319985206"},{"type":"electronic","value":"9783319985213"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"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":[],"published-print":{"date-parts":[[2018]]},"DOI":"10.1007\/978-3-319-98521-3_3","type":"book-chapter","created":{"date-parts":[[2018,8,28]],"date-time":"2018-08-28T01:37:01Z","timestamp":1535420221000},"page":"37-52","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["A Proposal for Loop-Transformation Pragmas"],"prefix":"10.1007","author":[{"given":"Michael","family":"Kruse","sequence":"first","affiliation":[]},{"given":"Hal","family":"Finkel","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2018,8,29]]},"reference":[{"key":"3_CR1","doi-asserted-by":"crossref","unstructured":"Bagn\u00e8res, L., Zinenko, O., Huot, S., Bastoul, C.: Opening polyhedral compiler\u2019s black box. In: 14th Annual IEEE\/ACM International Symposium on Code Generation and Optimization (CGO 2016). IEEE (2016)","DOI":"10.1145\/2854038.2854048"},{"key":"3_CR2","unstructured":"Attributes in Clang. http:\/\/clang.llvm.org\/docs\/AttributeReference.html"},{"key":"3_CR3","unstructured":"Auto-Vectorization in LLVM. http:\/\/llvm.org\/docs\/Vectorizers.html"},{"key":"3_CR4","unstructured":"Clang Language Extensions. http:\/\/clang.llvm.org\/docs\/LanguageExtensions.html"},{"key":"3_CR5","unstructured":"Doerfert, J.: [RFC] abstract parallel IR optimizations. llvm-dev mailing list post, June 2018. http:\/\/lists.llvm.org\/pipermail\/llvm-dev\/2018-June\/123841.html"},{"key":"3_CR6","unstructured":"Dolbeau, R., Bihan, S., Bodin, F.: HMPP\u2122: a hybrid multi-core parallel programming environment. In: First Workshop on General Purpose Processing on Graphics Processing Units (GPGPU 2007) (2007)"},{"key":"3_CR7","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"136","DOI":"10.1007\/978-3-540-69330-7_10","volume-title":"Languages and Compilers for Parallel Computing","author":"S Donadio","year":"2006","unstructured":"Donadio, S., et al.: A language for the compact representation of multiple program versions. In: Ayguad\u00e9, E., Baumgartner, G., Ramanujam, J., Sadayappan, P. (eds.) LCPC 2005. LNCS, vol. 4339, pp. 136\u2013151. Springer, Heidelberg (2006). https:\/\/doi.org\/10.1007\/978-3-540-69330-7_10"},{"issue":"12","key":"3_CR8","doi-asserted-by":"publisher","first-page":"3202","DOI":"10.1016\/j.jpdc.2014.07.003","volume":"74","author":"HC Edwards","year":"2014","unstructured":"Edwards, H.C., Trott, C.R., Sunderland, D.: Kokkos: enabling manycore performance portability through polymorphic memory access patterns. J. Parallel Distrib. Comput. 74(12), 3202\u20133216 (2014)","journal-title":"J. Parallel Distrib. Comput."},{"key":"3_CR9","unstructured":"Finkel, H., Doerfert, J., Tian, X., Stelle, G.: A parallel IR in real life: optimizing OpenMP. EuroLLVM 2018 presentation (2018). http:\/\/llvm.org\/devmtg\/2018-04\/talks.html#Talk_1"},{"key":"3_CR10","unstructured":"Finkel, H., Tian, X.: [RFC] IR-level region annotations. llvm-dev mailing list post, January 2017. http:\/\/lists.llvm.org\/pipermail\/llvm-dev\/2017-January\/108906.html"},{"key":"3_CR11","unstructured":"Free Software Foundation: Loop-Specific Pragmas. https:\/\/gcc.gnu.org\/onlinedocs\/gcc\/Loop-Specific-Pragmas.html"},{"issue":"3","key":"3_CR12","doi-asserted-by":"publisher","first-page":"261","DOI":"10.1007\/s10766-006-0012-3","volume":"34","author":"S Girbal","year":"2006","unstructured":"Girbal, S., et al.: Semi-automatic composition of loop transformations for deep parallelism and memory hierarchies. Int. J. Parallel Program. 34(3), 261\u2013317 (2006)","journal-title":"Int. J. Parallel Program."},{"key":"3_CR13","unstructured":"Grosser, T., Zheng, H., Aloor, R., Simb\u00fcrger, A., Gr\u00f6\u00dflinger, A., Pouchet, L.N.: Polly - polyhedral optimization in LLVM. In: First International Workshop on Polyhedral Compilation Techniques (IMPACT 2011) (2011)"},{"key":"3_CR14","doi-asserted-by":"crossref","unstructured":"Hartono, A., Norris, B., Sadayappan, P.: Annotation-based empirical performance tuning using Orio. In: Proceedings of the 23rd IEEE International Parallel and Distributed Computing Symposium (IPDPS 2009). IEEE (2009)","DOI":"10.1109\/IPDPS.2009.5161004"},{"key":"3_CR15","doi-asserted-by":"crossref","unstructured":"Hornung, R.D., Keasler, J.A.: The RAJA portability layer: overview and status. Technical report LLNL-TR-661403, Lawrence Livermore National Lab (2014)","DOI":"10.2172\/1169830"},{"key":"3_CR16","unstructured":"IBM: Product documentation for XL C\/C++ for AIX, V13.1.3"},{"key":"3_CR17","unstructured":"Intel: Threading Building Blocks. https:\/\/www.threadingbuildingblocks.org"},{"key":"3_CR18","unstructured":"Intel: Intel C++ Compiler 18.0 Developer Guide and Reference, May 2018"},{"key":"3_CR19","unstructured":"International Organization for Standardization: ISO\/IEC 14882:2017, December 2017"},{"key":"3_CR20","unstructured":"Kelly, W., Pugh, W.: A framework for unifying reordering transformations. Technical report UMIACS-TR-93-134\/CS-TR-3193, University of Maryland (1992)"},{"issue":"2","key":"3_CR21","first-page":"12:1","volume":"43","author":"TM Low","year":"2016","unstructured":"Low, T.M., Igual, F.D., Smith, T.M., Quintana-Orti, E.S.: Analytical modeling is enough for high-performance BLIS. Trans. Math. Softw. (TOMS) 43(2), 12:1\u201312:18 (2016)","journal-title":"Trans. Math. Softw. (TOMS)"},{"key":"3_CR22","unstructured":"Microsoft: C\/C++ Preprocessor Reference. http:\/\/docs.microsoft.com\/en-us\/cpp\/preprocessor\/loop"},{"key":"3_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"72","DOI":"10.1007\/978-3-540-27866-5_10","volume-title":"Euro-Par 2004 Parallel Processing","author":"R M\u00fcller-Pfefferkorn","year":"2004","unstructured":"M\u00fcller-Pfefferkorn, R., Nagel, W.E., Trenkler, B.: Optimizing cache access: a tool for source-to-source transformations and real-life compiler tests. In: Danelutto, M., Vanneschi, M., Laforenza, D. (eds.) Euro-Par 2004. LNCS, vol. 3149, pp. 72\u201381. Springer, Heidelberg (2004). https:\/\/doi.org\/10.1007\/978-3-540-27866-5_10"},{"key":"3_CR24","unstructured":"OpenACC-Standard.org: The OpenACC Application Programming Interface Version 4.0, November 2017"},{"key":"3_CR25","unstructured":"OpenMP Architecture Review Board: OpenMP Application Program Interface Version 4.0, July 2017"},{"key":"3_CR26","doi-asserted-by":"crossref","unstructured":"Ragan-Kelley, J., Barnes, C., Adams, A., Paris, S., Durand, F., Amarasinghe, S.: Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines. In: Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2013), pp. 519\u2013530. ACM (2013)","DOI":"10.1145\/2491956.2462176"},{"key":"3_CR27","unstructured":"Saito, H.: Extending LoopVectorizer towards supporting OpenMP4.5 SIMD and outer loop auto-vectorization. EuroLLVM 2018 presentation (2016). http:\/\/llvm.org\/devmtg\/2016-11\/#talk7"},{"key":"3_CR28","doi-asserted-by":"crossref","unstructured":"Schardl, T.B., Moses, W.S., Leiserson, C.E.: Tapir: embedding fork-join parallelism into LLVM\u2019s intermediate representation. In: Proceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 2017), pp. 249\u2013265. ACM (2017)","DOI":"10.1145\/3018743.3018758"},{"key":"3_CR29","doi-asserted-by":"crossref","unstructured":"Tian, X., et al.: LLVM framework and IR extensions for parallelization, SIMD vectorization and offloading. In: Third Workshop on the LLVM Compiler Infrastructure in HPC (LLVM-HPC 2016). IEEE (2016)","DOI":"10.1109\/LLVM-HPC.2016.008"},{"key":"3_CR30","doi-asserted-by":"crossref","unstructured":"Tiwari, A., Chen, C., Chame, J., Hall, M., Hollingsworth, J.K.: A scalable auto-tuning framework for compiler optimization. In: Proceedings of the 23rd IEEE International Parallel and Distributed Computing Symposium (IPDPS 2009). IEEE (2009)","DOI":"10.1109\/IPDPS.2009.5161054"},{"key":"3_CR31","unstructured":"Vasilache, N., et al.: Tensor Comprehensions: Framework-Agnostic High-Performance Machine Learning Abstractions. CoRR abs\/1802.04730 (2018)"},{"key":"3_CR32","unstructured":"Verdoolaege, S., Guelton, S., Grosser, T., Cohen, A.: Schedule trees. In: Fourth International Workshop on Polyhedral Compilation Techniques (IMPACT 2014) (2014)"},{"key":"3_CR33","doi-asserted-by":"crossref","unstructured":"Yi, Q., Seymour, K., You, H., Vuduc, R., Quinlan, D.: POET: parameterized optimizations for empirical tuning. In: Proceedings of the 21st IEEE International Parallel And Distributed Computing Symposium (IPDPS 2007). IEEE (2007)","DOI":"10.1109\/IPDPS.2007.370637"},{"key":"3_CR34","doi-asserted-by":"crossref","unstructured":"Zinenko, O., Huot, S., Bastoul, C.: Clint: a direct manipulation tool for parallelizing compute-intensive program parts. In: 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL\/HCC). IEEE (2014)","DOI":"10.1109\/VLHCC.2014.6883031"}],"container-title":["Lecture Notes in Computer Science","Evolving OpenMP for Evolving Architectures"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-98521-3_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,10,22]],"date-time":"2019-10-22T21:37:59Z","timestamp":1571780279000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-98521-3_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319985206","9783319985213"],"references-count":34,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-98521-3_3","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2018]]}}}