{"id":"https://openalex.org/W4379537250","doi":"https://doi.org/10.1145/3591236","title":"Mosaic: An Interoperable Compiler for Tensor Algebra","display_name":"Mosaic: An Interoperable Compiler for Tensor Algebra","publication_year":2023,"publication_date":"2023-06-06","ids":{"openalex":"https://openalex.org/W4379537250","doi":"https://doi.org/10.1145/3591236"},"language":"en","primary_location":{"id":"doi:10.1145/3591236","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591236","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591236","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3591236","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5102793197","display_name":"Manya Bansal","orcid":"https://orcid.org/0009-0007-8570-1947"},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Manya Bansal","raw_affiliation_strings":["Stanford University, USA"],"raw_orcid":"https://orcid.org/0009-0007-8570-1947","affiliations":[{"raw_affiliation_string":"Stanford University, USA","institution_ids":["https://openalex.org/I97018004"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5039681071","display_name":"Olivia Hsu","orcid":"https://orcid.org/0000-0002-4195-8106"},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Olivia Hsu","raw_affiliation_strings":["Stanford University, USA"],"raw_orcid":"https://orcid.org/0000-0002-4195-8106","affiliations":[{"raw_affiliation_string":"Stanford University, USA","institution_ids":["https://openalex.org/I97018004"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5023857198","display_name":"Kunle Olukotun","orcid":"https://orcid.org/0000-0002-8779-0636"},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Kunle Olukotun","raw_affiliation_strings":["Stanford University, USA"],"raw_orcid":"https://orcid.org/0000-0002-8779-0636","affiliations":[{"raw_affiliation_string":"Stanford University, USA","institution_ids":["https://openalex.org/I97018004"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5041886781","display_name":"Fredrik Kj\u00f8lstad","orcid":"https://orcid.org/0000-0002-2267-903X"},"institutions":[{"id":"https://openalex.org/I97018004","display_name":"Stanford University","ror":"https://ror.org/00f54p054","country_code":"US","type":"education","lineage":["https://openalex.org/I97018004"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Fredrik Kjolstad","raw_affiliation_strings":["Stanford University, USA"],"raw_orcid":"https://orcid.org/0000-0002-2267-903X","affiliations":[{"raw_affiliation_string":"Stanford University, USA","institution_ids":["https://openalex.org/I97018004"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I97018004"],"apc_list":null,"apc_paid":null,"fwci":3.9146,"has_fulltext":true,"cited_by_count":17,"citation_normalized_percentile":{"value":0.93824633,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":"7","issue":"PLDI","first_page":"394","last_page":"419"},"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/T13650","display_name":"Computational Physics and Python Applications","score":0.9779999852180481,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9750000238418579,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7526492476463318},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7453659772872925},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.6450919508934021},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5867284536361694},{"id":"https://openalex.org/keywords/mosaic","display_name":"Mosaic","score":0.5612143278121948},{"id":"https://openalex.org/keywords/leverage","display_name":"Leverage (statistics)","score":0.4653877317905426},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.43783852458000183},{"id":"https://openalex.org/keywords/tensor-algebra","display_name":"Tensor algebra","score":0.4182448387145996},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3935614228248596},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3352035880088806},{"id":"https://openalex.org/keywords/algebra-over-a-field","display_name":"Algebra over a field","score":0.3220691978931427},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.24090957641601562},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.2265770137310028},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.18948915600776672},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.16358748078346252},{"id":"https://openalex.org/keywords/pure-mathematics","display_name":"Pure mathematics","score":0.12875774502754211},{"id":"https://openalex.org/keywords/algebra-representation","display_name":"Algebra representation","score":0.09255638718605042}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7526492476463318},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7453659772872925},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.6450919508934021},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5867284536361694},{"id":"https://openalex.org/C110739175","wikidata":"https://www.wikidata.org/wiki/Q133067","display_name":"Mosaic","level":2,"score":0.5612143278121948},{"id":"https://openalex.org/C153083717","wikidata":"https://www.wikidata.org/wiki/Q6535263","display_name":"Leverage (statistics)","level":2,"score":0.4653877317905426},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.43783852458000183},{"id":"https://openalex.org/C1680195","wikidata":"https://www.wikidata.org/wiki/Q2296021","display_name":"Tensor algebra","level":5,"score":0.4182448387145996},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3935614228248596},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3352035880088806},{"id":"https://openalex.org/C136119220","wikidata":"https://www.wikidata.org/wiki/Q1000660","display_name":"Algebra over a field","level":2,"score":0.3220691978931427},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.24090957641601562},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.2265770137310028},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.18948915600776672},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.16358748078346252},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.12875774502754211},{"id":"https://openalex.org/C14394260","wikidata":"https://www.wikidata.org/wiki/Q4723980","display_name":"Algebra representation","level":3,"score":0.09255638718605042},{"id":"https://openalex.org/C95457728","wikidata":"https://www.wikidata.org/wiki/Q309","display_name":"History","level":0,"score":0.0},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"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/C166957645","wikidata":"https://www.wikidata.org/wiki/Q23498","display_name":"Archaeology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3591236","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591236","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591236","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3591236","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3591236","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3591236","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G7568964499","display_name":"RTML: Large: Continuous Adaptation for Decision Streams","funder_award_id":"1937301","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G7582773103","display_name":"CAREER: A Unified Compiler for Sparse Array Operations and Relational Algebra","funder_award_id":"2143061","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"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4379537250.pdf","grobid_xml":"https://content.openalex.org/works/W4379537250.grobid-xml"},"referenced_works_count":54,"referenced_works":["https://openalex.org/W1988425770","https://openalex.org/W1989988531","https://openalex.org/W2006973305","https://openalex.org/W2034861439","https://openalex.org/W2035080386","https://openalex.org/W2037271374","https://openalex.org/W2049487370","https://openalex.org/W2054141820","https://openalex.org/W2055312318","https://openalex.org/W2089437293","https://openalex.org/W2108138101","https://openalex.org/W2120575449","https://openalex.org/W2164003586","https://openalex.org/W2252007067","https://openalex.org/W2471164860","https://openalex.org/W2590246587","https://openalex.org/W2794952988","https://openalex.org/W2798482398","https://openalex.org/W2898106867","https://openalex.org/W2898123186","https://openalex.org/W2945146780","https://openalex.org/W2949417445","https://openalex.org/W2950775702","https://openalex.org/W2953212265","https://openalex.org/W2961619211","https://openalex.org/W2979310060","https://openalex.org/W2980270412","https://openalex.org/W3016542674","https://openalex.org/W3016735325","https://openalex.org/W3040024858","https://openalex.org/W3103168911","https://openalex.org/W3108012228","https://openalex.org/W3121402054","https://openalex.org/W3130554079","https://openalex.org/W3131704052","https://openalex.org/W3155922894","https://openalex.org/W3158233278","https://openalex.org/W3165460533","https://openalex.org/W3190681843","https://openalex.org/W3207208385","https://openalex.org/W4200390336","https://openalex.org/W4220690649","https://openalex.org/W4230183876","https://openalex.org/W4232006005","https://openalex.org/W4255450819","https://openalex.org/W4281658036","https://openalex.org/W4281707342","https://openalex.org/W4281932226","https://openalex.org/W4290648346","https://openalex.org/W4307380766","https://openalex.org/W4308614321","https://openalex.org/W4327911434","https://openalex.org/W4327911471","https://openalex.org/W6894109158"],"related_works":["https://openalex.org/W2493552207","https://openalex.org/W2397874377","https://openalex.org/W650988184","https://openalex.org/W2162410319","https://openalex.org/W2137356287","https://openalex.org/W4321184925","https://openalex.org/W1483618713","https://openalex.org/W60915090","https://openalex.org/W2025840053","https://openalex.org/W2161692994"],"abstract_inverted_index":{"We":[0,87],"introduce":[1],"Mosaic,":[2,188],"a":[3,33,36,39,60,141,151],"sparse":[4],"tensor":[5,11,18],"algebra":[6,19],"compiler":[7],"that":[8,97,131,144],"can":[9,24,73,105,122,145],"bind":[10,32],"expressions":[12],"to":[13,35,49,80,110,127,150,187],"external":[14,51,133,155,174,182],"functions":[15,30,52,82,104,134,175,183],"of":[16,91,108,125,153,195],"other":[17,136],"libraries":[20],"and":[21,31,53,78,101,161,178],"compilers.":[22],"Users":[23],"extend":[25],"Mosaic":[26,42,138],"by":[27,70,95,166],"adding":[28,172],"new":[29,173],"sub-expression":[34],"function":[37],"using":[38,59],"scheduling":[40],"API.":[41],"substitutes":[43],"the":[44,50,56,65,84,89,158,169],"bound":[45],"sub-expressions":[46],"with":[47,189],"calls":[48,79,132],"automatically":[54,146],"generates":[55],"remaining":[57],"code":[58,62,67,114,121,130],"default":[61],"generator.":[63],"As":[64],"generated":[66],"is":[68,176],"fused":[69,113,120],"default,":[71],"users":[72],"productively":[74],"leverage":[75],"both":[76],"fusion":[77],"specialized":[81,102],"within":[83],"same":[85],"compiler.":[86],"demonstrate":[88],"benefits":[90],"our":[92],"dual":[93],"approach":[94],"showing":[96],"calling":[98],"hand-written":[99],"CPU":[100],"hardware":[103],"provide":[106,123],"speedups":[107,124],"up":[109,126],"206\u00d7":[111],"against":[112,129],"in":[115,135],"some":[116],"cases,":[117],"while":[118],"generating":[119],"3.57\u00d7":[128],"cases.":[137],"also":[139],"offers":[140],"search":[142,163],"system":[143],"map":[147],"an":[148],"expression":[149],"set":[152],"registered":[154],"functions.":[156],"Both":[157],"explicit":[159],"binding":[160],"automatic":[162],"are":[164],"verified":[165],"Mosaic.":[167],"Additionally,":[168],"interface":[170],"for":[171],"simple":[177],"general.":[179],"Currently,":[180],"38":[181],"have":[184],"been":[185],"added":[186],"each":[190],"addition":[191],"averaging":[192],"20":[193],"lines":[194],"code.":[196]},"counts_by_year":[{"year":2026,"cited_by_count":4},{"year":2025,"cited_by_count":8},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":2}],"updated_date":"2026-08-06T08:24:18.245995","created_date":"2025-10-10T00:00:00"}
