{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,9,3]],"date-time":"2023-09-03T06:11:13Z","timestamp":1693721473230},"reference-count":22,"publisher":"Wiley","issue":"17","license":[{"start":{"date-parts":[[2015,5,20]],"date-time":"2015-05-20T00:00:00Z","timestamp":1432080000000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Concurrency and Computation"],"published-print":{"date-parts":[[2015,12,10]]},"abstract":"Summary<\/jats:title>For determining distances (fetch lengths) from points to polygons in a two\u2010dimensional Euclidean plane, cell\u2010based algorithms provide a simple and effective solution. They divide the input area into a grid of cells<\/jats:italic> that cover the area. The objects are stored into the appropriate cells, and the resulting structure is used for solving the problem. When the input objects are distributed unevenly or the cell size is small, most of the cells may be empty. The representation is then called sparse<\/jats:italic>. In the method proposed in this work, each cell contains information about its distance to the nonempty cells. It is then possible to skip over several empty cells at a time without memory accesses. A cell\u2010based fetch length algorithm is implemented on a graphics processing unit (GPU). Because control flow divergence reduces its performance, several methods to reduce the divergence are studied. While many of the explicit attempts turn out to be unsuccessful, sorting of the input data and sparse traversal are observed to greatly improve performance: compared with the initial GPU implementation, up to 45\u2010fold speedup is reached. The speed improvement is greatest when the map is very sparse and the points are given in a random order. Copyright \u00a9 2015\u2009John Wiley & Sons, Ltd.<\/jats:p>","DOI":"10.1002\/cpe.3529","type":"journal-article","created":{"date-parts":[[2015,5,20]],"date-time":"2015-05-20T08:17:49Z","timestamp":1432109869000},"page":"5114-5133","source":"Crossref","is-referenced-by-count":0,"title":["Performance tuning and sparse traversal technique for a cell\u2010based fetch length algorithm on a GPU"],"prefix":"10.1002","volume":"27","author":[{"given":"Mika","family":"Murtoj\u00e4rvi","sequence":"first","affiliation":[{"name":"Vaadin Ltd Turku FI\u201020540 Finland"}]},{"given":"Olli S.","family":"Nevalainen","sequence":"additional","affiliation":[{"name":"Department of Information Technology and Turku Centre for Computer Science (TUCS) University of Turku Turku FI\u201020014 Finland"}]},{"given":"Ville","family":"Lepp\u00e4nen","sequence":"additional","affiliation":[{"name":"Department of Information Technology and Turku Centre for Computer Science (TUCS) University of Turku Turku FI\u201020014 Finland"}]}],"member":"311","published-online":{"date-parts":[[2015,5,20]]},"reference":[{"key":"e_1_2_9_2_1","unstructured":"AndrewsDS SnoeyinkJ BoritzJ ChanT DenhamG HarrisonJ ZhuC.Further comparison of algorithms for geometric intersection problems.Proceedings of the Sixth International Symposium on Spatial Data Handling Taylor & Francis: London; Bristol Pa 1994;709\u2013724."},{"key":"e_1_2_9_3_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0098-3004(01)00037-1"},{"key":"e_1_2_9_4_1","doi-asserted-by":"publisher","DOI":"10.1080\/13658810902988419"},{"key":"e_1_2_9_5_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0272-7714(02)00419-5"},{"key":"e_1_2_9_6_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.ecss.2005.03.001"},{"key":"e_1_2_9_7_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cageo.2006.10.006"},{"key":"e_1_2_9_8_1","doi-asserted-by":"publisher","DOI":"10.1080\/13658810801909607"},{"key":"e_1_2_9_9_1","unstructured":"RohwederJ RogalaJT JohnsonBL AndersonD ClarkS ChamberlinF RunyonK.Application of wind fetch and wave models for habitat rehabilitation and enhancement projects.pubs.usgs.gov\/of\/2008\/1200\/pdf\/ofr2008\u20101200_{w}eb.pdf.[Accessed on 19 November 2014]."},{"key":"e_1_2_9_10_1","doi-asserted-by":"crossref","unstructured":"Murtoj\u00e4rviM Lepp\u00e4nenV NevalainenOS.A parallel GPU implementation of an algorithm for determining directional distances. Computer Systems and Technologies 12th International conference CompSysTech '11 Association for Computing Machinery:New York NY 2011;198\u2013203.","DOI":"10.1145\/2023607.2023642"},{"key":"e_1_2_9_11_1","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-8659.2009.01598.x"},{"key":"e_1_2_9_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2461912.2462015"},{"key":"e_1_2_9_13_1","unstructured":"Advanced Micro Devices.Reference Guide: Southern Islands Series Instruction Set Architecture. Advanced Micro Devices Inc 2012. (Available from:http:\/\/developer.amd.com\/wordpress\/media\/2012\/12\/AMD\\_{S}outhern\\ _{I}slands\\_{I}nstruction\\_{S}et\\_{A}rchitecture.pdf.) [Accessed on 31 August 2014]."},{"key":"e_1_2_9_14_1","volume-title":"AMD Accelerated Parallel Processing OpenCLTM Programming Guide","year":"2013"},{"key":"e_1_2_9_15_1","volume-title":"Heterogeneous Computing with OpenCL","author":"Gaster BR","year":"2013"},{"key":"e_1_2_9_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01905559"},{"key":"e_1_2_9_17_1","unstructured":"MunshiA.The OpenCL specification Version 1.2 document revision 19. Khronos OpenCL working group 2012. (Available from:http:\/\/www.khronos.org\/registry\/cl\/specs\/opencl\u20101.2.pdf.) [Accessed on 22 August 2013]."},{"key":"e_1_2_9_18_1","volume-title":"Introduction to Algorithms","author":"Cormen TH","year":"2009"},{"key":"e_1_2_9_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/EW.2010.5483525"},{"key":"e_1_2_9_20_1","unstructured":"KnorrEM NgRT.Algorithms for mining distance\u2010based outliers in large datasets.Proceedings of the 24rd International Conference on Very Large Data Bases Morgan Kaufmann Publishers Inc:San Francisco 1998;392\u2013403."},{"key":"e_1_2_9_21_1","doi-asserted-by":"crossref","unstructured":"ZhangJ YouS.Speeding up large\u2010scale point\u2010in\u2010polygon test based spatial join on GPUs.Proceedings of the 1st ACM SIGSPATIAL International Workshop on Analytics for Big Geospatial Data Association for Computing Machinery: 2012;23\u201332.","DOI":"10.1145\/2447481.2447485"},{"key":"e_1_2_9_22_1","unstructured":"Nov\u00e1kJ HavranV DachsbacherC.Path regeneration for interactive path tracing.Proc EUROGRAPHICS Short Papers. The European Association for Computer Graphics 2010;61\u201364."},{"key":"e_1_2_9_23_1","volume-title":"Probability and Statistics","author":"DeGroot MH","year":"2002"}],"container-title":["Concurrency and Computation: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fcpe.3529","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/cpe.3529","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,9,2]],"date-time":"2023-09-02T10:37:45Z","timestamp":1693651065000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/cpe.3529"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,5,20]]},"references-count":22,"journal-issue":{"issue":"17","published-print":{"date-parts":[[2015,12,10]]}},"alternative-id":["10.1002\/cpe.3529"],"URL":"https:\/\/doi.org\/10.1002\/cpe.3529","archive":["Portico"],"relation":{},"ISSN":["1532-0626","1532-0634"],"issn-type":[{"value":"1532-0626","type":"print"},{"value":"1532-0634","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,5,20]]}}}