{"id":"https://openalex.org/W2910374893","doi":"https://doi.org/10.1137/18m1229511","title":"Squeezing a Matrix into Half Precision, with an Application to Solving Linear Systems","display_name":"Squeezing a Matrix into Half Precision, with an Application to Solving Linear Systems","publication_year":2019,"publication_date":"2019-01-01","ids":{"openalex":"https://openalex.org/W2910374893","doi":"https://doi.org/10.1137/18m1229511","mag":"2910374893"},"language":"en","primary_location":{"id":"doi:10.1137/18m1229511","is_oa":true,"landing_page_url":"https://doi.org/10.1137/18m1229511","pdf_url":"https://epubs.siam.org/doi/pdf/10.1137/18M1229511","source":{"id":"https://openalex.org/S165512578","display_name":"SIAM Journal on Scientific Computing","issn_l":"1064-8275","issn":["1064-8275","1095-7197"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320508","host_organization_name":"Society for Industrial and Applied Mathematics","host_organization_lineage":["https://openalex.org/P4310320508"],"host_organization_lineage_names":["Society for Industrial and Applied Mathematics"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"SIAM Journal on Scientific Computing","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://epubs.siam.org/doi/pdf/10.1137/18M1229511","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5069339254","display_name":"Nicholas J. Higham","orcid":"https://orcid.org/0000-0001-5956-4976"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Nicholas J. Higham","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0001-5956-4976","affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5070702896","display_name":"Srikara Pranesh","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Srikara Pranesh","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5079445612","display_name":"Mawussi Zounon","orcid":"https://orcid.org/0000-0002-6955-1500"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Mawussi Zounon","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":8.288,"has_fulltext":false,"cited_by_count":70,"citation_normalized_percentile":{"value":0.97952989,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":"41","issue":"4","first_page":"A2536","last_page":"A2551"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10792","display_name":"Matrix Theory and Algorithms","score":0.9998000264167786,"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/T10792","display_name":"Matrix Theory and Algorithms","score":0.9998000264167786,"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/T11697","display_name":"Numerical Methods and Algorithms","score":0.9991999864578247,"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/T12661","display_name":"Iterative Methods for Nonlinear Equations","score":0.9962999820709229,"subfield":{"id":"https://openalex.org/subfields/2612","display_name":"Numerical Analysis"},"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/double-precision-floating-point-format","display_name":"Double-precision floating-point format","score":0.8050411939620972},{"id":"https://openalex.org/keywords/arithmetic-underflow","display_name":"Arithmetic underflow","score":0.7489701509475708},{"id":"https://openalex.org/keywords/single-precision-floating-point-format","display_name":"Single-precision floating-point format","score":0.7325718402862549},{"id":"https://openalex.org/keywords/arbitrary-precision-arithmetic","display_name":"Arbitrary-precision arithmetic","score":0.7293596267700195},{"id":"https://openalex.org/keywords/rounding","display_name":"Rounding","score":0.6489508152008057},{"id":"https://openalex.org/keywords/machine-epsilon","display_name":"Machine epsilon","score":0.573847234249115},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.5582321882247925},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.5550529956817627},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.5116155743598938},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.4693045914173126},{"id":"https://openalex.org/keywords/iterative-refinement","display_name":"Iterative refinement","score":0.447699636220932},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.44124457240104675},{"id":"https://openalex.org/keywords/diagonal","display_name":"Diagonal","score":0.4191804826259613},{"id":"https://openalex.org/keywords/matrix","display_name":"Matrix (chemical analysis)","score":0.415262371301651}],"concepts":[{"id":"https://openalex.org/C35912277","wikidata":"https://www.wikidata.org/wiki/Q1243369","display_name":"Double-precision floating-point format","level":3,"score":0.8050411939620972},{"id":"https://openalex.org/C3265923","wikidata":"https://www.wikidata.org/wiki/Q669129","display_name":"Arithmetic underflow","level":2,"score":0.7489701509475708},{"id":"https://openalex.org/C133095886","wikidata":"https://www.wikidata.org/wiki/Q1307173","display_name":"Single-precision floating-point format","level":3,"score":0.7325718402862549},{"id":"https://openalex.org/C83581934","wikidata":"https://www.wikidata.org/wiki/Q527381","display_name":"Arbitrary-precision arithmetic","level":2,"score":0.7293596267700195},{"id":"https://openalex.org/C136625980","wikidata":"https://www.wikidata.org/wiki/Q663208","display_name":"Rounding","level":2,"score":0.6489508152008057},{"id":"https://openalex.org/C203739276","wikidata":"https://www.wikidata.org/wiki/Q1780355","display_name":"Machine epsilon","level":2,"score":0.573847234249115},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.5582321882247925},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.5550529956817627},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.5116155743598938},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.4693045914173126},{"id":"https://openalex.org/C2779982483","wikidata":"https://www.wikidata.org/wiki/Q6094420","display_name":"Iterative refinement","level":2,"score":0.447699636220932},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.44124457240104675},{"id":"https://openalex.org/C130367717","wikidata":"https://www.wikidata.org/wiki/Q189791","display_name":"Diagonal","level":2,"score":0.4191804826259613},{"id":"https://openalex.org/C106487976","wikidata":"https://www.wikidata.org/wiki/Q685816","display_name":"Matrix (chemical analysis)","level":2,"score":0.415262371301651},{"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},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.0},{"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/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1137/18m1229511","is_oa":true,"landing_page_url":"https://doi.org/10.1137/18m1229511","pdf_url":"https://epubs.siam.org/doi/pdf/10.1137/18M1229511","source":{"id":"https://openalex.org/S165512578","display_name":"SIAM Journal on Scientific Computing","issn_l":"1064-8275","issn":["1064-8275","1095-7197"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320508","host_organization_name":"Society for Industrial and Applied Mathematics","host_organization_lineage":["https://openalex.org/P4310320508"],"host_organization_lineage_names":["Society for Industrial and Applied Mathematics"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"SIAM Journal on Scientific Computing","raw_type":"journal-article"},{"id":"pmh:oai:pure.atira.dk:openaire/7d77ffbe-b703-416b-ac54-f0bed87ba88a","is_oa":true,"landing_page_url":"https://research.manchester.ac.uk/en/publications/7d77ffbe-b703-416b-ac54-f0bed87ba88a","pdf_url":null,"source":{"id":"https://openalex.org/S4306400662","display_name":"Research Explorer (The University of Manchester)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I28407311","host_organization_name":"University of Manchester","host_organization_lineage":["https://openalex.org/I28407311"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Higham, N, Pranesh, S & Zounon, M 2019, 'Squeezing a Matrix into Half Precision, with an Application to Solving Linear Systems', S I A M Journal on Scientific Computing. https://doi.org/10.1137/18M1229511","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:eprints.maths.manchester.ac.uk.MIMS.EPrints:2678","is_oa":false,"landing_page_url":null,"pdf_url":null,"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,"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:pure.atira.dk:publications/7d77ffbe-b703-416b-ac54-f0bed87ba88a","is_oa":true,"landing_page_url":"https://www.research.manchester.ac.uk/portal/en/publications/squeezing-a-matrix-into-half-precision-with-an-application-to-solving-linear-systems(7d77ffbe-b703-416b-ac54-f0bed87ba88a).html","pdf_url":null,"source":{"id":"https://openalex.org/S4306400662","display_name":"Research Explorer (The University of Manchester)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I28407311","host_organization_name":"University of Manchester","host_organization_lineage":["https://openalex.org/I28407311"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Higham, N, Pranesh, S & Zounon, M 2019, 'Squeezing a Matrix into Half Precision, with an Application to Solving Linear Systems', S I A M Journal on Scientific Computing. https://doi.org/10.1137/18M1229511","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":{"id":"doi:10.1137/18m1229511","is_oa":true,"landing_page_url":"https://doi.org/10.1137/18m1229511","pdf_url":"https://epubs.siam.org/doi/pdf/10.1137/18M1229511","source":{"id":"https://openalex.org/S165512578","display_name":"SIAM Journal on Scientific Computing","issn_l":"1064-8275","issn":["1064-8275","1095-7197"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320508","host_organization_name":"Society for Industrial and Applied Mathematics","host_organization_lineage":["https://openalex.org/P4310320508"],"host_organization_lineage_names":["Society for Industrial and Applied Mathematics"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"SIAM Journal on Scientific Computing","raw_type":"journal-article"},"sustainable_development_goals":[],"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"}],"funders":[{"id":"https://openalex.org/F4320315144","display_name":"MathWorks","ror":"https://ror.org/01n8qtk87"},{"id":"https://openalex.org/F4320320006","display_name":"Royal Society","ror":"https://ror.org/03wnrjx87"},{"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":18,"referenced_works":["https://openalex.org/W1841592590","https://openalex.org/W2025921559","https://openalex.org/W2027244403","https://openalex.org/W2035080386","https://openalex.org/W2089485155","https://openalex.org/W2100067222","https://openalex.org/W2138472918","https://openalex.org/W2140153041","https://openalex.org/W2271335896","https://openalex.org/W2599973081","https://openalex.org/W2737864593","https://openalex.org/W2752879223","https://openalex.org/W2765439756","https://openalex.org/W2773087045","https://openalex.org/W2808102735","https://openalex.org/W2895305554","https://openalex.org/W3022909171","https://openalex.org/W3098936314"],"related_works":["https://openalex.org/W2937715180","https://openalex.org/W2156774177","https://openalex.org/W3150959508","https://openalex.org/W4252124868","https://openalex.org/W2009694692","https://openalex.org/W2087454352","https://openalex.org/W2798387229","https://openalex.org/W2239119680","https://openalex.org/W1980667043","https://openalex.org/W2910374893"],"abstract_inverted_index":{"Motivated":[0],"by":[1,156,233,250],"the":[2,32,69,140,161,171,190,211,246,254,303,311],"demand":[3],"in":[4,20,42,54,76,136,237,310],"machine":[5],"learning,":[6],"modern":[7],"computer":[8],"hardware":[9],"is":[10,187,308],"increasingly":[11],"supporting":[12],"reduced":[13],"precision":[14,38,46,56,74,94,98,126,195,231,239,256,271],"floating-point":[15],"arithmetic,":[16,75,196],"which":[17,77,111,219],"provides":[18],"advantages":[19],"speed,":[21],"energy,":[22],"and":[23,28,84,149,174,197,240,300,305,330],"memory":[24],"usage":[25],"over":[26],"single":[27,43,91,123,228],"double":[29,45,93,125,230],"precision.":[30,129,179],"Given":[31],"availability":[33],"of":[34,51,59,68,72,90,110,170,189,193,261,280,298,302,313,324,337],"such":[35],"hardware,":[36],"mixed":[37],"algorithms":[39],"that":[40,146,184,272,318],"work":[41],"or":[44,92,104,124,229,286],"but":[47],"carry":[48],"out":[49,242],"part":[50],"a":[52,87,120,157,165,221,266,333],"computation":[53],"half":[55,73,97,128,178,194,238,270],"are":[57,112],"now":[58],"great":[60],"interest":[61],"for":[62,118,206,282,326],"general":[63],"scientific":[64],"computing":[65],"tasks.":[66],"Because":[67],"limited":[70,191],"range":[71,192],"positive":[78],"numbers":[79,106],"lie":[80],"between":[81],"$6\\times":[82],"10^{-8}$":[83],"$7\\times":[85],"10^4$,":[86],"straightforward":[88],"rounding":[89],"data":[95,232],"into":[96],"can":[99,276],"lead":[100],"to":[101,127,138,144,159,177,202,214,269,288,321,339],"overflow,":[102],"underflow,":[103],"subnormal":[105],"being":[107],"generated,":[108],"all":[109],"undesirable.":[113],"We":[114,209,316],"develop":[115],"an":[116],"algorithm":[117,213,263,295],"converting":[119],"matrix":[121,141,304],"from":[122],"It":[130],"first":[131],"applies":[132],"two-sided":[133],"diagonal":[134],"scaling":[135],"order":[137],"equilibrate":[139],"(that":[142],"is,":[143],"ensure":[145],"every":[147],"row":[148],"column":[150],"has":[151],"$\\infty$-norm":[152],"$1$),":[153],"then":[154],"multiplies":[155],"scalar":[158],"bring":[160],"largest":[162],"element":[163],"within":[164],"factor":[166],"$\\theta":[167],"\\le":[168],"1$":[169],"overflow":[172],"level,":[173],"finally":[175],"rounds":[176],"The":[180,292],"second":[181],"step":[182],"ensures":[183],"full":[185],"use":[186],"made":[188],"$\\theta$":[198],"must":[199],"be":[200,340],"chosen":[201],"allow":[203],"sufficient":[204],"headroom":[205],"subsequent":[207],"computations.":[208],"apply":[210],"new":[212,293],"GMRES-based":[215],"iterative":[216,243],"refinement":[217,244],"(GMRES-IR),":[218],"solves":[220],"linear":[222],"system":[223],"$Ax":[224],"=":[225],"b$":[226],"with":[227,245,253],"LU":[234,257,314],"factorizing":[235],"$A$":[236],"carrying":[241],"correction":[247],"equations":[248],"solved":[249],"GMRES":[251],"preconditioned":[252],"low":[255],"factors.":[258],"Previous":[259],"implementations":[260],"this":[262],"have":[264],"used":[265],"crude":[267],"conversion":[268,294],"our":[273],"experiments":[274],"show":[275,317],"cause":[277],"slow":[278],"convergence":[279,323],"GMRES-IR":[281,325],"badly":[283,327],"scaled":[284,328],"matrices":[285,329],"failure":[287],"converge":[289],"at":[290],"all.":[291],"computes":[296],"$\\infty$-norms":[297],"rows":[299],"columns":[301],"its":[306],"cost":[307],"negligible":[309],"context":[312],"factorization.":[315],"it":[319],"leads":[320],"faster":[322],"thereby":[331],"allows":[332],"much":[334],"wider":[335],"class":[336],"problems":[338],"solved.":[341]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":10},{"year":2024,"cited_by_count":8},{"year":2023,"cited_by_count":9},{"year":2022,"cited_by_count":13},{"year":2021,"cited_by_count":10},{"year":2020,"cited_by_count":13},{"year":2019,"cited_by_count":5},{"year":2018,"cited_by_count":1}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
