{"id":"https://openalex.org/W3123063474","doi":"https://doi.org/10.1109/cgo51591.2021.9370331","title":"Seamless Compiler Integration of Variable Precision Floating-Point Arithmetic","display_name":"Seamless Compiler Integration of Variable Precision Floating-Point Arithmetic","publication_year":2021,"publication_date":"2021-02-27","ids":{"openalex":"https://openalex.org/W3123063474","doi":"https://doi.org/10.1109/cgo51591.2021.9370331","mag":"3123063474"},"language":"en","primary_location":{"id":"doi:10.1109/cgo51591.2021.9370331","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo51591.2021.9370331","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},"type":"preprint","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/A5041427628","display_name":"Tiago Trevisan Jost","orcid":"https://orcid.org/0000-0002-0601-7247"},"institutions":[{"id":"https://openalex.org/I899635006","display_name":"Universit\u00e9 Grenoble Alpes","ror":"https://ror.org/02rx3b187","country_code":"FR","type":"education","lineage":["https://openalex.org/I899635006"]},{"id":"https://openalex.org/I2738703131","display_name":"Commissariat \u00e0 l'\u00c9nergie Atomique et aux \u00c9nergies Alternatives","ror":"https://ror.org/00jjx8s55","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131"]},{"id":"https://openalex.org/I4210085861","display_name":"Laboratoire d'Int\u00e9gration des Syst\u00e8mes et des Technologies","ror":"https://ror.org/000dbcc61","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I2738703131","https://openalex.org/I277688954","https://openalex.org/I4210085861","https://openalex.org/I4210117989"]},{"id":"https://openalex.org/I3020098449","display_name":"CEA Grenoble","ror":"https://ror.org/02mg6n827","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I3020098449"]}],"countries":["FR"],"is_corresponding":true,"raw_author_name":"Tiago Trevisan Jost","raw_affiliation_strings":["Univ. Grenoble Alpes, CEA LIST, Grenoble, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Univ. Grenoble Alpes, CEA LIST, Grenoble, France","institution_ids":["https://openalex.org/I4210085861","https://openalex.org/I899635006","https://openalex.org/I3020098449","https://openalex.org/I2738703131"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5048568686","display_name":"Yves Durand","orcid":"https://orcid.org/0000-0002-3146-8461"},"institutions":[{"id":"https://openalex.org/I2738703131","display_name":"Commissariat \u00e0 l'\u00c9nergie Atomique et aux \u00c9nergies Alternatives","ror":"https://ror.org/00jjx8s55","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131"]},{"id":"https://openalex.org/I4210085861","display_name":"Laboratoire d'Int\u00e9gration des Syst\u00e8mes et des Technologies","ror":"https://ror.org/000dbcc61","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I2738703131","https://openalex.org/I277688954","https://openalex.org/I4210085861","https://openalex.org/I4210117989"]},{"id":"https://openalex.org/I3020098449","display_name":"CEA Grenoble","ror":"https://ror.org/02mg6n827","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I3020098449"]},{"id":"https://openalex.org/I899635006","display_name":"Universit\u00e9 Grenoble Alpes","ror":"https://ror.org/02rx3b187","country_code":"FR","type":"education","lineage":["https://openalex.org/I899635006"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Yves Durand","raw_affiliation_strings":["Univ. Grenoble Alpes, CEA LIST, Grenoble, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Univ. Grenoble Alpes, CEA LIST, Grenoble, France","institution_ids":["https://openalex.org/I4210085861","https://openalex.org/I899635006","https://openalex.org/I3020098449","https://openalex.org/I2738703131"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5081881297","display_name":"Christian Fabre","orcid":"https://orcid.org/0000-0002-9117-2056"},"institutions":[{"id":"https://openalex.org/I899635006","display_name":"Universit\u00e9 Grenoble Alpes","ror":"https://ror.org/02rx3b187","country_code":"FR","type":"education","lineage":["https://openalex.org/I899635006"]},{"id":"https://openalex.org/I2738703131","display_name":"Commissariat \u00e0 l'\u00c9nergie Atomique et aux \u00c9nergies Alternatives","ror":"https://ror.org/00jjx8s55","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131"]},{"id":"https://openalex.org/I3020098449","display_name":"CEA Grenoble","ror":"https://ror.org/02mg6n827","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I3020098449"]},{"id":"https://openalex.org/I4210085861","display_name":"Laboratoire d'Int\u00e9gration des Syst\u00e8mes et des Technologies","ror":"https://ror.org/000dbcc61","country_code":"FR","type":"government","lineage":["https://openalex.org/I2738703131","https://openalex.org/I2738703131","https://openalex.org/I277688954","https://openalex.org/I4210085861","https://openalex.org/I4210117989"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Christian Fabre","raw_affiliation_strings":["Univ. Grenoble Alpes, CEA LIST, Grenoble, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Univ. Grenoble Alpes, CEA LIST, Grenoble, France","institution_ids":["https://openalex.org/I4210085861","https://openalex.org/I899635006","https://openalex.org/I3020098449","https://openalex.org/I2738703131"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5063162788","display_name":"Albert Cohen","orcid":"https://orcid.org/0000-0002-8866-5343"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Albert Cohen","raw_affiliation_strings":["Google, Paris, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Google, Paris, France","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5113546155","display_name":"Frederic Petrot","orcid":null},"institutions":[{"id":"https://openalex.org/I899635006","display_name":"Universit\u00e9 Grenoble Alpes","ror":"https://ror.org/02rx3b187","country_code":"FR","type":"education","lineage":["https://openalex.org/I899635006"]},{"id":"https://openalex.org/I1294671590","display_name":"Centre National de la Recherche Scientifique","ror":"https://ror.org/02feahw73","country_code":"FR","type":"government","lineage":["https://openalex.org/I1294671590"]},{"id":"https://openalex.org/I106785703","display_name":"Institut polytechnique de Grenoble","ror":"https://ror.org/05sbt2524","country_code":"FR","type":"education","lineage":["https://openalex.org/I106785703","https://openalex.org/I899635006"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Frederic Petrot","raw_affiliation_strings":["Univ. Grenoble Alpes, CNRS Grenoble INP, TIMA, Grenoble, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Univ. Grenoble Alpes, CNRS Grenoble INP, TIMA, Grenoble, France","institution_ids":["https://openalex.org/I106785703","https://openalex.org/I899635006","https://openalex.org/I1294671590"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5041427628"],"corresponding_institution_ids":["https://openalex.org/I2738703131","https://openalex.org/I3020098449","https://openalex.org/I4210085861","https://openalex.org/I899635006"],"apc_list":null,"apc_paid":null,"fwci":0.761,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.74595124,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"65","last_page":"76"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11697","display_name":"Numerical Methods and Algorithms","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T11697","display_name":"Numerical Methods and Algorithms","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/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/T10363","display_name":"Low-power high-performance VLSI design","score":0.9921000003814697,"subfield":{"id":"https://openalex.org/subfields/2208","display_name":"Electrical and Electronic Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"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.8764054775238037},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7621119022369385},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5012164115905762},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4739644229412079},{"id":"https://openalex.org/keywords/coprocessor","display_name":"Coprocessor","score":0.471225380897522},{"id":"https://openalex.org/keywords/variable","display_name":"Variable (mathematics)","score":0.4490891993045807},{"id":"https://openalex.org/keywords/factor","display_name":"Factor (programming language)","score":0.4430508613586426},{"id":"https://openalex.org/keywords/double-precision-floating-point-format","display_name":"Double-precision floating-point format","score":0.4303741157054901},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.41912639141082764},{"id":"https://openalex.org/keywords/ieee-floating-point","display_name":"IEEE floating point","score":0.4165525734424591},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3943282961845398},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.35749679803848267}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8764054775238037},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7621119022369385},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5012164115905762},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4739644229412079},{"id":"https://openalex.org/C86111242","wikidata":"https://www.wikidata.org/wiki/Q859595","display_name":"Coprocessor","level":2,"score":0.471225380897522},{"id":"https://openalex.org/C182365436","wikidata":"https://www.wikidata.org/wiki/Q50701","display_name":"Variable (mathematics)","level":2,"score":0.4490891993045807},{"id":"https://openalex.org/C2781039887","wikidata":"https://www.wikidata.org/wiki/Q1391724","display_name":"Factor (programming language)","level":2,"score":0.4430508613586426},{"id":"https://openalex.org/C35912277","wikidata":"https://www.wikidata.org/wiki/Q1243369","display_name":"Double-precision floating-point format","level":3,"score":0.4303741157054901},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.41912639141082764},{"id":"https://openalex.org/C137231763","wikidata":"https://www.wikidata.org/wiki/Q828287","display_name":"IEEE floating point","level":3,"score":0.4165525734424591},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3943282961845398},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.35749679803848267},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/cgo51591.2021.9370331","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo51591.2021.9370331","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},{"id":"pmh:oai:HAL:hal-03169752v1","is_oa":false,"landing_page_url":"https://hal.science/hal-03169752","pdf_url":null,"source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nc","license_id":"https://openalex.org/licenses/cc-by-nc","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"International Symposium on Code Generation and Optimization (CGO 2021), Feb 2021, Atlanta, United States","raw_type":"Conference papers"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G4230703500","display_name":null,"funder_award_id":"ANR-18-CE46-0011","funder_id":"https://openalex.org/F4320320883","funder_display_name":"Agence Nationale de la Recherche"}],"funders":[{"id":"https://openalex.org/F4320320883","display_name":"Agence Nationale de la Recherche","ror":"https://ror.org/00rbzpz17"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":53,"referenced_works":["https://openalex.org/W354029271","https://openalex.org/W1584707396","https://openalex.org/W1768849904","https://openalex.org/W1841592590","https://openalex.org/W1965889126","https://openalex.org/W1969213662","https://openalex.org/W1977146902","https://openalex.org/W1988425770","https://openalex.org/W1988888548","https://openalex.org/W2020804487","https://openalex.org/W2081368694","https://openalex.org/W2094190665","https://openalex.org/W2153185479","https://openalex.org/W2165693128","https://openalex.org/W2207050309","https://openalex.org/W2242464395","https://openalex.org/W2257139249","https://openalex.org/W2316564661","https://openalex.org/W2566629575","https://openalex.org/W2606963276","https://openalex.org/W2623582941","https://openalex.org/W2736805385","https://openalex.org/W2743322459","https://openalex.org/W2752879223","https://openalex.org/W2786704328","https://openalex.org/W2798751785","https://openalex.org/W2798846955","https://openalex.org/W2803254188","https://openalex.org/W2806318734","https://openalex.org/W2898897923","https://openalex.org/W2899063892","https://openalex.org/W2904622547","https://openalex.org/W2944490985","https://openalex.org/W2948396960","https://openalex.org/W2962775754","https://openalex.org/W2963374099","https://openalex.org/W2963711383","https://openalex.org/W2964374937","https://openalex.org/W2980222792","https://openalex.org/W2981965202","https://openalex.org/W2999777638","https://openalex.org/W3002190294","https://openalex.org/W3011924825","https://openalex.org/W3022909171","https://openalex.org/W3098056654","https://openalex.org/W4246166885","https://openalex.org/W4248206987","https://openalex.org/W4251875201","https://openalex.org/W6638783484","https://openalex.org/W6736295056","https://openalex.org/W6742278618","https://openalex.org/W6750478715","https://openalex.org/W6987020231"],"related_works":["https://openalex.org/W2596474508","https://openalex.org/W3215589575","https://openalex.org/W1573821047","https://openalex.org/W2565957982","https://openalex.org/W2730658480","https://openalex.org/W3193325075","https://openalex.org/W2587538765","https://openalex.org/W2797902698","https://openalex.org/W2169016399","https://openalex.org/W2576390192"],"abstract_inverted_index":{"Floating-Point":[0],"(FP)":[1],"units":[2],"in":[3,51,123,180,206],"processors":[4],"are":[5],"generally":[6],"limited":[7],"to":[8,47],"supporting":[9,79],"a":[10,21,91,142,172,193],"subset":[11],"of":[12,58,66,111,141,174,183,195],"formats":[13],"defined":[14],"by":[15,171,192],"the":[16,56,59,67,95,126,139,151,163,168,184],"IEEE":[17,33],"754":[18],"standard.":[19],"As":[20],"result,":[22],"high-efficiency":[23],"languages":[24],"and":[25,36,45,54,77,83,89,102,148,177,187,191],"optimizing":[26,157],"compilers":[27],"for":[28,138,150,167,204],"high-performance":[29],"computing":[30],"only":[31],"support":[32],"standard":[34],"types":[35],"applications":[37],"needing":[38],"higher":[39],"precision":[40,82,144],"involve":[41],"cumbersome":[42],"memory":[43],"management":[44],"calls":[46],"external":[48],"libraries,":[49],"resulting":[50],"code":[52,135],"bloat":[53],"making":[55],"intent":[57],"program":[60],"unclear.":[61],"We":[62,87],"present":[63],"an":[64,117,199],"extension":[65],"C":[68],"type":[69,100],"system":[70,101],"that":[71],"can":[72],"represent":[73],"generic":[74],"FP":[75,104,145],"operations":[76],"formats,":[78],"both":[80],"static":[81],"dynamically":[84],"variable":[85,143],"precision.":[86],"design":[88],"implement":[90],"compilation":[92,158],"flow":[93,159],"bridging":[94],"abstraction":[96],"gap":[97],"between":[98],"this":[99],"low-level":[103],"instructions":[105],"or":[106],"software":[107],"libraries.":[108],"The":[109],"effectiveness":[110],"our":[112],"solution":[113],"is":[114],"demonstrated":[115],"through":[116],"LLVM-based":[118],"implementation,":[119],"leveraging":[120],"aggressive":[121],"optimizations":[122],"LLVM":[124],"including":[125],"Polly":[127],"loop":[128],"nest":[129],"optimizer,":[130],"which":[131],"targets":[132],"two":[133],"backend":[134],"generators:":[136],"one":[137,149],"ISA":[140],"arithmetic":[146],"coprocessor,":[147],"MPFR":[152,161,169],"multi-precision":[153],"floating-point":[154],"library.":[155],"Our":[156],"targeting":[160],"outperforms":[162],"Boost":[164],"programming":[165],"interface":[166],"library":[170],"factor":[173,194],"1.80":[175],"\u00d7":[176,179],"1.67":[178],"sequential":[181],"execution":[182],"Poly":[185],"Bench":[186],"RAJAPerf":[188,205],"suites,":[189],"respectively,":[190],"7.62":[196],"x":[197],"on":[198],"8-core":[200],"(and":[201],"16-thread)":[202],"machine":[203],"OpenMP.":[207]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2026-05-07T13:39:58.223016","created_date":"2025-10-10T00:00:00"}
