{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,16]],"date-time":"2026-07-16T12:02:37Z","timestamp":1784203357030,"version":"3.55.0"},"reference-count":28,"publisher":"Springer Science and Business Media LLC","issue":"4","license":[{"start":{"date-parts":[[2018,1,12]],"date-time":"2018-01-12T00:00:00Z","timestamp":1515715200000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/100010661","name":"Horizon 2020 Framework Programme","doi-asserted-by":"publisher","award":["671603 (AllScale Project)"],"award-info":[{"award-number":["671603 (AllScale Project)"]}],"id":[{"id":"10.13039\/100010661","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["J Supercomput"],"published-print":{"date-parts":[[2018,4]]},"DOI":"10.1007\/s11227-018-2238-4","type":"journal-article","created":{"date-parts":[[2018,1,12]],"date-time":"2018-01-12T06:03:50Z","timestamp":1515737030000},"page":"1422-1434","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":118,"title":["A taxonomy of task-based parallel programming technologies for high-performance computing"],"prefix":"10.1007","volume":"74","author":[{"given":"Peter","family":"Thoman","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Kiril","family":"Dichev","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Thomas","family":"Heller","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2414-700X","authenticated-orcid":false,"given":"Roman","family":"Iakymchuk","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Xavier","family":"Aguilar","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Khalid","family":"Hasanov","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Philipp","family":"Gschwandtner","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Pierre","family":"Lemarinier","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Stefano","family":"Markidis","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Herbert","family":"Jordan","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Thomas","family":"Fahringer","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Kostas","family":"Katrinis","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Erwin","family":"Laure","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Dimitrios S.","family":"Nikolopoulos","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2018,1,12]]},"reference":[{"key":"2238_CR1","doi-asserted-by":"crossref","unstructured":"Augonnet C et\u00a0al (2009) Automatic calibration of performance models on heterogeneous multicore architectures. In: Proceedings of Euro-Par 2009, pp 56\u201365. Springer","DOI":"10.1007\/978-3-642-14122-5_9"},{"issue":"2","key":"2238_CR2","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1002\/cpe.1631","volume":"23","author":"C Augonnet","year":"2011","unstructured":"Augonnet C et al (2011) StarPU: a unified platform for task scheduling on heterogeneous multicore architectures. Concur Comput Pract Exp 23(2):187\u2013198","journal-title":"Concur Comput Pract Exp"},{"key":"2238_CR3","unstructured":"Bauer ME (2014) Legion: programming distributed heterogeneous architectures with logical regions. Ph.D. thesis, Stanford University"},{"issue":"5","key":"2238_CR4","doi-asserted-by":"publisher","first-page":"720","DOI":"10.1145\/324133.324234","volume":"46","author":"R Blumofe","year":"1999","unstructured":"Blumofe R, Leiserson C (1999) Scheduling multithreaded computations by work stealing. J ACM (JACM) 46(5):720\u2013748","journal-title":"J ACM (JACM)"},{"issue":"1","key":"2238_CR5","doi-asserted-by":"publisher","first-page":"55","DOI":"10.1006\/jpdc.1996.0107","volume":"37","author":"RD Blumofe","year":"1996","unstructured":"Blumofe RD et al (1996) Cilk: an efficient multithreaded runtime system. J Parallel Distrib Comput 37(1):55\u201369","journal-title":"J Parallel Distrib Comput"},{"issue":"6","key":"2238_CR6","doi-asserted-by":"publisher","first-page":"36","DOI":"10.1109\/MCSE.2013.98","volume":"15","author":"G Bosilca","year":"2013","unstructured":"Bosilca G et al (2013) Parsec: exploiting heterogeneity to enhance scalability. Comput Sci Eng 15(6):36\u201345. https:\/\/doi.org\/10.1109\/MCSE.2013.98","journal-title":"Comput Sci Eng"},{"issue":"3","key":"2238_CR7","first-page":"291","volume":"21","author":"BL Chamberlain","year":"2007","unstructured":"Chamberlain BL et al (2007) Parallel programmability and the chapel language. Int J HPC Appl 21(3):291\u2013312","journal-title":"Int J HPC Appl"},{"key":"2238_CR8","doi-asserted-by":"publisher","unstructured":"Charles P et al (2005) X10: an object-oriented approach to non-uniform cluster computing. In: Proceedings of OOPSLA05, pp 519\u2013538. ACM. https:\/\/doi.org\/10.1145\/1094811.1094852","DOI":"10.1145\/1094811.1094852"},{"key":"2238_CR9","doi-asserted-by":"publisher","unstructured":"Cunningham D et al (2014) Resilient x10: efficient failure-aware programming. In: Proceedings of PPoPP14, pp 67\u201380. ACM. https:\/\/doi.org\/10.1145\/2555243.2555248","DOI":"10.1145\/2555243.2555248"},{"issue":"1","key":"2238_CR10","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1109\/99.660313","volume":"5","author":"L Dagum","year":"1998","unstructured":"Dagum L, Menon R (1998) Openmp: an industry standard api for shared-memory programming. Comput Sci Eng 5(1):46\u201355","journal-title":"Comput Sci Eng"},{"issue":"02","key":"2238_CR11","doi-asserted-by":"publisher","first-page":"173","DOI":"10.1142\/S0129626411000151","volume":"21","author":"A Duran","year":"2011","unstructured":"Duran A et al (2011) Ompss: a proposal for programming heterogeneous multi-core architectures. Parallel Process Lett 21(02):173\u2013193","journal-title":"Parallel Process Lett"},{"key":"2238_CR12","unstructured":"General Acyclic Graphs of Tasks in TBB. https:\/\/software.intel.com\/en-us\/node\/506110 . Accessed 16 Nov 2017"},{"key":"2238_CR13","unstructured":"Hoemmen M, Heroux M (2011) Fault-tolerant iterative methods via selective reliability. In: Proceedings of SC11, p\u00a09. ACM"},{"key":"2238_CR14","doi-asserted-by":"crossref","unstructured":"Huck K et al (2013) An early prototype of an autonomic performance environment for exascale. In: Proceedings of ROSS13, p\u00a08. ACM","DOI":"10.1145\/2491661.2481434"},{"issue":"3","key":"2238_CR15","first-page":"49","volume":"2","author":"K Huck","year":"2015","unstructured":"Huck K et al (2015) An autonomic performance environment for exascale. Supercomput Front Innov 2(3):49\u201366","journal-title":"Supercomput Front Innov"},{"key":"2238_CR16","doi-asserted-by":"crossref","unstructured":"Hukerikar S et al (2014) Opportunistic application-level fault detection through adaptive redundant multithreading. In: Proceedings of HPCS14, pp 243\u2013250. IEEE","DOI":"10.1109\/HPCSim.2014.6903692"},{"key":"2238_CR17","doi-asserted-by":"crossref","unstructured":"Kaiser H et al (2014) Hpx: a task based programming model in a global address space. In: Proceedings of PGAS14, pp 6:1\u20136:11. ACM","DOI":"10.1145\/2676870.2676883"},{"key":"2238_CR18","doi-asserted-by":"publisher","unstructured":"Kale LV, Krishnan S (1993) Charm++: a portable concurrent object oriented system based on C++. In: Proceedings of OOSPLA93, pp 91\u2013108. ACM. https:\/\/doi.org\/10.1145\/165854.165874","DOI":"10.1145\/165854.165874"},{"key":"2238_CR19","doi-asserted-by":"crossref","unstructured":"Kasim H et al (2008) Survey on parallel programming model. In: Proceedings of NPC08, pp 266\u2013275. Springer","DOI":"10.1007\/978-3-540-88140-7_24"},{"key":"2238_CR20","unstructured":"Meyer JC et al Implementation of an energy-aware OmpSs task scheduling policy. http:\/\/www.prace-ri.eu\/IMG\/pdf\/wp88.pdf . Accessed 2 May 2017"},{"key":"2238_CR21","doi-asserted-by":"publisher","unstructured":"Paudel J et al (2013) On the merits of distributed work-stealing on selective locality-aware tasks. In: Proceedings of ICPP13, pp 100\u2013109. IEEE. https:\/\/doi.org\/10.1109\/ICPP.2013.19","DOI":"10.1109\/ICPP.2013.19"},{"key":"2238_CR22","doi-asserted-by":"crossref","unstructured":"Planas J et al (2013) Self-adaptive OMPSS tasks in heterogeneous environments. In: Proceedings of IPDPS13, pp 138\u2013149. IEEE","DOI":"10.1109\/IPDPS.2013.53"},{"issue":"2","key":"2238_CR23","doi-asserted-by":"publisher","first-page":"66","DOI":"10.1109\/MCSE.2013.21","volume":"15","author":"AD Robison","year":"2013","unstructured":"Robison AD (2013) Composable parallel patterns with intel cilk plus. Comput Sci Eng 15(2):66\u201371. https:\/\/doi.org\/10.1109\/MCSE.2013.21","journal-title":"Comput Sci Eng"},{"key":"2238_CR24","first-page":"1","volume":"1","author":"S Seo","year":"2017","unstructured":"Seo S et al (2017) Argobots: a lightweight low-level threading and tasking framework. IEEE Trans Parallel Distrib Syst 1:1","journal-title":"IEEE Trans Parallel Distrib Syst"},{"key":"2238_CR25","doi-asserted-by":"crossref","unstructured":"Simmendinger C et\u00a0al (2015) The GASPI API: a failure tolerant PGAS API for asynchronous dataflow on heterogeneous architectures. In: Sustained Simulation Performance, pp 17\u201332. Springer","DOI":"10.1007\/978-3-319-10626-7_2"},{"key":"2238_CR26","doi-asserted-by":"crossref","unstructured":"Subasi O et al (2015) Nanocheckpoints: a task-based asynchronous dataflow framework for efficient and scalable checkpoint\/restart. In: Proceedings of PDP15, pp 99\u2013102. IEEE","DOI":"10.1109\/PDP.2015.17"},{"key":"2238_CR27","doi-asserted-by":"publisher","unstructured":"Wheeler KB et al (2008) Qthreads: an API for programming with millions of lightweight threads. In: 2008 IEEE International Symposium on Parallel and Distributed Processing, pp 1\u20138. https:\/\/doi.org\/10.1109\/IPDPS.2008.4536359","DOI":"10.1109\/IPDPS.2008.4536359"},{"key":"2238_CR28","doi-asserted-by":"publisher","unstructured":"Willhalm T, Popovici N (2008) Putting intel threading building blocks to work. In: Proceedings of IWMSE08, pp 3\u20134. ACM. https:\/\/doi.org\/10.1145\/1370082.1370085","DOI":"10.1145\/1370082.1370085"}],"container-title":["The Journal of Supercomputing"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s11227-018-2238-4\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11227-018-2238-4.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s11227-018-2238-4.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,10,9]],"date-time":"2019-10-09T05:04:12Z","timestamp":1570597452000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s11227-018-2238-4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,1,12]]},"references-count":28,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2018,4]]}},"alternative-id":["2238"],"URL":"https:\/\/doi.org\/10.1007\/s11227-018-2238-4","relation":{},"ISSN":["0920-8542","1573-0484"],"issn-type":[{"value":"0920-8542","type":"print"},{"value":"1573-0484","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,1,12]]},"assertion":[{"value":"12 January 2018","order":1,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}