{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,29]],"date-time":"2025-09-29T08:12:48Z","timestamp":1759133568836},"reference-count":35,"publisher":"Springer Science and Business Media LLC","issue":"5-6","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Int J Parallel Prog"],"published-print":{"date-parts":[[2010,10]]},"DOI":"10.1007\/s10766-010-0139-0","type":"journal-article","created":{"date-parts":[[2010,5,25]],"date-time":"2010-05-25T11:12:21Z","timestamp":1274785941000},"page":"361-378","source":"Crossref","is-referenced-by-count":28,"title":["Semantic-Aware Automatic Parallelization of Modern Applications Using High-Level Abstractions"],"prefix":"10.1007","volume":"38","author":[{"given":"Chunhua","family":"Liao","sequence":"first","affiliation":[]},{"given":"Daniel J.","family":"Quinlan","sequence":"additional","affiliation":[]},{"given":"Jeremiah J.","family":"Willcock","sequence":"additional","affiliation":[]},{"given":"Thomas","family":"Panas","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2010,5,26]]},"reference":[{"key":"139_CR1","unstructured":"GOMP\u2014An OpenMP implementation for GCC. http:\/\/gcc.gnu.org\/projects\/gomp (2008)"},{"key":"139_CR2","volume-title":"Optimizing Compilers for Modern Architectures: a Dependence-based Approach","author":"R. Allen","year":"2001","unstructured":"Allen R., Kennedy K.: Optimizing Compilers for Modern Architectures: a Dependence-based Approach. Morgan Kaufmann, San Francisco (2001)"},{"key":"139_CR3","doi-asserted-by":"crossref","unstructured":"An, P., Jula, A., Rus, S., Saunders, S., Smith, T., Tanase, G., Thomas, N., Amato, N.M., Rauchwerger, L.: STAPL: an adaptive, generic parallel C++ library. In: Languages and Compilers for Parallel Computing (LCPC), pp. 193\u2013208 (2001)","DOI":"10.1007\/3-540-35767-X_13"},{"issue":"1","key":"139_CR4","first-page":"67","volume":"7","author":"S. Benkner","year":"1999","unstructured":"Benkner S.: VFC: the Vienna Fortran compiler. Sci. Program. 7(1), 67\u201381 (1999)","journal-title":"Sci. Program."},{"key":"139_CR5","unstructured":"Bik, A., Girkar, M., Grey, P., Tian, X.: Efficient exploitation of parallelism on Pentium III and Pentium 4 processor-based systems. Intel Technol. J. Q1, 1\u20139 (2001)"},{"issue":"12","key":"139_CR6","doi-asserted-by":"crossref","first-page":"78","DOI":"10.1109\/2.546612","volume":"29","author":"W. Blume","year":"1996","unstructured":"Blume W., Doallo R., Eigenmann R., Grout J., Hoeflinger J., Lawrence T., Lee J., Padua D., Paek Y., Pottenger B., Rauchwerger L., Tu P.: Parallel programming with Polaris. Computer 29(12), 78\u201382 (1996). doi: 10.1109\/2.546612","journal-title":"Computer"},{"key":"139_CR7","unstructured":"Bodin, F., et\u00a0al.: Sage++: an object-oriented toolkit and class library for building Fortran and C++ restructuring tools. In: Proceedings of the Second Annual Object-Oriented Numerics Conference (1994)"},{"key":"139_CR8","volume-title":"Engineering a Compiler","author":"K. Cooper","year":"2003","unstructured":"Cooper K., Torczon L.: Engineering a Compiler. Morgan Kaufmann, San Francisco (2003)"},{"issue":"2","key":"139_CR9","doi-asserted-by":"crossref","first-page":"244","DOI":"10.1109\/5.214549","volume":"81","author":"K.D. Cooper","year":"1993","unstructured":"Cooper K.D., Hall M.W., Hood R.T., Kennedy K., McKinley K.S., Mellor-Crummey J.M., Torczon L., Warren S.K.: The ParaScope parallel programming environment. Proc. IEEE 81(2), 244\u2013263 (1993)","journal-title":"Proc. IEEE"},{"key":"139_CR10","unstructured":"Edison Design Group: C++ Front End. http:\/\/www.edg.com"},{"issue":"3","key":"139_CR11","doi-asserted-by":"crossref","first-page":"225","DOI":"10.1002\/spe.683","volume":"36","author":"D. Gregor","year":"2006","unstructured":"Gregor D., Schupp S.: STLlint: lifting static checking from languages to libraries. Softw. Pract. Exper. 36(3), 225\u2013254 (2006). doi: 10.1002\/spe.v36:3","journal-title":"Softw. Pract. Exper."},{"key":"139_CR12","doi-asserted-by":"crossref","unstructured":"Johnson, E., Gannon, D., Beckman, P.: HPC++: Experiments with the Parallel Standard Template Library. In: Proceedings of the 11th International Conference on Supercomputing (ICS-97), pp. 124\u2013131. ACM Press, New York (1997)","DOI":"10.1145\/263580.263614"},{"key":"139_CR13","doi-asserted-by":"crossref","unstructured":"Johnson, S.P., Evans, E., Jin, H., Ierotheou, C.S.: The ParaWise Expert Assistant\u2014Widening accessibility to efficient and scalable tool generated OpenMP code. In: WOMPAT, pp. 67\u201382 (2004)","DOI":"10.1007\/978-3-540-31832-3_7"},{"key":"139_CR14","doi-asserted-by":"crossref","unstructured":"Kambadur, P., Gregor, D., Lumsdaine, A.: OpenMP extensions for generic libraries. In: International Workshop on OpenMP (IWOMP) (2008)","DOI":"10.1007\/978-3-540-79561-2_11"},{"issue":"2","key":"139_CR15","doi-asserted-by":"crossref","first-page":"387","DOI":"10.1109\/JPROC.2004.840447","volume":"93","author":"K. Kennedy","year":"2005","unstructured":"Kennedy K., Broom B., Chauhan A., Fowler R., Garvin J., Koelbel C., McCosh C., Mellor-Crummey J.: Telescoping languages: a system for automatic generation of domain languages. Proc. IEEE 93(2), 387\u2013408 (2005). doi: 10.1109\/JPROC.2004.840447","journal-title":"Proc. IEEE"},{"issue":"12","key":"139_CR16","doi-asserted-by":"crossref","first-page":"1803","DOI":"10.1006\/jpdc.2001.1724","volume":"61","author":"K. Kennedy","year":"2001","unstructured":"Kennedy, K., Broom, B., Cooper, K., Dongarra, J., Fowler, R., Gannon, D., Johnsson, L., Mellor-Crummey, J., Torczon, L.: Telescoping languages: a strategy for automatic generation of scientific problem-solving systems from annotated libraries. J. Parallel Distrib. Comput. 61(12), 1803\u2013 1826 (2001). doi:M 10.1006\/jpdc.2001.1724","journal-title":"J. Parallel Distrib. Comput."},{"issue":"9","key":"139_CR17","doi-asserted-by":"crossref","first-page":"89","DOI":"10.1145\/1562164.1562188","volume":"52","author":"M. Kulkarni","year":"2009","unstructured":"Kulkarni M., Pingali K., Walter B., Ramanarayanan G., Bala K., Chew L.P.: Optimistic parallelism requires abstractions. Commun. ACM 52(9), 89\u201397 (2009). doi: 10.1145\/1562164.1562188","journal-title":"Commun. ACM"},{"issue":"2","key":"139_CR18","doi-asserted-by":"crossref","first-page":"83","DOI":"10.1145\/360827.360844","volume":"17","author":"L. Lamport","year":"1974","unstructured":"Lamport L.: The parallel execution of do loops. Commun. ACM 17(2), 83\u201393 (1974). doi: 10.1145\/360827.360844","journal-title":"Commun. ACM"},{"key":"139_CR19","doi-asserted-by":"crossref","unstructured":"Liao, C., Quinlan, D.J., Vuduc, R., Panas, T.: Effective source-to-source outlining to support whole program empirical optimization. In: The 22th International Workshop on Languages and Compilers for Parallel Computing (LCPC). Newark, Delaware, USA (2009)","DOI":"10.1007\/978-3-642-13374-9_21"},{"key":"139_CR20","doi-asserted-by":"crossref","unstructured":"Liao, S.W., Diwan, A., Robert, P., Bosch, J., Ghuloum, A., Lam, M.S.: SUIF Explorer: an interactive and interprocedural parallelizer. In: PPoPP \u201999: Proceedings of the Seventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 37\u201348. ACM Press, New York, NY, USA (1999). doi: 10.1145\/301104.301108","DOI":"10.1145\/301104.301108"},{"key":"139_CR21","unstructured":"OpenMP Architecture Review Board: The OpenMP specification for parallel programming. http:\/\/www.openmp.org (2009)"},{"key":"139_CR22","doi-asserted-by":"crossref","unstructured":"Quinlan, D.: ROSE: Compiler support for object-oriented frameworks. In: In Proceedings of Conference on Parallel Compilers (CPC) (2000)","DOI":"10.1142\/S0129626400000214"},{"key":"139_CR23","doi-asserted-by":"crossref","unstructured":"Quinlan, D., Schordan, M., Yi, Q., de Supinski, B.: A C++ infrastructure for automatic introduction and translation of OpenMP directives. In: Proceedings of the Worshop on OpenMP Applications and Tools (WOMPAT), LNCS, vol. 2716, pp. 13\u201325. Springer-Verlag (2003)","DOI":"10.1007\/3-540-45009-2_2"},{"issue":"2\u20133","key":"139_CR24","doi-asserted-by":"crossref","first-page":"293","DOI":"10.1002\/cpe.775","volume":"16","author":"D.J. Quinlan","year":"2004","unstructured":"Quinlan D.J., Schordan M., Miller B., Kowarschik M.: Parallel object-oriented framework optimization: research articles. Concurr. Comput. Pract. Exper. 16(2\u20133), 293\u2013302 (2004). doi: 10.1002\/cpe.v16:2\/3","journal-title":"Concurr. Comput. Pract. Exper."},{"key":"139_CR25","doi-asserted-by":"crossref","unstructured":"Quinlan, D.J., Schordan, M., Yi, Q., de Supinski, B.R.: Semantic-driven parallelization of loops operating on user-defined containers. In: Workshop on Languages and Compilers for Parallel Computing, vol. 2958, pp. 524\u2013538 (2003)","DOI":"10.1007\/978-3-540-24644-2_34"},{"key":"139_CR26","unstructured":"Quinlan, D.J., et\u00a0al.: ROSE compiler project. http:\/\/www.rosecompiler.org\/"},{"key":"139_CR27","unstructured":"Quinlan, D.J., et\u00a0al.: Compass user manual. http:\/\/www.rosecompiler.org\/compass.pdf (2008)"},{"key":"139_CR28","unstructured":"Rasmussen, C., et\u00a0al.: Open Fortran Parser. http:\/\/fortran-parser.sourceforge.net\/"},{"key":"139_CR29","unstructured":"Robicheaux, J., Shah, S.: http:\/\/www.openmp.org\/samples\/jacobi.f (1998)"},{"key":"139_CR30","doi-asserted-by":"crossref","unstructured":"Schordan, M., Quinlan, D.: A source-to-source architecture for user-defined optimizations. In: JMLC\u201903: Joint Modular Languages Conference with EuroPar\u201903, Lecture Notes in Computer Science, vol. 2789, pp. 214\u2013223. Springer Verlag (2003)","DOI":"10.1007\/978-3-540-45213-3_27"},{"key":"139_CR31","doi-asserted-by":"crossref","unstructured":"Singler, J., Konsik, B.: The GNU libstdc++ parallel mode: software engineering considerations. In: IWMSE \u201908: Proceedings of the 1st International Workshop on Multicore Software Engineering, pp. 15\u201322. ACM, New York, NY, USA (2008). doi: 10.1145\/1370082.1370089","DOI":"10.1145\/1370082.1370089"},{"key":"139_CR32","unstructured":"The Motor Industry Software Reliability Association: MISRA C++: 2008 Guidelines for the Use of the C++ Language in Critical Systems (2008)"},{"issue":"12","key":"139_CR33","doi-asserted-by":"crossref","first-page":"31","DOI":"10.1145\/193209.193217","volume":"29","author":"R.P. Wilson","year":"1994","unstructured":"Wilson R.P., French R.S., Wilson C.S., Amarasinghe S.P., Anderson J.A.M., Tjiang S.W., Liao S.W., Tseng C.W., Hall M.W., Lam M.S., Hennessy J.L.: SUIF: An infrastructure for research on parallelizing and optimizing compilers. SIGPLAN Notices 29(12) 31\u201337 (1994)","journal-title":"SIGPLAN Notices"},{"key":"139_CR34","doi-asserted-by":"crossref","unstructured":"Yi, Q., Quinlan, D.: Applying loop optimizations to object-oriented abstractions through general classification of array semantics. In: The 17th International Workshop on Languages and Compilers for Parallel Computing (LCPC) (2004)","DOI":"10.1007\/11532378_19"},{"issue":"1","key":"139_CR35","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1016\/0167-8191(88)90002-6","volume":"6","author":"H.P. Zima","year":"1988","unstructured":"Zima H.P., Bast H., Gerndt M.: Superb: a tool for semi-automatic MIMD and SIMD parallelization. Proc. Parallel Comput. 6(1), 1\u201318 (1988)","journal-title":"Proc. Parallel Comput."}],"container-title":["International Journal of Parallel Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/www.springerlink.com\/index\/pdf\/10.1007\/s10766-010-0139-0","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,29]],"date-time":"2019-05-29T12:20:14Z","timestamp":1559132414000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10766-010-0139-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010,5,26]]},"references-count":35,"journal-issue":{"issue":"5-6","published-print":{"date-parts":[[2010,10]]}},"alternative-id":["139"],"URL":"https:\/\/doi.org\/10.1007\/s10766-010-0139-0","relation":{},"ISSN":["0885-7458","1573-7640"],"issn-type":[{"value":"0885-7458","type":"print"},{"value":"1573-7640","type":"electronic"}],"subject":[],"published":{"date-parts":[[2010,5,26]]}}}