{"id":"https://openalex.org/W4255465399","doi":"https://doi.org/10.1109/cgo.2015.7054199","title":"PSLP: Padded SLP automatic vectorization","display_name":"PSLP: Padded SLP automatic vectorization","publication_year":2015,"publication_date":"2015-02-01","ids":{"openalex":"https://openalex.org/W4255465399","doi":"https://doi.org/10.1109/cgo.2015.7054199"},"language":"en","primary_location":{"id":"doi:10.1109/cgo.2015.7054199","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo.2015.7054199","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-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/A5041672444","display_name":"Vasileios Porpodas","orcid":null},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Vasileios Porpodas","raw_affiliation_strings":["Computer Laboratory, University of Cambridge"],"affiliations":[{"raw_affiliation_string":"Computer Laboratory, University of Cambridge","institution_ids":["https://openalex.org/I241749"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5018193907","display_name":"Alberto Magni","orcid":"https://orcid.org/0000-0001-6959-1564"},"institutions":[{"id":"https://openalex.org/I98677209","display_name":"University of Edinburgh","ror":"https://ror.org/01nrxwf90","country_code":"GB","type":"education","lineage":["https://openalex.org/I98677209"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Alberto Magni","raw_affiliation_strings":["School of Informatics, University of Edinburgh"],"affiliations":[{"raw_affiliation_string":"School of Informatics, University of Edinburgh","institution_ids":["https://openalex.org/I98677209"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5047443783","display_name":"Timothy M. Jones","orcid":"https://orcid.org/0000-0002-4114-7661"},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Timothy M. Jones","raw_affiliation_strings":["Computer Laboratory, University of Cambridge"],"affiliations":[{"raw_affiliation_string":"Computer Laboratory, University of Cambridge","institution_ids":["https://openalex.org/I241749"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5041672444"],"corresponding_institution_ids":["https://openalex.org/I241749"],"apc_list":null,"apc_paid":null,"fwci":3.2298,"has_fulltext":false,"cited_by_count":22,"citation_normalized_percentile":{"value":0.92538524,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"190","last_page":"201"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.9986000061035156,"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9980999827384949,"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/vectorization","display_name":"Vectorization (mathematics)","score":0.9409787654876709},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8640759587287903},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.8066364526748657},{"id":"https://openalex.org/keywords/simd","display_name":"SIMD","score":0.7986717820167542},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.7285377979278564},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.6106745600700378},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4630487263202667},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.4242992401123047},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.35384631156921387},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.34609830379486084},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.08799147605895996},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.06678816676139832}],"concepts":[{"id":"https://openalex.org/C41681595","wikidata":"https://www.wikidata.org/wiki/Q7917855","display_name":"Vectorization (mathematics)","level":2,"score":0.9409787654876709},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8640759587287903},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8066364526748657},{"id":"https://openalex.org/C150552126","wikidata":"https://www.wikidata.org/wiki/Q339387","display_name":"SIMD","level":2,"score":0.7986717820167542},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.7285377979278564},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.6106745600700378},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4630487263202667},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.4242992401123047},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.35384631156921387},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.34609830379486084},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.08799147605895996},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.06678816676139832},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/cgo.2015.7054199","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo.2015.7054199","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2015 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Affordable and clean energy","score":0.6200000047683716,"id":"https://metadata.un.org/sdg/7"}],"awards":[{"id":"https://openalex.org/G3661743248","display_name":null,"funder_award_id":"EP/K026399/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G7609657460","display_name":null,"funder_award_id":"EP/J016284/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":29,"referenced_works":["https://openalex.org/W1533942910","https://openalex.org/W1966324811","https://openalex.org/W1966691503","https://openalex.org/W1974032838","https://openalex.org/W1975594295","https://openalex.org/W2013156670","https://openalex.org/W2038328339","https://openalex.org/W2054103475","https://openalex.org/W2069763700","https://openalex.org/W2079834329","https://openalex.org/W2099404643","https://openalex.org/W2104378884","https://openalex.org/W2105680229","https://openalex.org/W2111394443","https://openalex.org/W2112482891","https://openalex.org/W2118031182","https://openalex.org/W2122060420","https://openalex.org/W2124273985","https://openalex.org/W2127324789","https://openalex.org/W2135736783","https://openalex.org/W2144481293","https://openalex.org/W2155503253","https://openalex.org/W3145750999","https://openalex.org/W4237648771","https://openalex.org/W4244894488","https://openalex.org/W4245987756","https://openalex.org/W4246166885","https://openalex.org/W6632112944","https://openalex.org/W6670344032"],"related_works":["https://openalex.org/W2566637483","https://openalex.org/W2127324789","https://openalex.org/W3024308452","https://openalex.org/W4244894488","https://openalex.org/W4285390450","https://openalex.org/W2979513934","https://openalex.org/W2111180768","https://openalex.org/W2366442643","https://openalex.org/W2021715972","https://openalex.org/W2766828645"],"abstract_inverted_index":{"The":[0,174],"need":[1],"to":[2,13,33,53,77,106,135,167,204],"increase":[3],"performance":[4],"and":[5,27,36,51,96,196],"power":[6],"efficiency":[7],"in":[8,90,126],"modern":[9],"processors":[10],"has":[11],"led":[12],"a":[14,133,144,158,192],"wide":[15],"adoption":[16],"of":[17,46,103,116,161,194],"SIMD":[18],"vector":[19,25,80],"units.":[20],"All":[21],"major":[22,92],"vendors":[23],"support":[24],"instructions":[26,105,163],"the":[28,67,74,114,117,165],"trend":[29],"is":[30,49,59,73,88],"pushing":[31],"them":[32],"become":[34],"wider":[35],"more":[37],"powerful.":[38],"However,":[39,111],"writing":[40],"code":[41,81,121,151,166],"that":[42,148,186],"makes":[43],"efficient":[44],"use":[45],"these":[47],"units":[48],"hard":[50],"leads":[52],"platform-specific":[54],"implementations.":[55],"Compiler-based":[56],"automatic":[57],"vectorization":[58,71,146,189],"one":[60],"solution":[61,134],"for":[62],"this":[63,112,129,137],"problem.":[64],"In":[65,128],"particular":[66],"Superword-Level":[68],"Parallelism":[69],"(SLP)":[70],"algorithm":[72,118,147],"primary":[75],"way":[76],"automatically":[78],"generate":[79],"starting":[82],"from":[83],"straight-line":[84],"scalar":[85],"code.":[86],"SLP":[87,98,142],"implemented":[89],"all":[91],"compilers,":[93],"including":[94],"GCC":[95],"LLVM.":[97],"relies":[99],"on":[100],"finding":[101],"sequences":[102,122,170],"isomorphic":[104,120,172],"pack":[107],"together":[108],"into":[109,164,171],"vectors.":[110],"hinders":[113],"applicability":[115],"as":[119],"are":[123],"not":[124],"common":[125],"practice.":[127],"work":[130],"we":[131],"propose":[132],"overcome":[136],"limitation.":[138],"We":[139],"introduce":[140],"Padded":[141],"(PSLP),":[143],"novel":[145],"can":[149,178],"vectorize":[150],"containing":[152],"non-isomorphic":[153,169],"instruction":[154,176],"sequences.":[155],"It":[156],"injects":[157],"near-minimal":[159],"number":[160,193],"redundant":[162],"transform":[168],"ones.":[173],"padded":[175],"sequence":[177],"then":[179],"be":[180],"successfully":[181],"vectorized.":[182],"Our":[183],"experiments":[184],"show":[185],"PSLP":[187],"improves":[188],"coverage":[190],"across":[191],"kernels":[195],"full":[197],"benchmarks,":[198],"decreasing":[199],"execution":[200],"time":[201],"by":[202],"up":[203],"63%.":[205]},"counts_by_year":[{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":3},{"year":2017,"cited_by_count":5},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
