{"id":"https://openalex.org/W4322008031","doi":"https://doi.org/10.1145/3585515","title":"CPFloat: A C Library for Simulating Low-precision Arithmetic","display_name":"CPFloat: A C Library for Simulating Low-precision Arithmetic","publication_year":2023,"publication_date":"2023-02-25","ids":{"openalex":"https://openalex.org/W4322008031","doi":"https://doi.org/10.1145/3585515"},"language":"en","primary_location":{"id":"doi:10.1145/3585515","doi":"https://doi.org/10.1145/3585515","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3585515","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3585515","source":{"id":"https://openalex.org/S163326656","display_name":"ACM Transactions on Mathematical Software","issn_l":"0098-3500","issn":["0098-3500","1557-7295"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["anvur-scientific","ccf-b","cwts-core","dongbi-b","jufo-3","norway-2","poland-200","russia-white-list-1"],"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":"ACM Transactions on Mathematical Software","raw_type":"journal-article"},"volume":null,"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3585515","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5024408748","display_name":"Massimiliano Fasi","orcid":"https://orcid.org/0000-0002-6015-391X","observed_orcids":["https://orcid.org/0000-0002-6015-391X"]},"institutions":[{"id":"https://openalex.org/I190082696","display_name":"Durham University","ror":"https://ror.org/01v29qb04","country_code":"GB","type":"education","lineage":["https://openalex.org/I190082696"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Massimiliano Fasi","raw_affiliation_strings":["Durham University, United Kingdom"],"raw_orcid":"https://orcid.org/0000-0002-6015-391X","affiliations":[{"raw_affiliation_string":"Durham University, United Kingdom","institution_ids":["https://openalex.org/I190082696"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5025035386","display_name":"Mantas Mikaitis","orcid":"https://orcid.org/0000-0001-8706-1436","observed_orcids":["https://orcid.org/0000-0001-8706-1436"]},"institutions":[{"id":"https://openalex.org/I130828816","display_name":"University of Leeds","ror":"https://ror.org/024mrxd33","country_code":"GB","type":"education","lineage":["https://openalex.org/I130828816"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Mantas Mikaitis","raw_affiliation_strings":["University of Leeds, United Kingdom"],"raw_orcid":"https://orcid.org/0000-0001-8706-1436","affiliations":[{"raw_affiliation_string":"University of Leeds, United Kingdom","institution_ids":["https://openalex.org/I130828816"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.4387,"has_fulltext":true,"cited_by_count":11,"citation_normalized_percentile":{"value":0.82459619,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":93,"max":97},"biblio":{"volume":"49","issue":"2","first_page":"1","last_page":"32"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11697","display_name":"Numerical Methods and Algorithms","score":1.0,"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":1.0,"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/T10363","display_name":"Low-power high-performance VLSI design","score":0.0,"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"}},{"id":"https://openalex.org/T13806","display_name":"Mathematical and Computational Methods","score":0.0,"subfield":{"id":"https://openalex.org/subfields/2611","display_name":"Modeling and Simulation"},"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/rounding-algorithms","display_name":"rounding algorithms","score":0.5640000104904175},{"id":"https://openalex.org/keywords/overflow-and-underflow","display_name":"overflow and underflow","score":0.9129999876022339},{"id":"https://openalex.org/keywords/bit-manipulation","display_name":"bit manipulation","score":0.75},{"id":"https://openalex.org/keywords/integer-arithmetic","display_name":"integer arithmetic","score":0.7390000224113464},{"id":"https://openalex.org/keywords/numerical-error","display_name":"numerical error","score":0.37700000405311584},{"id":"https://openalex.org/keywords/c-library","display_name":"C++ library","score":0.5360000133514404},{"id":"https://openalex.org/keywords/performance-optimization","display_name":"performance optimization","score":0.4129999876022339}],"concepts":[{"id":"https://openalex.org/C136625980","wikidata":"https://www.wikidata.org/wiki/Q663208","display_name":"Rounding","level":2,"score":0.9281644821166992},{"id":"https://openalex.org/C3265923","wikidata":"https://www.wikidata.org/wiki/Q669129","display_name":"Arithmetic underflow","level":2,"score":0.8318049311637878},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.7928537130355835},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7486350536346436},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.7071922421455383},{"id":"https://openalex.org/C83581934","wikidata":"https://www.wikidata.org/wiki/Q527381","display_name":"Arbitrary-precision arithmetic","level":2,"score":0.7068979144096375},{"id":"https://openalex.org/C133095886","wikidata":"https://www.wikidata.org/wiki/Q1307173","display_name":"Single-precision floating-point format","level":3,"score":0.6751792430877686},{"id":"https://openalex.org/C137231763","wikidata":"https://www.wikidata.org/wiki/Q828287","display_name":"IEEE floating point","level":3,"score":0.5932231545448303},{"id":"https://openalex.org/C68339613","wikidata":"https://www.wikidata.org/wiki/Q1549489","display_name":"Speedup","level":2,"score":0.5660126805305481},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.5187580585479736},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5136503577232361},{"id":"https://openalex.org/C35912277","wikidata":"https://www.wikidata.org/wiki/Q1243369","display_name":"Double-precision floating-point format","level":3,"score":0.4735143482685089},{"id":"https://openalex.org/C182775192","wikidata":"https://www.wikidata.org/wiki/Q913725","display_name":"Saturation arithmetic","level":3,"score":0.42986592650413513},{"id":"https://openalex.org/C204323151","wikidata":"https://www.wikidata.org/wiki/Q905424","display_name":"Range (aeronautics)","level":2,"score":0.4216134548187256},{"id":"https://openalex.org/C2780365114","wikidata":"https://www.wikidata.org/wiki/Q169478","display_name":"MATLAB","level":2,"score":0.4192807972431183},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3770061135292053},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.35879021883010864},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.20609599351882935},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.10128894448280334},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0},{"id":"https://openalex.org/C192562407","wikidata":"https://www.wikidata.org/wiki/Q228736","display_name":"Materials science","level":0,"score":0.0},{"id":"https://openalex.org/C159985019","wikidata":"https://www.wikidata.org/wiki/Q181790","display_name":"Composite material","level":1,"score":0.0}],"mesh":[],"locations_count":6,"locations":[{"id":"doi:10.1145/3585515","doi":"https://doi.org/10.1145/3585515","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3585515","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3585515","source":{"id":"https://openalex.org/S163326656","display_name":"ACM Transactions on Mathematical Software","issn_l":"0098-3500","issn":["0098-3500","1557-7295"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["anvur-scientific","ccf-b","cwts-core","dongbi-b","jufo-3","norway-2","poland-200","russia-white-list-1"],"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":"ACM Transactions on Mathematical Software","raw_type":"journal-article"},{"id":"pmh:oai:eprints.maths.manchester.ac.uk.MIMS.EPrints:2850","doi":null,"is_oa":false,"landing_page_url":"http://eprints.maths.manchester.ac.uk/2850/3/fami22.pdf","pdf_url":"http://eprints.maths.manchester.ac.uk/2850/3/fami22.pdf","source":{"id":"https://openalex.org/S4306400452","display_name":"MIMS EPrints (University of Southampton)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I43439940","host_organization_name":"University of Southampton","host_organization_lineage":["https://openalex.org/I43439940"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"","raw_type":"MIMS Preprint"},{"id":"pmh:oai:eprints.maths.manchester.ac.uk.MIMS.EPrints:2855","doi":null,"is_oa":false,"landing_page_url":"http://eprints.maths.manchester.ac.uk/2855/1/fami22.pdf","pdf_url":"http://eprints.maths.manchester.ac.uk/2855/1/fami22.pdf","source":{"id":"https://openalex.org/S4306400452","display_name":"MIMS EPrints (University of Southampton)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I43439940","host_organization_name":"University of Southampton","host_organization_lineage":["https://openalex.org/I43439940"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"","raw_type":"MIMS Preprint"},{"id":"pmh:oai:eprints.maths.manchester.ac.uk.MIMS.EPrints:2873","doi":null,"is_oa":false,"landing_page_url":"http://eprints.maths.manchester.ac.uk/2873/1/fami22.pdf","pdf_url":"http://eprints.maths.manchester.ac.uk/2873/1/fami22.pdf","source":{"id":"https://openalex.org/S4306400452","display_name":"MIMS EPrints (University of Southampton)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I43439940","host_organization_name":"University of Southampton","host_organization_lineage":["https://openalex.org/I43439940"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"","raw_type":"MIMS Preprint"},{"id":"pmh:oai:durham-repository.worktribe.com:1177500","doi":null,"is_oa":true,"landing_page_url":"https://durham-repository.worktribe.com/output/1177500","pdf_url":"https://durham-repository.worktribe.com/preview/1756739/1177500VoR.pdf","source":{"id":"https://openalex.org/S4306400188","display_name":"Durham Research Online (Durham University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I190082696","host_organization_name":"Durham University","host_organization_lineage":["https://openalex.org/I190082696"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Journal Article"},{"id":"pmh:oai:eprints.whiterose.ac.uk:196270","doi":null,"is_oa":true,"landing_page_url":"https://orcid.org/0000-0001-8706-1436>","pdf_url":"https://eprints.whiterose.ac.uk/id/eprint/196270/17/CPFloat%20A%20C%20Library%20for%20Simulating%20Low-precision%20Arithmetic.pdf","source":{"id":"https://openalex.org/S4306400854","display_name":"White Rose Research Online (University of Leeds, The University of Sheffield, University of York)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I2800616092","host_organization_name":"White Rose University Consortium","host_organization_lineage":["https://openalex.org/I2800616092"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Article"}],"best_oa_location":{"id":"doi:10.1145/3585515","doi":"https://doi.org/10.1145/3585515","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3585515","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3585515","source":{"id":"https://openalex.org/S163326656","display_name":"ACM Transactions on Mathematical Software","issn_l":"0098-3500","issn":["0098-3500","1557-7295"],"is_oa":false,"is_in_doaj":false,"is_core":true,"listed_in":["anvur-scientific","ccf-b","cwts-core","dongbi-b","jufo-3","norway-2","poland-200","russia-white-list-1"],"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":"ACM Transactions on Mathematical Software","raw_type":"journal-article"},"sustainable_development_goals":[],"sustainable_development_goals_aurora":[],"study_designs":[],"awards":[{"id":"https://openalex.org/G1322834978","display_name":"Inference, COmputation and Numerics for Insights into Cities (ICONIC)","funder_award_id":"EP/P020720/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G1935751110","display_name":null,"funder_award_id":"EP/P020720/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G5657471332","display_name":null,"funder_award_id":"UPD2019-0067","funder_id":"https://openalex.org/F4320311030","funder_display_name":"Istituto Nazionale di Alta Matematica \"Francesco Severi\""},{"id":"https://openalex.org/G6068856250","display_name":null,"funder_award_id":"INdAM\u2013GNCS Project 2020","funder_id":"https://openalex.org/F4320334079","funder_display_name":"Gruppo Nazionale per il Calcolo Scientifico"},{"id":"https://openalex.org/G6449781564","display_name":null,"funder_award_id":"UPD2019-0067","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G833980364","display_name":null,"funder_award_id":"UPD2019-0067","funder_id":"https://openalex.org/F4320315060","funder_display_name":"Wenner-Gren Stiftelserna"}],"funders":[{"id":"https://openalex.org/F4320311030","display_name":"Istituto Nazionale di Alta Matematica \"Francesco Severi\"","ror":"https://ror.org/01vx64p53"},{"id":"https://openalex.org/F4320315060","display_name":"Wenner-Gren Stiftelserna","ror":"https://ror.org/033b0v780"},{"id":"https://openalex.org/F4320320006","display_name":"Royal Society","ror":"https://ror.org/03wnrjx87"},{"id":"https://openalex.org/F4320334079","display_name":"Gruppo Nazionale per il Calcolo Scientifico","ror":"https://ror.org/02rnys730"},{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4322008031.pdf","grobid_xml":"https://content.openalex.org/works/W4322008031.grobid-xml"},"referenced_works_count":44,"referenced_works":["https://openalex.org/W178772886","https://openalex.org/W1533404702","https://openalex.org/W1966287322","https://openalex.org/W1969213662","https://openalex.org/W2016638338","https://openalex.org/W2020804487","https://openalex.org/W2101005153","https://openalex.org/W2116292260","https://openalex.org/W2120466770","https://openalex.org/W2169004268","https://openalex.org/W2204310803","https://openalex.org/W2207050309","https://openalex.org/W2255550028","https://openalex.org/W2518469319","https://openalex.org/W2536005622","https://openalex.org/W2548873382","https://openalex.org/W2555109231","https://openalex.org/W2560012549","https://openalex.org/W2607662938","https://openalex.org/W2739649174","https://openalex.org/W2743322459","https://openalex.org/W2783525259","https://openalex.org/W2887397219","https://openalex.org/W2896595778","https://openalex.org/W2904622547","https://openalex.org/W2937715180","https://openalex.org/W2981849318","https://openalex.org/W2995792110","https://openalex.org/W2999414607","https://openalex.org/W3014370804","https://openalex.org/W3016583665","https://openalex.org/W3021029305","https://openalex.org/W3023393331","https://openalex.org/W3132827079","https://openalex.org/W3140224665","https://openalex.org/W3176714321","https://openalex.org/W3208234968","https://openalex.org/W3211043030","https://openalex.org/W4210298930","https://openalex.org/W4212774754","https://openalex.org/W4230076678","https://openalex.org/W4233996382","https://openalex.org/W4283697602","https://openalex.org/W4283812690"],"related_works":["https://openalex.org/W2116803521","https://openalex.org/W2551094850","https://openalex.org/W2797902698","https://openalex.org/W1564887326","https://openalex.org/W3215589575","https://openalex.org/W2080210672","https://openalex.org/W2363539709","https://openalex.org/W4243574357","https://openalex.org/W4252124868","https://openalex.org/W4376144198"],"abstract_inverted_index":{"One":[0],"can":[1,49],"simulate":[2],"low-precision":[3,105,122,193],"floating-point":[4,129,194],"arithmetic":[5,11],"via":[6],"software":[7,125],"by":[8],"executing":[9],"each":[10],"operation":[12],"in":[13,57,134,172],"hardware":[14],"and":[15,41,46,86,116,140,149,175,186],"then":[16],"rounding":[17,30,96],"the":[18,21,61,69,92,120,127,132,136,155,183],"result":[19],"to":[20,54,79],"desired":[22],"number":[23],"of":[24,84,95,119,131,165],"significant":[25],"bits.":[26],"For":[27],"IEEE-compliant":[28],"formats,":[29],"requires":[31],"only":[32],"standard":[33],"mathematical":[34,114],"library":[35,70,102,143,188],"functions,":[36],"but":[37],"handling":[38],"subnormals,":[39],"underflow,":[40],"overflow":[42],"demands":[43],"special":[44],"attention,":[45],"numerical":[47,153],"errors":[48],"cause":[50],"mathematically":[51],"correct":[52],"formulae":[53],"behave":[55],"incorrectly":[56],"finite":[58],"arithmetic.":[59,151,195],"Moreover,":[60],"ensuing":[62],"implementations":[63],"are":[64,76,138],"not":[65,88],"necessarily":[66],"efficient,":[67],"as":[68],"functions":[71],"these":[72],"techniques":[73,157],"build":[74],"upon":[75],"typically":[77],"designed":[78],"handle":[80],"a":[81,100,159],"broad":[82],"range":[83],"cases":[85],"may":[87],"be":[89],"optimized":[90],"for":[91,103,111,189],"specific":[93],"needs":[94],"algorithms.":[97],"CPFloat":[98,180],"is":[99,181],"C":[101],"simulating":[104],"arithmetics.":[106],"It":[107],"offers":[108],"efficient":[109,185],"routines":[110],"rounding,":[112],"performing":[113],"computations,":[115],"querying":[117],"properties":[118],"simulated":[121],"format.":[123],"The":[124],"exploits":[126],"bit-level":[128],"representation":[130],"format":[133],"which":[135],"numbers":[137],"stored":[139],"replaces":[141],"costly":[142],"calls":[144],"with":[145,191],"low-level":[146],"bit":[147],"manipulations":[148],"integer":[150],"In":[152],"experiments,":[154],"new":[156],"bring":[158],"considerable":[160],"speedup":[161],"(typically":[162],"one":[163],"order":[164],"magnitude":[166],"or":[167],"more)":[168],"over":[169],"existing":[170],"alternatives":[171],"C,":[173],"C++,":[174],"MATLAB.":[176],"To":[177],"our":[178],"knowledge,":[179],"currently":[182],"most":[184],"complete":[187],"experimenting":[190],"custom":[192]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":3}],"updated_date":"2026-10-16T09:59:22.235173","created_date":"2025-10-10T00:00:00"}
