{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,14]],"date-time":"2025-06-14T04:08:03Z","timestamp":1749874083911,"version":"3.41.0"},"reference-count":54,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2016,12,21]],"date-time":"2016-12-21T00:00:00Z","timestamp":1482278400000},"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":[[2017,12]]},"DOI":"10.1007\/s10766-016-0479-5","type":"journal-article","created":{"date-parts":[[2016,12,21]],"date-time":"2016-12-21T10:16:55Z","timestamp":1482315415000},"page":"1592-1624","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Towards Parallelism Extraction for Heterogeneous Multicore Android Devices"],"prefix":"10.1007","volume":"45","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-7291-1407","authenticated-orcid":false,"given":"Miguel Angel","family":"Aguilar","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Juan Fernando","family":"Eusse","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Projjol","family":"Ray","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Rainer","family":"Leupers","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gerd","family":"Ascheid","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Weihua","family":"Sheng","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Prashant","family":"Sharma","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2016,12,21]]},"reference":[{"key":"479_CR1","doi-asserted-by":"crossref","unstructured":"Acosta, A., Almeida, F.: Euro-Par 2013: parallel processing workshops. In: Towards a Unified Heterogeneous Development Model in AndroidTM, Chap., pp. 238\u2013248. Springer, Berlin (2014)","DOI":"10.1007\/978-3-642-54420-0_24"},{"key":"479_CR2","doi-asserted-by":"crossref","unstructured":"Aguilar, M.A., Eusse, J.F., Ray, P., Leupers, R., Ascheid, G., Sheng, W., Sharma, P.: Parallelism extraction in embedded software for Android devices. In: SAMOS XV, pp. 9\u201317 (2015)","DOI":"10.1109\/SAMOS.2015.7363654"},{"key":"479_CR3","doi-asserted-by":"crossref","unstructured":"Aguilar, M.A., Leupers, R.: Unified identification of multiple forms of parallelism in embedded applications. In: 2015 International Conference on Parallel Architecture and Compilation (PACT), pp. 482\u2013483 (2015)","DOI":"10.1109\/PACT.2015.53"},{"key":"479_CR4","doi-asserted-by":"crossref","unstructured":"Aguilar, M.A., Leupers, R., Ascheid, G., Kavvadias, N.: A toolflow for parallelization of embedded software in multicore DSP platforms. In: Proceedings of the 18th International Workshop on Software and Compilers for Embedded Systems. SCOPES\u201915, pp. 76\u201379. ACM, New York (2015)","DOI":"10.1145\/2764967.2771936"},{"key":"479_CR5","doi-asserted-by":"crossref","unstructured":"Aguilar, M.A., Leupers, R., Ascheid, G., Murillo, L.G.: Automatic parallelization and accelerator offloading for embedded applications on heterogeneous MPSoCs. In: Proceedings of the 53rd Annual Design Automation Conference, DAC\u201916, pp. 49:1\u201349:6. ACM, New York (2016)","DOI":"10.1145\/2897937.2897991"},{"key":"479_CR6","doi-asserted-by":"crossref","unstructured":"Amdahl, G.M.: Validity of the single processor approach to achieving large scale computing capabilities. In: Proceedings of the April 18\u201320. 1967, Spring Joint Computer Conference, AFIPS\u201967 (Spring), pp. 483\u2013485. ACM, New York (1967)","DOI":"10.1145\/1465482.1465560"},{"key":"479_CR7","unstructured":"ASUS: Nexus 7 (2013). (online) http:\/\/www.asus.com\/Tablets_Mobile\/Nexus_7_2013\/ . Accessed 02\/2016"},{"key":"479_CR8","unstructured":"Boissinot, B.: Towards an SSA based compiler back-end: some interesting properties of SSA and its extensions. Ph.D. thesis (2010)"},{"key":"479_CR9","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-319-00675-8","volume-title":"Programming Heterogeneous MPSoCs: Tool Flows to Close the Software Productivity Gap","author":"J Castrillon","year":"2014","unstructured":"Castrillon, J., Leupers, R.: Programming Heterogeneous MPSoCs: Tool Flows to Close the Software Productivity Gap. Springer, Berlin (2014)"},{"key":"479_CR10","unstructured":"Castrillon, J., Leupers, R., Ascheid, G.: MAPS: mapping concurrent dataflow applications to heterogeneous MPSoCs. IEEE Trans. Ind. Inform. (99), 19 (2011)"},{"key":"479_CR11","doi-asserted-by":"crossref","unstructured":"Castrillon, J., Tretter, A., Leupers, R., Ascheid, G.: Communication-aware mapping of KPN applications onto heterogeneous MPSoCs. In: Proceedings of the 49th Annual Design Automation Conference, pp. 1266\u20131271. ACM, New York (2012)","DOI":"10.1145\/2228360.2228597"},{"key":"479_CR12","unstructured":"Chandrasekaran, S., Chapman, B.: A portable OpenMP runtime library based on MCAPI\/MRAPI. (online) http:\/\/www.embedded.com . Accessed 03\/2016"},{"key":"479_CR13","doi-asserted-by":"crossref","unstructured":"Che, S., Boyer, M., Meng, J., Tarjan, D., Sheaffer, J.W., Lee, S.H., Skadron, K.: Rodinia: a benchmark suite for heterogeneous computing. In: IEEE international symposium on workload characterization, IISWC 2009. pp. 44\u201354 (2009)","DOI":"10.1109\/IISWC.2009.5306797"},{"key":"479_CR14","unstructured":"Cordes, D.A.: Automatic parallelization for embedded multi-core systems using high-level cost models. Ph.D. thesis, TU Dortmund University (2013)"},{"key":"479_CR15","unstructured":"CriticalBlue: Prism. (online) http:\/\/www.criticalblue.com\/ . Accessed 3\/2016"},{"key":"479_CR16","unstructured":"Eclipse. (online) www.eclipse.org . Accessed 03\/2016"},{"key":"479_CR17","doi-asserted-by":"crossref","unstructured":"Eusse, J.F., Williams, C., Leupers, R.: CoEx: A novel profiling-based algorithm\/architecture co-exploration for ASIP design. ACM Trans. Reconfig. Technol. Syst. 8, 17:1\u201317:16 (2014)","DOI":"10.1145\/2629563"},{"key":"479_CR18","doi-asserted-by":"crossref","unstructured":"Faxen, K.F., Popov, K., Albertsson, L., Janson, S.: Embla\u2014data dependence profiling for parallel programming. In: Proceedings of Complex, Intelligent and Software Intensive Systems, pp. 780\u2013785 (2008)","DOI":"10.1109\/CISIS.2008.52"},{"key":"479_CR19","unstructured":"Gilles, K.: The semantics of a simple language for parallel programming. In: Rosenfeld, J.L. (ed.) IFIP Congress 74, pp. 471\u2013475. North Holland, Amsterdam (1974)"},{"key":"479_CR20","unstructured":"Google: Android Auto. (online) https:\/\/www.android.com\/auto\/ . Accessed 02\/2016"},{"key":"479_CR21","unstructured":"Google: Android: Canvas and Drawables. (online) http:\/\/developer.android.com\/guide\/topics\/graphics\/2d-graphics.html . Accessed 03\/2016"},{"key":"479_CR22","unstructured":"Google: Android Studio. (online) http:\/\/developer.android.com\/tools\/studio\/index.html . Accessed 03\/2016"},{"key":"479_CR23","unstructured":"Google: ART and Dalvik. (online) https:\/\/source.android.com\/devices\/tech\/dalvik\/index.html . Accessed 02\/2016"},{"key":"479_CR24","unstructured":"Google: Java Native Interface. (online) http:\/\/developer.android.com\/training\/articles\/perf-jni.html . Accessed 02\/2016"},{"key":"479_CR25","unstructured":"Google: Native Development Kit. (online) http:\/\/developer.android.com\/ndk\/guides\/concepts.html . Accessed 02\/2016"},{"key":"479_CR26","doi-asserted-by":"crossref","unstructured":"Gordon, M.I., Thies, W., Amarasinghe, S.: Exploiting coarse-grained task, data, and pipeline parallelism in stream programs. In: International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 151\u2013162 (2006)","DOI":"10.1145\/1168857.1168877"},{"key":"479_CR27","unstructured":"IDC: Smartphone os market share, 2015 q2. (online) http:\/\/www.idc.com\/prodserv\/smartphone-os-market-share.jsp . Accessed 02\/2016"},{"key":"479_CR28","doi-asserted-by":"crossref","unstructured":"Islam, M.: On the limitations of compilers to exploit thread-level parallelism in embedded applications. In: 6th IEEE\/ACIS International Conference on Computer and Information Science, 2007. ICIS 2007, pp. 60\u201366 (2007)","DOI":"10.1109\/ICIS.2007.142"},{"key":"479_CR29","unstructured":"Johnson, R.C.: Efficient program analysis using dependence flow graphs. Ph.D. thesis, Cornell University (1994)"},{"key":"479_CR30","doi-asserted-by":"crossref","unstructured":"Johnson, R.E.: Software development is program transformation. In: Proceedings of the FSE\/SDP Workshop on Future of Software Engineering Research. FoSER\u201910, pp. 177\u2013180. ACM, New York (2010)","DOI":"10.1145\/1882362.1882400"},{"issue":"4\u20135","key":"479_CR31","doi-asserted-by":"crossref","first-page":"407","DOI":"10.1016\/S0167-739X(97)00041-1","volume":"13","author":"I Karkowski","year":"1998","unstructured":"Karkowski, I., Corporaal, H.: Overcoming the limitations of the traditional loop parallelization. FGCS 13(4\u20135), 407\u2013416 (1998)","journal-title":"FGCS"},{"key":"479_CR32","doi-asserted-by":"crossref","unstructured":"Kejariwal, A., Veidenbaum, A.V., Nicolau, A., Girkarmark, M., Tian, X., Saito, H.: Challenges in exploitation of loop parallelism in embedded applications. In: Proceedings of the 4th International Conference on Hardware\/Software Codesign and System Synthesis. CODES+ISSS\u201906, pp. 173\u2013180. ACM, New York (2006)","DOI":"10.1145\/1176254.1176298"},{"key":"479_CR33","volume-title":"Optimizing Compilers for Modern Architectures: A Dependence-Based Approach","author":"K Kennedy","year":"2002","unstructured":"Kennedy, K., Allen, J.R.: Optimizing Compilers for Modern Architectures: A Dependence-Based Approach. Morgan Kaufmann, San Francisco (2002)"},{"key":"479_CR34","doi-asserted-by":"crossref","unstructured":"Ketterlin, A., Clauss, P.: Profiling data-dependence to assist parallelization: Framework, scope, and optimization. In: Proceedings of MICRO 45, pp. 437\u2013448. IEEE Computer Society, Washington (2012)","DOI":"10.1109\/MICRO.2012.47"},{"key":"479_CR35","unstructured":"Keutzer, K., Mattson, T.: Our pattern language (OPL). A pattern language for parallel programming. (online) http:\/\/parlab.eecs.berkeley.edu\/wiki\/patterns\/patterns . Accessed 06\/2016"},{"key":"479_CR36","unstructured":"Khronos: The OpenCL specification. version 1.1. (online) https:\/\/www.khronos.org\/registry\/cl\/specs\/opencl-1.1.pdf . Accessed 03\/2016"},{"key":"479_CR37","doi-asserted-by":"crossref","unstructured":"Kienhuis, B., Rijpkema, E., Deprettere, E.: Compaan: Deriving process networks from Matlab for embedded signal processing architectures. In: Proceedings of CODES 2000, pp. 13\u201317","DOI":"10.1145\/334012.334015"},{"key":"479_CR38","unstructured":"Kim, M.: Dynamic program analysis algorithms to assist parallelization. Ph.D. thesis, Atlanta. AAI0828881 (2012)"},{"key":"479_CR39","doi-asserted-by":"crossref","unstructured":"Kock, E.A.D., Essink, G., Smits, W.J.M., Wolf, P.V.D.: YAPI: application modeling for signal processing systems. In: Proceedings of 37th DAC, pp. 402\u2013405 (2000)","DOI":"10.1145\/337292.337511"},{"key":"479_CR40","volume-title":"Structured Parallel Programming: Patterns for Efficient Computation","author":"M McCool","year":"2012","unstructured":"McCool, M., Reinders, J., Robison, A.: Structured Parallel Programming: Patterns for Efficient Computation, 1st edn. Morgan Kaufmann, San Francisco (2012)","edition":"1"},{"key":"479_CR41","doi-asserted-by":"crossref","unstructured":"Membarth, R., Reiche, O., Hannig, F., Teich, J.: Code generation for embedded heterogeneous architectures on Android. In: Proceedings of DATE\u201914, pp. 86:1\u201386:6","DOI":"10.7873\/DATE.2014.099"},{"key":"479_CR42","unstructured":"Multicore Association: Software-hardware interface for multi-many-core (SHIM) specification v1.00. (online) http:\/\/www.multicore-association.org . Accessed 06\/2016"},{"key":"479_CR43","unstructured":"OpenMP Review Board: Openmp application program interface. version 3.1. (online) www.openmp.org\/mp-documents\/OpenMP3.1.pdf . Accessed 08\/2016"},{"key":"479_CR44","unstructured":"Qualcomm: Snapdragon. (online) https:\/\/www.qualcomm.com\/products\/snapdragon . Accessed 02\/2016"},{"key":"479_CR45","unstructured":"Samsung: Exynos. (online) https:\/\/www.samsung.com\/exynos . Accessed 02\/2016"},{"issue":"2","key":"479_CR46","doi-asserted-by":"crossref","first-page":"51","DOI":"10.1016\/j.parco.2013.11.007","volume":"40","author":"W Sheng","year":"2014","unstructured":"Sheng, W., Sch\u00fcrmans, S., Odendahl, M., Bertsch, M., Volevach, V., Leupers, R., Ascheid, G.: A compiler infrastructure for embedded heterogeneous MPSoCs. Parallel Comput. 40(2), 51\u201368 (2014)","journal-title":"Parallel Comput."},{"key":"479_CR47","unstructured":"Silexica: (online) http:\/\/www.silexica.com . Accessed 4\/2016"},{"key":"479_CR48","unstructured":"Stotzer, E.: Towards using OpenMP in embedded systems. OpenMPCon: Developers Conference (2015)"},{"key":"479_CR49","doi-asserted-by":"crossref","unstructured":"Stulova, A., Leupers, R., Ascheid, G.: Throughput driven transformations of synchronous data flows for mapping to heterogeneous MPSoCs. In: Proceedings of SAMOS XII, pp. 144\u2013151 (2012)","DOI":"10.1109\/SAMOS.2012.6404168"},{"issue":"4s","key":"479_CR50","doi-asserted-by":"publisher","first-page":"134:1","DOI":"10.1145\/2584665","volume":"13","author":"AK Sujeeth","year":"2014","unstructured":"Sujeeth, A.K., Brown, K.J., Lee, H., Rompf, T., Chafi, H., Odersky, M., Olukotun, K.: Delite: a compiler architecture for performance-oriented embedded domain-specific languages. ACM Trans. Embed. Comput. Syst. 13(4s), 134:1\u2013134:25 (2014). doi: 10.1145\/2584665","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"479_CR51","doi-asserted-by":"crossref","unstructured":"Thies, W., Chandrasekhar, V., Amarasinghe, S.: A practical approach to exploiting coarse-grained pipeline parallelism in C programs. In: Proceedings of MICRO 40, pp. 356\u2013369. IEEE Computer Society (2007)","DOI":"10.1109\/MICRO.2007.38"},{"key":"479_CR52","doi-asserted-by":"crossref","unstructured":"Thies, W., Karczmarek, M., Amarasinghe, S.P.: StreamIt: a language for streaming applications. In: Proceedings of CC\u201902, pp. 179\u2013196. Springer, Berlin (2002)","DOI":"10.1007\/3-540-45937-5_14"},{"key":"479_CR53","unstructured":"Tournavitis, G.: Profile-driven parallelization of sequential programs. Ph.D. thesis, University of Edinburgh (2011)"},{"issue":"1","key":"479_CR54","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1155\/2007\/75947","volume":"2007","author":"S Verdoolaege","year":"2007","unstructured":"Verdoolaege, S., Nikolov, H., Stefanov, T.: Pn: A tool for improved derivation of process networks. EURASIP J. Embedded Syst. 2007(1), 19\u201319 (2007). doi: 10.1155\/2007\/75947","journal-title":"EURASIP J. Embedded Syst."}],"container-title":["International Journal of Parallel Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10766-016-0479-5\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-016-0479-5.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10766-016-0479-5.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,13]],"date-time":"2025-06-13T20:05:29Z","timestamp":1749845129000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10766-016-0479-5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,12,21]]},"references-count":54,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2017,12]]}},"alternative-id":["479"],"URL":"https:\/\/doi.org\/10.1007\/s10766-016-0479-5","relation":{},"ISSN":["0885-7458","1573-7640"],"issn-type":[{"type":"print","value":"0885-7458"},{"type":"electronic","value":"1573-7640"}],"subject":[],"published":{"date-parts":[[2016,12,21]]}}}