{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,21]],"date-time":"2026-02-21T07:17:59Z","timestamp":1771658279927,"version":"3.50.1"},"reference-count":49,"publisher":"Zhejiang University Press","issue":"6","license":[{"start":{"date-parts":[[2025,6,1]],"date-time":"2025-06-01T00:00:00Z","timestamp":1748736000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2025,7,1]],"date-time":"2025-07-01T00:00:00Z","timestamp":1751328000000},"content-version":"vor","delay-in-days":30,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Front Inform Technol Electron Eng"],"published-print":{"date-parts":[[2025,6]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>This study presents a parallel version of the string matching algorithms research tool (SMART) library, implemented on NVIDIA\u2019s compute unified device architecture (CUDA) platform, and uses general-purpose computing on graphics processing unit (GPGPU) programming concepts to enhance performance and gain insight into the parallel versions of these algorithms. We have developed the CUDA-enhanced SMART (CUSMART) library, which incorporates parallelized iterations of 64 string matching algorithms, leveraging the CUDA application programming interface. The performance of these algorithms has been assessed across various scenarios to ensure a comprehensive and impartial comparison, allowing for the identification of their strengths and weaknesses in specific application contexts. We have explored and established optimization techniques to gauge their influence on the performance of these algorithms. The results of this study highlight the potential of GPGPU computing in string matching applications through the scalability of algorithms, suggesting significant performance improvements. Furthermore, we have identified the best and worst performing algorithms in various scenarios.<\/jats:p>","DOI":"10.1631\/fitee.2400091","type":"journal-article","created":{"date-parts":[[2025,7,1]],"date-time":"2025-07-01T01:35:50Z","timestamp":1751333750000},"page":"877-895","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["CUSMART: effective parallelization of string matching algorithms using GPGPU accelerators","CUSMART:\u5229\u7528GPGPU\u52a0\u901f\u5668\u6709\u6548\u5e76\u884c\u5316 \u5b57\u7b26\u4e32\u5339\u914d\u7b97\u6cd5"],"prefix":"10.1631","volume":"26","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0302-3721","authenticated-orcid":false,"given":"Adnan","family":"Ozsoy","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mengu","family":"Nazli","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Onur","family":"Cankur","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Cagri","family":"Sahin","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"635","published-online":{"date-parts":[[2025,7,1]]},"reference":[{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1126\/science.287.5461.2185"},{"key":"ref2","volume-title":"GPU Accelerated Pattern Matching Algorithm for DNA Sequences to Detect Cancer Using CUDA","author":"Adey","year":"2013"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1145\/2935764.2935800"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1145\/135239.135243"},{"key":"ref5","article-title":"Investigation of GPU-based pattern matching","volume-title":"Proc 14th Post Graduate Symp on the Convergence of Telecommunications, Networking and Broadcasting","author":"Bellekens","year":"2013"},{"key":"ref6","volume-title":"Vector Models for Data-Parallel Computing","author":"Blelloch","year":"1990"},{"key":"ref7","volume-title":"A History of Modern Computing","author":"Ceruzzi","year":"2003"},{"key":"ref8","volume-title":"Introduction to Algorithms","author":"Cormen","year":"2009"},{"key":"ref9","volume-title":"Text Algorithms","author":"Crochemore","year":"1994"},{"key":"ref10","volume-title":"The exact string matching problem: a comprehensive experimental evaluation","author":"Faro","year":"2010"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/2431211.2431212"},{"key":"ref12","first-page":"99","article-title":"The string matching algorithms research tool","volume-title":"Proc Prague Stringology Conf","author":"Faro","year":"2016"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1109\/mc.2007.445"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1145\/210184.210189"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1109\/ipdps.2011.182"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-73499-4_44"},{"key":"ref17","volume-title":"How to Overlap Data Transfers in CUDA C\/C++","author":"Harris","year":"2012"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1016\/j.tcs.2004.12.002"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380100608"},{"key":"ref20","doi-asserted-by":"publisher","DOI":"10.5120\/16973-6934"},{"key":"ref21","doi-asserted-by":"publisher","DOI":"10.1109\/iccoins.2014.6868423"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.12694\/scpe.v16i2.1085"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1371\/journal.pone.0139301"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1109\/ipdps.2009.5160931"},{"key":"ref25","doi-asserted-by":"publisher","DOI":"10.3115\/1218955.1219032"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-85665-6_27"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1109\/tsmc.1978.4309979"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1109\/tpds.2016.2645222"},{"issue":"3","key":"ref29","first-page":"42","article-title":"Various string matching algorithms for DNA sequences to detect breast cancer using CUDA processors","volume":"14","author":"Nagaveni","year":"2014","journal-title":"Int J Eng Technol"},{"key":"ref30","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0030778"},{"key":"ref31","volume-title":"Record 136 NVIDIA GPU-Accelerated Supercomputers Feature in TOP500 Ranking","year":"2019"},{"key":"ref32","doi-asserted-by":"publisher","DOI":"10.1109\/icfcc.2010.5497832"},{"key":"ref33","doi-asserted-by":"publisher","DOI":"10.12681\/eadd\/2457"},{"key":"ref34","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-33383-5_22"},{"key":"ref35","volume-title":"Parallel Programming in C with MPI and OpenMP","author":"Quinn","year":"2004"},{"key":"ref36","doi-asserted-by":"publisher","DOI":"10.14257\/ijsia.2017.11.6.06"},{"key":"ref37","doi-asserted-by":"publisher","DOI":"10.5120\/7672-0963"},{"key":"ref38","doi-asserted-by":"publisher","DOI":"10.1145\/42201.42203"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.5815\/ijcnis.2015.10.08"},{"key":"ref40","doi-asserted-by":"publisher","DOI":"10.1145\/155332.155334"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1109\/CGC.2012.106"},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1109\/ictss.2013.6588052"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1109\/hpcc.2012.65"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1109\/swat.1973.13"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2013.05.067"},{"issue":"3","key":"ref46","first-page":"368","article-title":"Yao ACC","volume":"8","year":"1979","journal-title":"SIAM J Comput"},{"key":"ref47","doi-asserted-by":"publisher","DOI":"10.1109\/icos.2013.6735065"},{"key":"ref48","doi-asserted-by":"publisher","DOI":"10.1109\/tc.2012.61"},{"key":"ref49","doi-asserted-by":"publisher","DOI":"10.1109\/tit.1977.1055714"}],"container-title":["Frontiers of Information Technology &amp; Electronic Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1631\/FITEE.2400091.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1631\/FITEE.2400091\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1631\/FITEE.2400091.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,2,21]],"date-time":"2026-02-21T06:56:29Z","timestamp":1771656989000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1631\/FITEE.2400091"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,6]]},"references-count":49,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2025,6]]}},"alternative-id":["91"],"URL":"https:\/\/doi.org\/10.1631\/fitee.2400091","relation":{},"ISSN":["2095-9184","2095-9230"],"issn-type":[{"value":"2095-9184","type":"print"},{"value":"2095-9230","type":"electronic"}],"subject":[],"published":{"date-parts":[[2025,6]]},"assertion":[{"value":"6 February 2024","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"23 July 2024","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"1 July 2025","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"All the authors declare that they have no conflict of interest.","order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of interest"}}]}}