{"id":"https://openalex.org/W2782281640","doi":"https://doi.org/10.1109/tpds.2018.2789903","title":"A Framework for the Automatic Vectorization of Parallel Sort on x86-Based Processors","display_name":"A Framework for the Automatic Vectorization of Parallel Sort on x86-Based Processors","publication_year":2018,"publication_date":"2018-01-05","ids":{"openalex":"https://openalex.org/W2782281640","doi":"https://doi.org/10.1109/tpds.2018.2789903","mag":"2782281640"},"language":"en","primary_location":{"id":"doi:10.1109/tpds.2018.2789903","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tpds.2018.2789903","pdf_url":null,"source":{"id":"https://openalex.org/S97130795","display_name":"IEEE Transactions on Parallel and Distributed Systems","issn_l":"1045-9219","issn":["1045-9219","1558-2183","2161-9883"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Parallel and Distributed Systems","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5047871879","display_name":"Kaixi Hou","orcid":"https://orcid.org/0000-0003-3921-6709"},"institutions":[{"id":"https://openalex.org/I859038795","display_name":"Virginia Tech","ror":"https://ror.org/02smfhw86","country_code":"US","type":"education","lineage":["https://openalex.org/I859038795"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Kaixi Hou","raw_affiliation_strings":["Department of Computer Science, Virginia Tech, Blacksburg, VA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, Virginia Tech, Blacksburg, VA","institution_ids":["https://openalex.org/I859038795"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5050002532","display_name":"Hao Wang","orcid":"https://orcid.org/0000-0003-3557-6301"},"institutions":[{"id":"https://openalex.org/I859038795","display_name":"Virginia Tech","ror":"https://ror.org/02smfhw86","country_code":"US","type":"education","lineage":["https://openalex.org/I859038795"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Hao Wang","raw_affiliation_strings":["Department of Computer Science, Virginia Tech, Blacksburg, VA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, Virginia Tech, Blacksburg, VA","institution_ids":["https://openalex.org/I859038795"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5058539554","display_name":"Wu-chun Feng","orcid":"https://orcid.org/0000-0002-6015-0727"},"institutions":[{"id":"https://openalex.org/I859038795","display_name":"Virginia Tech","ror":"https://ror.org/02smfhw86","country_code":"US","type":"education","lineage":["https://openalex.org/I859038795"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Wu-Chun Feng","raw_affiliation_strings":["Department of Computer Science, Virginia Tech, Blacksburg, VA"],"affiliations":[{"raw_affiliation_string":"Department of Computer Science, Virginia Tech, Blacksburg, VA","institution_ids":["https://openalex.org/I859038795"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5047871879"],"corresponding_institution_ids":["https://openalex.org/I859038795"],"apc_list":null,"apc_paid":null,"fwci":3.787,"has_fulltext":false,"cited_by_count":21,"citation_normalized_percentile":{"value":0.93815693,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":"29","issue":"5","first_page":"958","last_page":"972"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10829","display_name":"Interconnection Networks and Systems","score":0.9998000264167786,"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/T11269","display_name":"Algorithms and Data Compression","score":0.9991000294685364,"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.8787681460380554},{"id":"https://openalex.org/keywords/x86","display_name":"x86","score":0.8626610636711121},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.8317497968673706},{"id":"https://openalex.org/keywords/intrinsics","display_name":"Intrinsics","score":0.798167884349823},{"id":"https://openalex.org/keywords/merge-sort","display_name":"Merge sort","score":0.758480429649353},{"id":"https://openalex.org/keywords/speedup","display_name":"Speedup","score":0.7270462512969971},{"id":"https://openalex.org/keywords/sorting-algorithm","display_name":"Sorting algorithm","score":0.6082003116607666},{"id":"https://openalex.org/keywords/vectorization","display_name":"Vectorization (mathematics)","score":0.44108492136001587},{"id":"https://openalex.org/keywords/simd","display_name":"SIMD","score":0.4324081242084503},{"id":"https://openalex.org/keywords/sorting","display_name":"Sorting","score":0.416380375623703},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.2806367874145508},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.14675265550613403},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.1337776780128479}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8787681460380554},{"id":"https://openalex.org/C170723468","wikidata":"https://www.wikidata.org/wiki/Q182933","display_name":"x86","level":3,"score":0.8626610636711121},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.8317497968673706},{"id":"https://openalex.org/C2908650547","wikidata":"https://www.wikidata.org/wiki/Q20999234","display_name":"Intrinsics","level":2,"score":0.798167884349823},{"id":"https://openalex.org/C35555965","wikidata":"https://www.wikidata.org/wiki/Q189057","display_name":"Merge sort","level":4,"score":0.758480429649353},{"id":"https://openalex.org/C68339613","wikidata":"https://www.wikidata.org/wiki/Q1549489","display_name":"Speedup","level":2,"score":0.7270462512969971},{"id":"https://openalex.org/C108094655","wikidata":"https://www.wikidata.org/wiki/Q181593","display_name":"Sorting algorithm","level":3,"score":0.6082003116607666},{"id":"https://openalex.org/C41681595","wikidata":"https://www.wikidata.org/wiki/Q7917855","display_name":"Vectorization (mathematics)","level":2,"score":0.44108492136001587},{"id":"https://openalex.org/C150552126","wikidata":"https://www.wikidata.org/wiki/Q339387","display_name":"SIMD","level":2,"score":0.4324081242084503},{"id":"https://openalex.org/C111696304","wikidata":"https://www.wikidata.org/wiki/Q2303697","display_name":"Sorting","level":2,"score":0.416380375623703},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.2806367874145508},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.14675265550613403},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.1337776780128479}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/tpds.2018.2789903","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tpds.2018.2789903","pdf_url":null,"source":{"id":"https://openalex.org/S97130795","display_name":"IEEE Transactions on Parallel and Distributed Systems","issn_l":"1045-9219","issn":["1045-9219","1558-2183","2161-9883"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Parallel and Distributed Systems","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.4399999976158142,"id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":38,"referenced_works":["https://openalex.org/W624975885","https://openalex.org/W1518055973","https://openalex.org/W1528855243","https://openalex.org/W1539580421","https://openalex.org/W1979607662","https://openalex.org/W1979790590","https://openalex.org/W1994869533","https://openalex.org/W2007967266","https://openalex.org/W2013156670","https://openalex.org/W2014214820","https://openalex.org/W2018641575","https://openalex.org/W2028087580","https://openalex.org/W2028798345","https://openalex.org/W2035795598","https://openalex.org/W2037524288","https://openalex.org/W2046835668","https://openalex.org/W2059966434","https://openalex.org/W2065074520","https://openalex.org/W2067635581","https://openalex.org/W2074833026","https://openalex.org/W2082695854","https://openalex.org/W2118558147","https://openalex.org/W2141389982","https://openalex.org/W2153952995","https://openalex.org/W2166955231","https://openalex.org/W2168961888","https://openalex.org/W2278783412","https://openalex.org/W2290761674","https://openalex.org/W2325315917","https://openalex.org/W2491166573","https://openalex.org/W2506072259","https://openalex.org/W2610365067","https://openalex.org/W3016205154","https://openalex.org/W3103616001","https://openalex.org/W3141434431","https://openalex.org/W3141603496","https://openalex.org/W4245987756","https://openalex.org/W6737184709"],"related_works":["https://openalex.org/W2623389408","https://openalex.org/W2765396134","https://openalex.org/W1493296159","https://openalex.org/W1480783219","https://openalex.org/W3037448952","https://openalex.org/W4300167273","https://openalex.org/W3116699298","https://openalex.org/W2190513794","https://openalex.org/W4229364780","https://openalex.org/W2782281640"],"abstract_inverted_index":{"The":[0,139],"continued":[1],"growth":[2],"in":[3],"the":[4,10,16,49,88,97,123,131,135,143,164,175,188],"width":[5],"of":[6,13,52,94,104,125],"vector":[7,80,132],"registers":[8],"and":[9,27,44,68,77,96,99,128,147,150,180,182],"evolving":[11],"library":[12],"intrinsics":[14],"on":[15,34,56,122,142],"modern":[17],"x86":[18],"processors":[19],"make":[20],"manual":[21],"optimizations":[22],"for":[23,40,48,82],"data-level":[24],"parallelism":[25],"tedious":[26],"error-prone.":[28],"In":[29],"this":[30],"paper,":[31],"we":[32],"focus":[33],"parallel":[35,126,190],"sorting,":[36,127],"a":[37,46,69,92,115],"building":[38],"block":[39],"many":[41],"higher-level":[42],"applications,":[43],"propose":[45],"framework":[47],"Automatic":[50],"SIMDization":[51],"Parallel":[53],"Sorting":[54],"(ASPaS)":[55],"x86-based":[57],"multiand":[58],"many-core":[59],"processors.":[60],"That":[61],"is,":[62],"ASPaS":[63,107,161],"takes":[64],"any":[65],"sorting":[66,84,158,167],"network":[67],"given":[70],"instruction":[71],"set":[72],"architecture":[73],"(ISA)":[74],"as":[75,91,102],"inputs":[76],"automatically":[78,156],"generates":[79],"code":[81,133],"that":[83,119,155],"network.":[85],"After":[86],"formalizing":[87],"sort":[89,191],"function":[90],"sequence":[93],"comparators":[95],"transpose":[98],"merge":[100],"functions":[101,111],"sequences":[103],"vector-matrix":[105],"multiplications,":[106],"can":[108,162],"map":[109],"these":[110],"to":[112,171,184],"operations":[113],"from":[114,160,178,192],"selected":[116],"\u201cpattern":[117],"pool\u201d":[118],"is":[120],"based":[121],"characteristics":[124],"then":[129],"generate":[130],"with":[134],"real":[136],"ISA":[137],"intrinsics.":[138],"performance":[140],"evaluation":[141],"Intel":[144,193],"Ivy":[145],"Bridge":[146],"Haswell":[148],"CPUs,":[149],"Knights":[151],"Corner":[152],"MIC":[153],"illustrates":[154],"generated":[157],"codes":[159],"outperform":[163],"widely":[165],"used":[166],"tools,":[168],"achieving":[169],"up":[170,183],"5.2x":[172],"speedup":[173,186],"over":[174,187],"single-threaded":[176],"implementations":[177],"STL":[179],"Boost":[181],"6.7x":[185],"multi-threaded":[189],"TBB.":[194]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":6}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
