{"id":"https://openalex.org/W2271597431","doi":"https://doi.org/10.1137/15m1027826","title":"A Factored Sparse Approximate Inverse Preconditioned Conjugate Gradient Solver on Graphics Processing Units","display_name":"A Factored Sparse Approximate Inverse Preconditioned Conjugate Gradient Solver on Graphics Processing Units","publication_year":2016,"publication_date":"2016-01-01","ids":{"openalex":"https://openalex.org/W2271597431","doi":"https://doi.org/10.1137/15m1027826","mag":"2271597431"},"language":"en","primary_location":{"id":"doi:10.1137/15m1027826","is_oa":false,"landing_page_url":"https://doi.org/10.1137/15m1027826","pdf_url":null,"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":null,"license_id":null,"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":"green","oa_url":"http://epubs.siam.org/doi/pdf/10.1137/15M1027826","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5006496977","display_name":"Massimo Bernaschi","orcid":"https://orcid.org/0000-0003-3661-9836"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Massimo Bernaschi","raw_affiliation_strings":["Institute for Computing Applications, CNR, Roma, Italy"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Institute for Computing Applications, CNR, Roma, Italy","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5031617537","display_name":"Mauro Bisson","orcid":"https://orcid.org/0000-0002-3025-8227"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Mauro Bisson","raw_affiliation_strings":["Institute for Computing Applications, CNR, Roma, Italy"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Institute for Computing Applications, CNR, Roma, Italy","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5021518640","display_name":"Carlo Fantozzi","orcid":"https://orcid.org/0000-0003-3210-4632"},"institutions":[{"id":"https://openalex.org/I138689650","display_name":"University of Padua","ror":"https://ror.org/00240q980","country_code":"IT","type":"education","lineage":["https://openalex.org/I138689650"]}],"countries":["IT"],"is_corresponding":false,"raw_author_name":"Carlo Fantozzi","raw_affiliation_strings":["Department of Information Engineering, University of Padova, Via Gradenigo 6/b, 35131 Padova, Italy"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Information Engineering, University of Padova, Via Gradenigo 6/b, 35131 Padova, Italy","institution_ids":["https://openalex.org/I138689650"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5066565638","display_name":"Carlo Janna","orcid":"https://orcid.org/0000-0001-7286-8122"},"institutions":[{"id":"https://openalex.org/I138689650","display_name":"University of Padua","ror":"https://ror.org/00240q980","country_code":"IT","type":"education","lineage":["https://openalex.org/I138689650"]}],"countries":["IT"],"is_corresponding":false,"raw_author_name":"Carlo Janna","raw_affiliation_strings":["Department ICEA, University of Padova, Via Trieste 63, 35121 Padova, Italy"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department ICEA, University of Padova, Via Trieste 63, 35121 Padova, Italy","institution_ids":["https://openalex.org/I138689650"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.9557,"has_fulltext":false,"cited_by_count":23,"citation_normalized_percentile":{"value":0.86997548,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"38","issue":"1","first_page":"C53","last_page":"C72"},"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/T10739","display_name":"Electromagnetic Scattering and Analysis","score":0.9977999925613403,"subfield":{"id":"https://openalex.org/subfields/3107","display_name":"Atomic and Molecular Physics, and Optics"},"field":{"id":"https://openalex.org/fields/31","display_name":"Physics and Astronomy"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11612","display_name":"Stochastic Gradient Optimization Techniques","score":0.986299991607666,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/preconditioner","display_name":"Preconditioner","score":0.9676074385643005},{"id":"https://openalex.org/keywords/conjugate-gradient-method","display_name":"Conjugate gradient method","score":0.8065252900123596},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.7574412822723389},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.599306046962738},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5929948687553406},{"id":"https://openalex.org/keywords/bottleneck","display_name":"Bottleneck","score":0.579746663570404},{"id":"https://openalex.org/keywords/speedup","display_name":"Speedup","score":0.5763955116271973},{"id":"https://openalex.org/keywords/graphics","display_name":"Graphics","score":0.5031320452690125},{"id":"https://openalex.org/keywords/sparse-matrix","display_name":"Sparse matrix","score":0.4850420355796814},{"id":"https://openalex.org/keywords/linear-system","display_name":"Linear system","score":0.48307421803474426},{"id":"https://openalex.org/keywords/iterative-method","display_name":"Iterative method","score":0.46754780411720276},{"id":"https://openalex.org/keywords/cuda","display_name":"CUDA","score":0.45694810152053833},{"id":"https://openalex.org/keywords/graphics-processing-unit","display_name":"Graphics processing unit","score":0.4503518342971802},{"id":"https://openalex.org/keywords/computational-science","display_name":"Computational science","score":0.43849822878837585},{"id":"https://openalex.org/keywords/inverse","display_name":"Inverse","score":0.4142169952392578},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.38857996463775635},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.3118698000907898},{"id":"https://openalex.org/keywords/gaussian","display_name":"Gaussian","score":0.07156327366828918}],"concepts":[{"id":"https://openalex.org/C167431342","wikidata":"https://www.wikidata.org/wiki/Q1754327","display_name":"Preconditioner","level":3,"score":0.9676074385643005},{"id":"https://openalex.org/C81184566","wikidata":"https://www.wikidata.org/wiki/Q1191895","display_name":"Conjugate gradient method","level":2,"score":0.8065252900123596},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.7574412822723389},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.599306046962738},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5929948687553406},{"id":"https://openalex.org/C2780513914","wikidata":"https://www.wikidata.org/wiki/Q18210350","display_name":"Bottleneck","level":2,"score":0.579746663570404},{"id":"https://openalex.org/C68339613","wikidata":"https://www.wikidata.org/wiki/Q1549489","display_name":"Speedup","level":2,"score":0.5763955116271973},{"id":"https://openalex.org/C21442007","wikidata":"https://www.wikidata.org/wiki/Q1027879","display_name":"Graphics","level":2,"score":0.5031320452690125},{"id":"https://openalex.org/C56372850","wikidata":"https://www.wikidata.org/wiki/Q1050404","display_name":"Sparse matrix","level":3,"score":0.4850420355796814},{"id":"https://openalex.org/C6802819","wikidata":"https://www.wikidata.org/wiki/Q1072174","display_name":"Linear system","level":2,"score":0.48307421803474426},{"id":"https://openalex.org/C159694833","wikidata":"https://www.wikidata.org/wiki/Q2321565","display_name":"Iterative method","level":2,"score":0.46754780411720276},{"id":"https://openalex.org/C2778119891","wikidata":"https://www.wikidata.org/wiki/Q477690","display_name":"CUDA","level":2,"score":0.45694810152053833},{"id":"https://openalex.org/C2779851693","wikidata":"https://www.wikidata.org/wiki/Q183484","display_name":"Graphics processing unit","level":2,"score":0.4503518342971802},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.43849822878837585},{"id":"https://openalex.org/C207467116","wikidata":"https://www.wikidata.org/wiki/Q4385666","display_name":"Inverse","level":2,"score":0.4142169952392578},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.38857996463775635},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.3118698000907898},{"id":"https://openalex.org/C163716315","wikidata":"https://www.wikidata.org/wiki/Q901177","display_name":"Gaussian","level":2,"score":0.07156327366828918},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","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/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","level":1,"score":0.0},{"id":"https://openalex.org/C121684516","wikidata":"https://www.wikidata.org/wiki/Q7600677","display_name":"Computer graphics (images)","level":1,"score":0.0},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded 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},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1137/15m1027826","is_oa":false,"landing_page_url":"https://doi.org/10.1137/15m1027826","pdf_url":null,"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"SIAM Journal on Scientific Computing","raw_type":"journal-article"},{"id":"pmh:oai:www.research.unipd.it:11577/3184414","is_oa":true,"landing_page_url":"http://epubs.siam.org/doi/pdf/10.1137/15M1027826","pdf_url":null,"source":{"id":"https://openalex.org/S4377196283","display_name":"Research Padua  Archive (University of Padua)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I138689650","host_organization_name":"University of Padua","host_organization_lineage":["https://openalex.org/I138689650"],"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":null,"raw_type":"info:eu-repo/semantics/article"}],"best_oa_location":{"id":"pmh:oai:www.research.unipd.it:11577/3184414","is_oa":true,"landing_page_url":"http://epubs.siam.org/doi/pdf/10.1137/15M1027826","pdf_url":null,"source":{"id":"https://openalex.org/S4377196283","display_name":"Research Padua  Archive (University of Padua)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I138689650","host_organization_name":"University of Padua","host_organization_lineage":["https://openalex.org/I138689650"],"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":null,"raw_type":"info:eu-repo/semantics/article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":33,"referenced_works":["https://openalex.org/W174510205","https://openalex.org/W1965034778","https://openalex.org/W1965512225","https://openalex.org/W1966756606","https://openalex.org/W1985938427","https://openalex.org/W1989568755","https://openalex.org/W1990973621","https://openalex.org/W1994373416","https://openalex.org/W1994805693","https://openalex.org/W2024830919","https://openalex.org/W2026502086","https://openalex.org/W2031460602","https://openalex.org/W2038516134","https://openalex.org/W2058273413","https://openalex.org/W2062233541","https://openalex.org/W2062376276","https://openalex.org/W2065271867","https://openalex.org/W2071786556","https://openalex.org/W2082434918","https://openalex.org/W2085789510","https://openalex.org/W2087229505","https://openalex.org/W2088200553","https://openalex.org/W2089099677","https://openalex.org/W2095258827","https://openalex.org/W2101511474","https://openalex.org/W2102528350","https://openalex.org/W2104373803","https://openalex.org/W2110290705","https://openalex.org/W2129343865","https://openalex.org/W2156588317","https://openalex.org/W2997945685","https://openalex.org/W3100417409","https://openalex.org/W3101779959"],"related_works":["https://openalex.org/W2159515580","https://openalex.org/W2081820376","https://openalex.org/W2091325992","https://openalex.org/W2059625160","https://openalex.org/W2006453807","https://openalex.org/W3194092090","https://openalex.org/W2020279179","https://openalex.org/W2503137108","https://openalex.org/W2119534391","https://openalex.org/W1966576946"],"abstract_inverted_index":{"Graphics":[0],"Processing":[1],"Units":[2],"(GPUs)":[3],"exhibit":[4],"significantly":[5],"higher":[6],"peak":[7],"performance":[8],"than":[9],"conventional":[10],"CPUs.":[11],"However,":[12,55,104],"in":[13],"general":[14],"only":[15,47],"highly":[16,141],"parallel":[17],"algorithms":[18],"can":[19],"exploit":[20],"their":[21],"potential.":[22],"In":[23],"this":[24,69],"scenario,":[25],"the":[26,84,96,122],"iterative":[27,61],"solution":[28,99],"to":[29,56,64,80,139],"sparse":[30,86,101],"linear":[31,102],"systems":[32],"of":[33,100,112,121,129],"equations":[34],"could":[35],"be":[36,57,65],"carried":[37],"out":[38],"quite":[39],"efficiently":[40],"on":[41],"a":[42,71,75,109,127,134,140],"GPU":[43,77,106,119],"as":[44],"it":[45],"requires":[46,108],"matrix-by-vector":[48],"products,":[49,51],"dot":[50],"and":[52,68],"vector":[53],"updates.":[54],"really":[58],"effective,":[59],"any":[60],"solver":[62],"needs":[63],"properly":[66],"preconditioned":[67],"represents":[70,91],"major":[72],"bottleneck":[73],"for":[74,95],"successful":[76],"implementation.":[78],"Due":[79],"its":[81,105],"inherent":[82],"parallelism,":[83],"factored":[85],"approximate":[87],"inverse":[88],"(FSAI)":[89],"preconditioner":[90,124],"an":[92],"optimal":[93],"candidate":[94],"conjugate":[97],"gradient-like":[98],"systems.":[103],"implementation":[107],"nontrivial":[110],"recasting":[111],"multiple":[113],"computational":[114],"steps.":[115],"We":[116],"present":[117],"our":[118],"version":[120],"FSAI":[123],"along":[125],"with":[126,137],"set":[128],"results":[130],"that":[131],"show":[132],"how":[133],"noticeable":[135],"speedup":[136],"respect":[138],"tuned":[142],"CPU":[143],"counterpart":[144],"is":[145],"obtained.":[146]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":4},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":1}],"updated_date":"2026-07-17T09:13:05.818461","created_date":"2025-10-10T00:00:00"}
