{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,12]],"date-time":"2025-06-12T21:40:02Z","timestamp":1749764402754,"version":"3.41.0"},"publisher-location":"Cham","reference-count":12,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319495828"},{"type":"electronic","value":"9783319495835"}],"license":[{"start":{"date-parts":[[2016,1,1]],"date-time":"2016-01-01T00:00:00Z","timestamp":1451606400000},"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":[[2016]]},"DOI":"10.1007\/978-3-319-49583-5_42","type":"book-chapter","created":{"date-parts":[[2016,11,24]],"date-time":"2016-11-24T08:11:09Z","timestamp":1479975069000},"page":"537-545","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["Optimizing GPU Code for CPU Execution Using OpenCL and Vectorization: A Case Study on Image Coding"],"prefix":"10.1007","author":[{"given":"Pedro M. M.","family":"Pereira","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Patricio","family":"Domingues","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nuno M. M.","family":"Rodrigues","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gabriel","family":"Falcao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Sergio M. M.","family":"de Faria","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2016,11,25]]},"reference":[{"key":"42_CR1","doi-asserted-by":"crossref","unstructured":"Che, S., Sheaffer, J.W., Skadron, K.: Dymaxion: optimizing memory access patterns for heterogeneous systems. In: ICHPCNSA, p. 13. ACM (2011)","DOI":"10.1145\/2063384.2063401"},{"key":"42_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"560","DOI":"10.1007\/978-3-319-09147-1_41","volume-title":"Computational Science and Its Applications \u2013 ICCSA 2014","author":"P Domingues","year":"2014","unstructured":"Domingues, P., Silva, J., Ribeiro, T., Rodrigues, N.M.M., Carvalho, M.B., Faria, S.M.M.: Optimizing memory usage and accesses on CUDA-based recurrent pattern matching image compression. In: Murgante, B., Misra, S., Rocha, A.M.A.C., Torre, C., Rocha, J.G., Falc\u00e3o, M.I., Taniar, D., Apduhan, B.O., Gervasi, O. (eds.) ICCSA 2014. LNCS, vol. 8583, pp. 560\u2013575. Springer, Heidelberg (2014). doi: 10.1007\/978-3-319-09147-1_41"},{"key":"42_CR3","doi-asserted-by":"crossref","unstructured":"Dong, H., Ghosh, D., Zafar, F., Zhou, S.: Cross-platform OpenCL code and performance portability investigated with a climate and weather physics model. In: 41st International Conference on ICPPW, pp. 126\u2013134. IEEE (2012)","DOI":"10.1109\/ICPPW.2012.19"},{"issue":"7","key":"42_CR4","doi-asserted-by":"publisher","first-page":"2574","DOI":"10.1016\/j.jpdc.2014.02.005","volume":"74","author":"WM Hwu","year":"2014","unstructured":"Hwu, W.M.: What is ahead for parallel computing. J. Parallel Distrib. Comput. 74(7), 2574\u20132581 (2014)","journal-title":"J. Parallel Distrib. Comput."},{"key":"42_CR5","unstructured":"Intel: Writing Optimal OpenCL Code with Intel OpenCL SDK (2011)"},{"issue":"1","key":"42_CR6","doi-asserted-by":"publisher","first-page":"105","DOI":"10.1109\/TPDS.2010.107","volume":"22","author":"B Jang","year":"2011","unstructured":"Jang, B., Schaa, D., Mistry, P., Kaeli, D.: Exploiting memory access patterns to improve memory performance in data-parallel architectures. IEEE Trans. Parallel Distrib. Syst. 22(1), 105\u2013118 (2011)","journal-title":"IEEE Trans. Parallel Distrib. Syst."},{"key":"42_CR7","doi-asserted-by":"crossref","unstructured":"Lee, J.H., Patel, K., Nigania, N., Kim, H., Kim, H.: OpenCL performance evaluation on modern multi core CPUs. In: IEEE 27th International Symposium on IPDPS, pp. 1177\u20131185. IEEE (2013)","DOI":"10.1109\/IPDPSW.2013.141"},{"key":"42_CR8","doi-asserted-by":"publisher","first-page":"451","DOI":"10.1145\/1816038.1816021","volume":"38","author":"VW Lee","year":"2010","unstructured":"Lee, V.W., Kim, C., Chhugani, J., Deisher, M., Kim, D., Nguyen, A.D., Satish, N., Smelyanskiy, M., Chennupaty, S., Hammarlund, P., Singhal, R., Dubey, P.: Debunking the 100X GPU vs. CPU myth. SIGARCH Comput. Archit. News 38, 451\u2013460 (2010)","journal-title":"SIGARCH Comput. Archit. News"},{"key":"42_CR9","doi-asserted-by":"crossref","unstructured":"Mitra, G., Johnston, B., Rendell, A.P., McCreath, E., Zhou, J.: Use of SIMD vector operations to accelerate application code performance on low-powered ARM and Intel platforms. In: IEEE 27th International Symposium on IPDPS, pp. 1107\u20131116. IEEE (2013)","DOI":"10.1109\/IPDPSW.2013.207"},{"issue":"9","key":"42_CR10","doi-asserted-by":"publisher","first-page":"1640","DOI":"10.1109\/TIP.2008.2001392","volume":"17","author":"NM Rodrigues","year":"2008","unstructured":"Rodrigues, N.M., da Silva, E.A., de Carvalho, M.B., de Faria, S.M., da Silva, V.M.M.: On dictionary adaptation for recurrent pattern image coding. IEEE Trans. Image Proces. 17(9), 1640\u20131653 (2008)","journal-title":"IEEE Trans. Image Proces."},{"key":"42_CR11","doi-asserted-by":"crossref","unstructured":"Shen, J., Fang, J., Sips, H., Varbanescu, A.L.: Performance traps in OpenCL for CPUs. In: PDP2013, pp. 38\u201345. IEEE (2013)","DOI":"10.1109\/PDP.2013.16"},{"issue":"3","key":"42_CR12","doi-asserted-by":"publisher","first-page":"66","DOI":"10.1109\/MCSE.2010.69","volume":"12","author":"JE Stone","year":"2010","unstructured":"Stone, J.E., Gohara, D., Shi, G.: OpenCL: a parallel programming standard for heterogeneous computing systems. Comput. Sci. Eng. 12(3), 66\u201373 (2010)","journal-title":"Comput. Sci. Eng."}],"container-title":["Lecture Notes in Computer Science","Algorithms and Architectures for Parallel Processing"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-49583-5_42","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,12]],"date-time":"2025-06-12T21:01:46Z","timestamp":1749762106000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-49583-5_42"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016]]},"ISBN":["9783319495828","9783319495835"],"references-count":12,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-49583-5_42","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":"25 November 2016","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICA3PP","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Algorithms and Architectures for Parallel Processing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Granada","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Spain","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":"14 December 2016","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"16 December 2016","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"15","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"ica3pp2016","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}