{"id":"https://openalex.org/W2607448249","doi":"https://doi.org/10.1145/3091966.3091968","title":"HPTT: a high-performance tensor transposition C++ library","display_name":"HPTT: a high-performance tensor transposition C++ library","publication_year":2017,"publication_date":"2017-06-09","ids":{"openalex":"https://openalex.org/W2607448249","doi":"https://doi.org/10.1145/3091966.3091968","mag":"2607448249"},"language":"en","primary_location":{"id":"doi:10.1145/3091966.3091968","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3091966.3091968","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 4th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["arxiv","crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/1704.04374","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5025638687","display_name":"Paul Springer","orcid":"https://orcid.org/0000-0002-8760-8793"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Paul Springer","raw_affiliation_strings":["RWTH Aachen University, Germany","RWTH Aachen University (Germany)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]},{"raw_affiliation_string":"RWTH Aachen University (Germany)","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5037263770","display_name":"Tong Su","orcid":null},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Tong Su","raw_affiliation_strings":["RWTH Aachen University, Germany","RWTH Aachen University (Germany)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]},{"raw_affiliation_string":"RWTH Aachen University (Germany)","institution_ids":["https://openalex.org/I887968799"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5048393932","display_name":"Paolo Bientinesi","orcid":"https://orcid.org/0000-0002-4972-7097"},"institutions":[{"id":"https://openalex.org/I887968799","display_name":"RWTH Aachen University","ror":"https://ror.org/04xfq0f34","country_code":"DE","type":"education","lineage":["https://openalex.org/I887968799"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Paolo Bientinesi","raw_affiliation_strings":["RWTH Aachen University, Germany","RWTH Aachen University (Germany)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"RWTH Aachen University, Germany","institution_ids":["https://openalex.org/I887968799"]},{"raw_affiliation_string":"RWTH Aachen University (Germany)","institution_ids":["https://openalex.org/I887968799"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I887968799"],"apc_list":null,"apc_paid":null,"fwci":0.1902,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.31736127,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"56","last_page":"62"},"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.9994000196456909,"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.9994000196456909,"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9854999780654907,"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/T12303","display_name":"Tensor decomposition and applications","score":0.9645000100135803,"subfield":{"id":"https://openalex.org/subfields/2605","display_name":"Computational Mathematics"},"field":{"id":"https://openalex.org/fields/26","display_name":"Mathematics"},"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.7379875183105469},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6327292919158936},{"id":"https://openalex.org/keywords/tensor","display_name":"Tensor (intrinsic definition)","score":0.5836511254310608},{"id":"https://openalex.org/keywords/kernel","display_name":"Kernel (algebra)","score":0.5291262865066528},{"id":"https://openalex.org/keywords/x86","display_name":"x86","score":0.4785928428173065},{"id":"https://openalex.org/keywords/tensor-algebra","display_name":"Tensor algebra","score":0.4183211922645569},{"id":"https://openalex.org/keywords/structure-tensor","display_name":"Structure tensor","score":0.4134410619735718},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.32925862073898315},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.25050073862075806},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.21267130970954895},{"id":"https://openalex.org/keywords/algebra-over-a-field","display_name":"Algebra over a field","score":0.18160197138786316},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.163426011800766},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.10668084025382996},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.0908525288105011}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7379875183105469},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6327292919158936},{"id":"https://openalex.org/C155281189","wikidata":"https://www.wikidata.org/wiki/Q3518150","display_name":"Tensor (intrinsic definition)","level":2,"score":0.5836511254310608},{"id":"https://openalex.org/C74193536","wikidata":"https://www.wikidata.org/wiki/Q574844","display_name":"Kernel (algebra)","level":2,"score":0.5291262865066528},{"id":"https://openalex.org/C170723468","wikidata":"https://www.wikidata.org/wiki/Q182933","display_name":"x86","level":3,"score":0.4785928428173065},{"id":"https://openalex.org/C1680195","wikidata":"https://www.wikidata.org/wiki/Q2296021","display_name":"Tensor algebra","level":5,"score":0.4183211922645569},{"id":"https://openalex.org/C113315163","wikidata":"https://www.wikidata.org/wiki/Q7625159","display_name":"Structure tensor","level":3,"score":0.4134410619735718},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.32925862073898315},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.25050073862075806},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.21267130970954895},{"id":"https://openalex.org/C136119220","wikidata":"https://www.wikidata.org/wiki/Q1000660","display_name":"Algebra over a field","level":2,"score":0.18160197138786316},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.163426011800766},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.10668084025382996},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.0908525288105011},{"id":"https://openalex.org/C81999800","wikidata":"https://www.wikidata.org/wiki/Q1454725","display_name":"Current algebra","level":3,"score":0.0},{"id":"https://openalex.org/C100376341","wikidata":"https://www.wikidata.org/wiki/Q649977","display_name":"Jordan algebra","level":4,"score":0.0},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0},{"id":"https://openalex.org/C115961682","wikidata":"https://www.wikidata.org/wiki/Q860623","display_name":"Image (mathematics)","level":2,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/3091966.3091968","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3091966.3091968","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 4th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:1704.04374","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1704.04374","pdf_url":"https://arxiv.org/pdf/1704.04374","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"text"},{"id":"mag:2607448249","is_oa":true,"landing_page_url":"http://export.arxiv.org/pdf/1704.04374","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"arXiv (Cornell University)","raw_type":null},{"id":"doi:10.48550/arxiv.1704.04374","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.1704.04374","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Preprint"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:1704.04374","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1704.04374","pdf_url":"https://arxiv.org/pdf/1704.04374","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"text"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G1615501055","display_name":null,"funder_award_id":"GSC 111","funder_id":"https://openalex.org/F4320320879","funder_display_name":"Deutsche Forschungsgemeinschaft"}],"funders":[{"id":"https://openalex.org/F4320320879","display_name":"Deutsche Forschungsgemeinschaft","ror":"https://ror.org/018mejw64"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2607448249.pdf","grobid_xml":"https://content.openalex.org/works/W2607448249.grobid-xml"},"referenced_works_count":23,"referenced_works":["https://openalex.org/W1789336918","https://openalex.org/W1912350778","https://openalex.org/W1979796968","https://openalex.org/W1985734797","https://openalex.org/W2017345827","https://openalex.org/W2019463754","https://openalex.org/W2038945443","https://openalex.org/W2051325990","https://openalex.org/W2069864004","https://openalex.org/W2072991195","https://openalex.org/W2092930273","https://openalex.org/W2098614082","https://openalex.org/W2102182691","https://openalex.org/W2115897625","https://openalex.org/W2127226421","https://openalex.org/W2176391467","https://openalex.org/W2187904758","https://openalex.org/W2214596652","https://openalex.org/W2252007067","https://openalex.org/W2466677533","https://openalex.org/W2611747087","https://openalex.org/W3103952756","https://openalex.org/W3105468881"],"related_works":["https://openalex.org/W2963482281","https://openalex.org/W2513407679","https://openalex.org/W2751100001","https://openalex.org/W2963137752","https://openalex.org/W2004642969","https://openalex.org/W2956014075","https://openalex.org/W2952334899","https://openalex.org/W2312000176","https://openalex.org/W2102200144","https://openalex.org/W3080905247","https://openalex.org/W3197787694","https://openalex.org/W2967617495","https://openalex.org/W3174786754","https://openalex.org/W3099136136","https://openalex.org/W2159846564","https://openalex.org/W2750586907","https://openalex.org/W2964042084","https://openalex.org/W3113993425","https://openalex.org/W3046254284","https://openalex.org/W2117148224"],"abstract_inverted_index":{"Recently":[0],"we":[1,55],"presented":[2],"TTC,":[3,67],"a":[4,87,125,137,155],"domain-specific":[5],"compiler":[6],"for":[7],"tensor":[8,40,45,142,168,188],"transpositions.":[9],"Despite":[10],"the":[11,14,17,34,39,43,57,106,173,178,184],"fact":[12],"that":[13,159],"performance":[15,122,186],"of":[16,129,140,160,175,187],"generated":[18],"code":[19],"is":[20],"nearly":[21],"optimal,":[22],"due":[23],"to":[24,66,98,100,134,158,192],"its":[25],"offline":[26],"nature,":[27],"TTC":[28],"cannot":[29],"be":[30],"utilized":[31],"in":[32,37],"all":[33],"application":[35],"codes":[36],"which":[38],"sizes":[41],"and":[42,75,144,162],"necessary":[44],"permutations":[46],"are":[47],"determined":[48],"at":[49,131],"runtime.":[50],"To":[51],"overcome":[52],"this":[53],"limitation,":[54],"introduce":[56],"open-source":[58],"C++":[59],"library":[60],"High-Performance":[61],"Tensor":[62,180],"Transposition":[63],"(HPTT).":[64],"Similar":[65],"HPTT":[68,96,114,153,176],"incorporates":[69],"optimizations":[70],"such":[71],"as":[72],"blocking,":[73],"multi-threading,":[74],"explicit":[76],"vectorization;":[77],"furthermore":[78],"it":[79],"decomposes":[80],"any":[81],"transposition":[82,169],"into":[83,177],"multiple":[84],"loops":[85],"around":[86],"so":[88],"called":[89],"micro-kernel.":[90],"This":[91],"modular":[92],"design-inspired":[93],"by":[94,103,121,190],"BLIS-makes":[95],"easy":[97],"port":[99],"different":[101,141],"architectures,":[102],"only":[104],"replacing":[105],"hand-vectorized":[107],"micro-kernel":[108],"(e.g.,a":[109],"4":[110,112],"x":[111],"transpose).":[113],"also":[115],"offers":[116],"an":[117],"optional":[118],"autotuning":[119],"framework-guided":[120],"heuristics-that":[123],"explores":[124],"vast":[126],"search":[127],"space":[128],"implementations":[130],"runtime":[132],"(similar":[133],"FFTW).":[135],"Across":[136],"wide":[138],"range":[139],"transpositions":[143],"architectures":[145],"(e.g.,":[146],"Intel":[147],"Ivy":[148],"Bridge,":[149],"ARMv7,":[150],"IBM":[151],"Power7),":[152],"attains":[154],"bandwidth":[156],"comparable":[157],"SAXPY,":[161],"yields":[163],"remarkable":[164],"speedups":[165],"over":[166],"Eigen's":[167],"implementation.":[170],"Most":[171],"importantly,":[172],"integration":[174],"Cyclops":[179],"Framework":[181],"(CTF)":[182],"improves":[183],"overall":[185],"contractions":[189],"up":[191],"3.1x.":[193]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2020,"cited_by_count":1}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
