{"id":"https://openalex.org/W3007009247","doi":"https://doi.org/10.1145/3373087.3375304","title":"FPGA-Accelerated Samplesort for Large Data Sets","display_name":"FPGA-Accelerated Samplesort for Large Data Sets","publication_year":2020,"publication_date":"2020-02-23","ids":{"openalex":"https://openalex.org/W3007009247","doi":"https://doi.org/10.1145/3373087.3375304","mag":"3007009247"},"language":"en","primary_location":{"id":"doi:10.1145/3373087.3375304","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3373087.3375304","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3373087.3375304","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3373087.3375304","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5100325106","display_name":"Han Chen","orcid":"https://orcid.org/0000-0001-8112-5961"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Han Chen","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5000912884","display_name":"Sergey Madaminov","orcid":"https://orcid.org/0000-0002-6299-7534"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Sergey Madaminov","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5010051312","display_name":"Michael Ferdman","orcid":"https://orcid.org/0000-0001-5808-1040"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Michael Ferdman","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5061612911","display_name":"Peter Milder","orcid":"https://orcid.org/0000-0003-1146-3011"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Peter Milder","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5100325106"],"corresponding_institution_ids":["https://openalex.org/I59553526"],"apc_list":null,"apc_paid":null,"fwci":2.4469,"has_fulltext":true,"cited_by_count":25,"citation_normalized_percentile":{"value":0.91056433,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"222","last_page":"232"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.9998000264167786,"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.9998000264167786,"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11321","display_name":"Error Correcting Code Techniques","score":0.9969000220298767,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.8358936905860901},{"id":"https://openalex.org/keywords/pci-express","display_name":"PCI Express","score":0.8311402797698975},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.6918160915374756},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.6110769510269165},{"id":"https://openalex.org/keywords/merge-sort","display_name":"Merge sort","score":0.5876789689064026},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4928622245788574},{"id":"https://openalex.org/keywords/speedup","display_name":"Speedup","score":0.46238580346107483},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.39065584540367126},{"id":"https://openalex.org/keywords/sorting","display_name":"Sorting","score":0.382427453994751},{"id":"https://openalex.org/keywords/sorting-algorithm","display_name":"Sorting algorithm","score":0.3544313311576843},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3260974884033203},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.12381258606910706}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8358936905860901},{"id":"https://openalex.org/C64270927","wikidata":"https://www.wikidata.org/wiki/Q206924","display_name":"PCI Express","level":3,"score":0.8311402797698975},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.6918160915374756},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.6110769510269165},{"id":"https://openalex.org/C35555965","wikidata":"https://www.wikidata.org/wiki/Q189057","display_name":"Merge sort","level":4,"score":0.5876789689064026},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4928622245788574},{"id":"https://openalex.org/C68339613","wikidata":"https://www.wikidata.org/wiki/Q1549489","display_name":"Speedup","level":2,"score":0.46238580346107483},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.39065584540367126},{"id":"https://openalex.org/C111696304","wikidata":"https://www.wikidata.org/wiki/Q2303697","display_name":"Sorting","level":2,"score":0.382427453994751},{"id":"https://openalex.org/C108094655","wikidata":"https://www.wikidata.org/wiki/Q181593","display_name":"Sorting algorithm","level":3,"score":0.3544313311576843},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3260974884033203},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.12381258606910706}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3373087.3375304","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3373087.3375304","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3373087.3375304","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3373087.3375304","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3373087.3375304","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3373087.3375304","source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays","raw_type":"proceedings-article"},"sustainable_development_goals":[{"score":0.5,"display_name":"Partnerships for the goals","id":"https://metadata.un.org/sdg/17"}],"awards":[{"id":"https://openalex.org/G2963653684","display_name":"SPX: Collaborative Research: Harnessing the Power of High-Bandwidth Memory via Provably Efficient Parallel Algorithms","funder_award_id":"1725543","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G3433872965","display_name":null,"funder_award_id":"CCF-#1725543","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G4401751035","display_name":null,"funder_award_id":"CCF-#1452904","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G4842428009","display_name":"CAREER: Leveraging temporal streams for micro-architectural innovation in data center servers","funder_award_id":"1452904","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320310598","display_name":"Amazon Web Services","ror":"https://ror.org/04mv4n011"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3007009247.pdf","grobid_xml":"https://content.openalex.org/works/W3007009247.grobid-xml"},"referenced_works_count":23,"referenced_works":["https://openalex.org/W1499512641","https://openalex.org/W1974796034","https://openalex.org/W1975755183","https://openalex.org/W1989741444","https://openalex.org/W2041097097","https://openalex.org/W2065012250","https://openalex.org/W2072974923","https://openalex.org/W2082357899","https://openalex.org/W2090311898","https://openalex.org/W2105175890","https://openalex.org/W2113622448","https://openalex.org/W2118995957","https://openalex.org/W2147418091","https://openalex.org/W2169818191","https://openalex.org/W2472334012","https://openalex.org/W2492482597","https://openalex.org/W2508353373","https://openalex.org/W2573305191","https://openalex.org/W2733107613","https://openalex.org/W2752853835","https://openalex.org/W2890524446","https://openalex.org/W2949320316","https://openalex.org/W2950300747"],"related_works":["https://openalex.org/W2809748609","https://openalex.org/W3033694952","https://openalex.org/W2372558933","https://openalex.org/W2349288944","https://openalex.org/W2765396134","https://openalex.org/W1493296159","https://openalex.org/W2085265870","https://openalex.org/W797244100","https://openalex.org/W1999431223","https://openalex.org/W1480783219"],"abstract_inverted_index":{"Sorting":[0],"is":[1,104,112],"a":[2,55,65,72,75,105,113,137,170,176,191,214],"fundamental":[3],"operation":[4],"in":[5],"many":[6],"applications":[7],"such":[8],"as":[9],"databases,":[10],"search,":[11],"and":[12,40,150,203],"social":[13],"networks.":[14],"Although":[15],"FPGAs":[16],"have":[17],"been":[18],"shown":[19],"very":[20],"effective":[21],"at":[22],"sorting":[23,59,128,208],"data":[24,34,38,50,61,90],"sizes":[25],"that":[26,31,94,117,142,182],"fit":[27],"on":[28,39,71,154,224],"chip,":[29],"systems":[30],"sort":[32,223],"larger":[33],"sets":[35],"by":[36,45,81,198],"shuffling":[37],"off":[41],"chip":[42],"are":[43],"bottlenecked":[44],"costly":[46],"merge":[47],"operations":[48],"or":[49],"transfer":[51],"time.":[52],"We":[53,158],"propose":[54],"new":[56,140],"technique":[57],"for":[58,126],"large":[60],"sets,":[62],"which":[63,111,168],"uses":[64],"variant":[66],"of":[67,139,193],"the":[68,120,148,151,155,199,218],"samplesort":[69,121,125],"algorithm":[70],"server":[73],"with":[74,145,175,190],"PCIe-connected":[76],"FPGA.":[77],"Samplesort":[78],"avoids":[79],"merging":[80],"randomly":[82],"sampling":[83],"values":[84],"to":[85,88,101],"determine":[86],"how":[87],"partition":[89],"into":[91],"non-overlapping":[92],"buckets":[93],"can":[95],"be":[96],"independently":[97],"sorted.":[98],"The":[99],"key":[100],"our":[102,160,183,211],"design":[103,161],"novel":[106],"parallel":[107,222],"multi-stage":[108],"hardware":[109],"partitioner,":[110],"scalable":[114],"high-throughput":[115],"solution":[116],"greatly":[118],"accelerates":[119],"partitioning":[122],"step.":[123],"Using":[124],"FPGA-accelerated":[127],"provides":[129],"several":[130],"advantages":[131],"over":[132,217],"mergesort,":[133],"while":[134],"also":[135],"presenting":[136],"number":[138],"challenges":[141],"we":[143],"address":[144],"cooperation":[146],"between":[147],"FPGA":[149,166,174],"software":[152],"running":[153],"host":[156],"CPU.":[157,228],"prototype":[159,184],"using":[162],"Amazon":[163],"Web":[164],"Services":[165],"instances,":[167],"pair":[169],"Xilinx":[171],"Virtex":[172],"UltraScale+":[173],"high-performance":[177],"server.":[178],"Our":[179],"experiments":[180],"demonstrate":[181],"system":[185,212],"sorts":[186],"2^30":[187,209],"key-value":[188],"records":[189],"speed":[192],"7.2":[194],"GB/s,":[195],"limited":[196],"only":[197],"on-board":[200],"DRAM":[201],"capacity":[202],"available":[204],"PCIe":[205],"bandwidth.":[206],"When":[207],"records,":[210],"exhibits":[213],"37.4x":[215],"speedup":[216],"widely":[219],"used":[220],"GNU":[221],"an":[225],"8-thread":[226],"state-of-the-art":[227]},"counts_by_year":[{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":8},{"year":2021,"cited_by_count":6},{"year":2020,"cited_by_count":2}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
