{"id":"https://openalex.org/W4395954957","doi":"https://doi.org/10.1186/s13015-024-00263-5","title":"Fast, parallel, and cache-friendly suffix array construction","display_name":"Fast, parallel, and cache-friendly suffix array construction","publication_year":2024,"publication_date":"2024-04-28","ids":{"openalex":"https://openalex.org/W4395954957","doi":"https://doi.org/10.1186/s13015-024-00263-5","pmid":"https://pubmed.ncbi.nlm.nih.gov/38679714"},"language":"en","primary_location":{"id":"doi:10.1186/s13015-024-00263-5","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1186/s13015-024-00263-5","pdf_url":"https://link.springer.com/content/pdf/10.1186/s13015-024-00263-5.pdf","source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj","pubmed"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://link.springer.com/content/pdf/10.1186/s13015-024-00263-5.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5072999292","display_name":"Jamshed Khan","orcid":"https://orcid.org/0000-0002-5129-9749"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Jamshed Khan","raw_affiliation_strings":["Department of Computer Science, University of Maryland, College Park, MD, 20742, USA. jamshed@cs.umd.edu"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Maryland, College Park, MD, 20742, USA. jamshed@cs.umd.edu","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5093694582","display_name":"Tobias Rubel","orcid":null},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tobias Rubel","raw_affiliation_strings":["Department of Computer Science, University of Maryland, College Park, MD, 20742, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Maryland, College Park, MD, 20742, USA","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5045334836","display_name":"Erin K. Molloy","orcid":"https://orcid.org/0000-0001-5553-3312"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Erin Molloy","raw_affiliation_strings":["Department of Computer Science, University of Maryland, College Park, MD, 20742, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Maryland, College Park, MD, 20742, USA","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5065818820","display_name":"Laxman Dhulipala","orcid":"https://orcid.org/0000-0003-0685-064X"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Laxman Dhulipala","raw_affiliation_strings":["Department of Computer Science, University of Maryland, College Park, MD, 20742, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Maryland, College Park, MD, 20742, USA","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5014584023","display_name":"Rob Patro","orcid":"https://orcid.org/0000-0001-8463-1675"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Rob Patro","raw_affiliation_strings":["Department of Computer Science, University of Maryland, College Park, MD, 20742, USA. rob@cs.umd.edu"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Maryland, College Park, MD, 20742, USA. rob@cs.umd.edu","institution_ids":["https://openalex.org/I66946132"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5014584023","https://openalex.org/A5072999292"],"corresponding_institution_ids":["https://openalex.org/I66946132"],"apc_list":{"value":2290,"currency":"USD","value_usd":2290},"apc_paid":{"value":2290,"currency":"USD","value_usd":2290},"fwci":0.243,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":{"value":0.61049925,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":97},"biblio":{"volume":"19","issue":"1","first_page":"16","last_page":"16"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.8568999767303467,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.8568999767303467,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10015","display_name":"Genomics and Phylogenetic Studies","score":0.048700001090765,"subfield":{"id":"https://openalex.org/subfields/1312","display_name":"Molecular Biology"},"field":{"id":"https://openalex.org/fields/13","display_name":"Biochemistry, Genetics and Molecular Biology"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}},{"id":"https://openalex.org/T10181","display_name":"Natural Language Processing Techniques","score":0.010400000028312206,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8942164778709412},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.7176790237426758},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.6863999962806702},{"id":"https://openalex.org/keywords/suffix-array","display_name":"Suffix array","score":0.6632185578346252},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.5189492702484131},{"id":"https://openalex.org/keywords/suffix","display_name":"Suffix","score":0.4840902090072632},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.4548932909965515},{"id":"https://openalex.org/keywords/locality","display_name":"Locality","score":0.4352211356163025},{"id":"https://openalex.org/keywords/string","display_name":"String (physics)","score":0.4273073375225067},{"id":"https://openalex.org/keywords/prefix","display_name":"Prefix","score":0.42567750811576843},{"id":"https://openalex.org/keywords/multi-core-processor","display_name":"Multi-core processor","score":0.4173333942890167},{"id":"https://openalex.org/keywords/simple","display_name":"Simple (philosophy)","score":0.4172406494617462},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.37053054571151733},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.3320372700691223},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.27779144048690796},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.22528311610221863},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.08968997001647949}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8942164778709412},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.7176790237426758},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.6863999962806702},{"id":"https://openalex.org/C2779259728","wikidata":"https://www.wikidata.org/wiki/Q281472","display_name":"Suffix array","level":3,"score":0.6632185578346252},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.5189492702484131},{"id":"https://openalex.org/C2779804580","wikidata":"https://www.wikidata.org/wiki/Q102047","display_name":"Suffix","level":2,"score":0.4840902090072632},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.4548932909965515},{"id":"https://openalex.org/C2779808786","wikidata":"https://www.wikidata.org/wiki/Q6664603","display_name":"Locality","level":2,"score":0.4352211356163025},{"id":"https://openalex.org/C157486923","wikidata":"https://www.wikidata.org/wiki/Q1376436","display_name":"String (physics)","level":2,"score":0.4273073375225067},{"id":"https://openalex.org/C141603448","wikidata":"https://www.wikidata.org/wiki/Q134830","display_name":"Prefix","level":2,"score":0.42567750811576843},{"id":"https://openalex.org/C78766204","wikidata":"https://www.wikidata.org/wiki/Q555032","display_name":"Multi-core processor","level":2,"score":0.4173333942890167},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.4172406494617462},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.37053054571151733},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3320372700691223},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.27779144048690796},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.22528311610221863},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.08968997001647949},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1186/s13015-024-00263-5","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1186/s13015-024-00263-5","pdf_url":"https://link.springer.com/content/pdf/10.1186/s13015-024-00263-5.pdf","source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},{"id":"pmid:38679714","is_oa":false,"landing_page_url":"https://pubmed.ncbi.nlm.nih.gov/38679714","pdf_url":null,"source":{"id":"https://openalex.org/S4306525036","display_name":"PubMed","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for molecular biology : AMB","raw_type":null},{"id":"pmh:oai:pubmedcentral.nih.gov:11056320","is_oa":true,"landing_page_url":"https://www.ncbi.nlm.nih.gov/pmc/articles/11056320","pdf_url":"https://pmc.ncbi.nlm.nih.gov/articles/PMC11056320/pdf/13015_2024_Article_263.pdf","source":{"id":"https://openalex.org/S2764455111","display_name":"PubMed Central","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Algorithms Mol Biol","raw_type":"Text"},{"id":"pmh:oai:doaj.org/article:79aae57e7f2345199d9e1c1cff770744","is_oa":true,"landing_page_url":"https://doaj.org/article/79aae57e7f2345199d9e1c1cff770744","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Algorithms for Molecular Biology, Vol 19, Iss 1, Pp 1-16 (2024)","raw_type":"article"}],"best_oa_location":{"id":"doi:10.1186/s13015-024-00263-5","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1186/s13015-024-00263-5","pdf_url":"https://link.springer.com/content/pdf/10.1186/s13015-024-00263-5.pdf","source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G2324004137","display_name":null,"funder_award_id":"R01HG009937","funder_id":"https://openalex.org/F4320332161","funder_display_name":"National Institutes of Health"},{"id":"https://openalex.org/G8518319274","display_name":null,"funder_award_id":"R01 HG009937","funder_id":"https://openalex.org/F4320337348","funder_display_name":"National Human Genome Research Institute"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320332161","display_name":"National Institutes of Health","ror":"https://ror.org/01cwqze88"},{"id":"https://openalex.org/F4320337348","display_name":"National Human Genome Research Institute","ror":"https://ror.org/00baak391"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4395954957.pdf","grobid_xml":"https://content.openalex.org/works/W4395954957.grobid-xml"},"referenced_works_count":54,"referenced_works":["https://openalex.org/W117230746","https://openalex.org/W938539187","https://openalex.org/W1495956867","https://openalex.org/W1499885795","https://openalex.org/W1539580421","https://openalex.org/W1574212840","https://openalex.org/W1606226810","https://openalex.org/W1863047657","https://openalex.org/W1906082209","https://openalex.org/W1976682045","https://openalex.org/W1993399552","https://openalex.org/W2032574053","https://openalex.org/W2040805829","https://openalex.org/W2041097097","https://openalex.org/W2055768308","https://openalex.org/W2067974452","https://openalex.org/W2086098198","https://openalex.org/W2107079154","https://openalex.org/W2122812051","https://openalex.org/W2130564474","https://openalex.org/W2134283755","https://openalex.org/W2143531254","https://openalex.org/W2150749717","https://openalex.org/W2158585409","https://openalex.org/W2168544607","https://openalex.org/W2169456326","https://openalex.org/W2400487982","https://openalex.org/W2402980768","https://openalex.org/W2503891541","https://openalex.org/W2533248932","https://openalex.org/W2570663628","https://openalex.org/W2604604482","https://openalex.org/W2619212644","https://openalex.org/W2900113352","https://openalex.org/W2907097712","https://openalex.org/W2913811427","https://openalex.org/W2916798890","https://openalex.org/W2952870794","https://openalex.org/W2962856362","https://openalex.org/W2963995493","https://openalex.org/W2964316344","https://openalex.org/W2964320652","https://openalex.org/W3041215255","https://openalex.org/W3134677442","https://openalex.org/W3167683174","https://openalex.org/W3193844559","https://openalex.org/W3212599762","https://openalex.org/W4220678359","https://openalex.org/W4220999759","https://openalex.org/W4295087956","https://openalex.org/W4300913470","https://openalex.org/W4307843774","https://openalex.org/W4317181452","https://openalex.org/W6929273185"],"related_works":["https://openalex.org/W2022951409","https://openalex.org/W4385652842","https://openalex.org/W3196825089","https://openalex.org/W4368367671","https://openalex.org/W2413189204","https://openalex.org/W3012663989","https://openalex.org/W4318200119","https://openalex.org/W2773803767","https://openalex.org/W2738126475","https://openalex.org/W2063556310"],"abstract_inverted_index":{"PURPOSE:":[0],"String":[1],"indexes":[2,73],"such":[3],"as":[4],"the":[5,10,45,137,145],"suffix":[6],"array":[7,17],"(SA)":[8],"and":[9,23,44,54,65,77,90,96,122,151],"closely":[11],"related":[12],"longest":[13],"common":[14],"prefix":[15],"(LCP)":[16],"are":[18,42],"fundamental":[19],"objects":[20],"in":[21,33,133],"bioinformatics":[22],"have":[24,140],"a":[25,63,148],"wide":[26],"variety":[27],"of":[28,147],"applications.":[29],"Despite":[30],"their":[31],"importance":[32],"practice,":[34],"few":[35],"scalable":[36,66],"parallel":[37,67,120],"algorithms":[38,47,125],"for":[39,69],"constructing":[40,70],"these":[41,71],"known,":[43],"existing":[46,118],"can":[48,155],"be":[49,157],"highly":[50],"non-trivial":[51],"to":[52,83,159,163],"implement":[53],"parallelize.":[55],"METHODS:":[56],"In":[57],"this":[58,161],"paper":[59],"we":[60,143],"present":[61],"CAPS-SA,":[62],"simple":[64,114],"algorithm":[68],"string":[72],"inspired":[74],"by":[75,131],"samplesort":[76],"utilizing":[78],"an":[79],"LCP-informed":[80],"mergesort.":[81],"Due":[82],"its":[84,113],"design,":[85,115],"CAPS-SA":[86,116,154],"has":[87],"excellent":[88],"memory-locality":[89],"thus":[91],"incurs":[92],"fewer":[93],"cache":[94,106],"misses":[95],"achieves":[97],"strong":[98],"performance":[99],"on":[100,126],"modern":[101,127,134],"multicore":[102],"systems":[103],"with":[104],"deep":[105],"hierarchies.":[107],"RESULTS:":[108],"We":[109,167],"show":[110,152],"that":[111,153],"despite":[112],"outperforms":[117],"state-of-the-art":[119],"SA":[121,150],"LCP-array":[123],"construction":[124],"hardware.":[128],"Finally,":[129],"motivated":[130],"applications":[132],"aligners":[135],"where":[136],"query":[138],"strings":[139],"bounded":[141],"lengths,":[142],"introduce":[144],"notion":[146],"bounded-context":[149],"easily":[156],"extended":[158],"exploit":[160],"structure":[162],"obtain":[164],"further":[165],"speedups.":[166],"make":[168],"our":[169],"code":[170],"publicly":[171],"available":[172],"at":[173],"https://github.com/jamshed/CaPS-SA":[174],".":[175]},"counts_by_year":[{"year":2026,"cited_by_count":1}],"updated_date":"2026-07-23T08:03:31.855105","created_date":"2025-10-10T00:00:00"}
