{"id":"https://openalex.org/W1981252059","doi":"https://doi.org/10.1145/1046192.1046202","title":"Sparse Matrix-Vector multiplication on FPGAs","display_name":"Sparse Matrix-Vector multiplication on FPGAs","publication_year":2005,"publication_date":"2005-02-20","ids":{"openalex":"https://openalex.org/W1981252059","doi":"https://doi.org/10.1145/1046192.1046202","mag":"1981252059"},"language":"en","primary_location":{"id":"doi:10.1145/1046192.1046202","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1046192.1046202","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 ACM/SIGDA 13th international symposium on Field-programmable gate arrays","raw_type":"proceedings-article"},"type":"article","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/A5029288518","display_name":"Ling Zhuo","orcid":"https://orcid.org/0000-0001-9244-0115"},"institutions":[{"id":"https://openalex.org/I1174212","display_name":"University of Southern California","ror":"https://ror.org/03taz7m60","country_code":"US","type":"education","lineage":["https://openalex.org/I1174212"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Ling Zhuo","raw_affiliation_strings":["University of Southern California, Los Angeles, CA","University of Southern California,,,Los Angeles,CA,"],"affiliations":[{"raw_affiliation_string":"University of Southern California, Los Angeles, CA","institution_ids":["https://openalex.org/I1174212"]},{"raw_affiliation_string":"University of Southern California,,,Los Angeles,CA,","institution_ids":["https://openalex.org/I1174212"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5033166029","display_name":"Viktor K. Prasanna","orcid":"https://orcid.org/0000-0002-1609-8589"},"institutions":[{"id":"https://openalex.org/I1174212","display_name":"University of Southern California","ror":"https://ror.org/03taz7m60","country_code":"US","type":"education","lineage":["https://openalex.org/I1174212"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Viktor K. Prasanna","raw_affiliation_strings":["University of Southern California, Los Angeles, CA","University of Southern California,,,Los Angeles,CA,"],"affiliations":[{"raw_affiliation_string":"University of Southern California, Los Angeles, CA","institution_ids":["https://openalex.org/I1174212"]},{"raw_affiliation_string":"University of Southern California,,,Los Angeles,CA,","institution_ids":["https://openalex.org/I1174212"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5029288518"],"corresponding_institution_ids":["https://openalex.org/I1174212"],"apc_list":null,"apc_paid":null,"fwci":15.3006,"has_fulltext":false,"cited_by_count":225,"citation_normalized_percentile":{"value":0.99361614,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":91,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"63","last_page":"74"},"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/T11181","display_name":"Advanced Data Storage Technologies","score":0.9980999827384949,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10792","display_name":"Matrix Theory and Algorithms","score":0.9969000220298767,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7907836437225342},{"id":"https://openalex.org/keywords/flops","display_name":"FLOPS","score":0.7279410362243652},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.7221867442131042},{"id":"https://openalex.org/keywords/sparse-matrix","display_name":"Sparse matrix","score":0.6697798371315002},{"id":"https://openalex.org/keywords/field-programmable-gate-array","display_name":"Field-programmable gate array","score":0.6562416553497314},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.5983254909515381},{"id":"https://openalex.org/keywords/memory-bandwidth","display_name":"Memory bandwidth","score":0.5906819105148315},{"id":"https://openalex.org/keywords/speedup","display_name":"Speedup","score":0.5632601976394653},{"id":"https://openalex.org/keywords/double-precision-floating-point-format","display_name":"Double-precision floating-point format","score":0.5171751379966736},{"id":"https://openalex.org/keywords/matrix-multiplication","display_name":"Matrix multiplication","score":0.500199556350708},{"id":"https://openalex.org/keywords/supercomputer","display_name":"Supercomputer","score":0.47717753052711487},{"id":"https://openalex.org/keywords/multiplication","display_name":"Multiplication (music)","score":0.445589154958725},{"id":"https://openalex.org/keywords/memory-hierarchy","display_name":"Memory hierarchy","score":0.4288366734981537},{"id":"https://openalex.org/keywords/kernel","display_name":"Kernel (algebra)","score":0.4223019778728485},{"id":"https://openalex.org/keywords/virtex","display_name":"Virtex","score":0.41494470834732056},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.4131605625152588},{"id":"https://openalex.org/keywords/computer-hardware","display_name":"Computer hardware","score":0.3383885622024536},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.2678046226501465},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.09720861911773682}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7907836437225342},{"id":"https://openalex.org/C3826847","wikidata":"https://www.wikidata.org/wiki/Q188768","display_name":"FLOPS","level":2,"score":0.7279410362243652},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.7221867442131042},{"id":"https://openalex.org/C56372850","wikidata":"https://www.wikidata.org/wiki/Q1050404","display_name":"Sparse matrix","level":3,"score":0.6697798371315002},{"id":"https://openalex.org/C42935608","wikidata":"https://www.wikidata.org/wiki/Q190411","display_name":"Field-programmable gate array","level":2,"score":0.6562416553497314},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.5983254909515381},{"id":"https://openalex.org/C188045654","wikidata":"https://www.wikidata.org/wiki/Q17148339","display_name":"Memory bandwidth","level":2,"score":0.5906819105148315},{"id":"https://openalex.org/C68339613","wikidata":"https://www.wikidata.org/wiki/Q1549489","display_name":"Speedup","level":2,"score":0.5632601976394653},{"id":"https://openalex.org/C35912277","wikidata":"https://www.wikidata.org/wiki/Q1243369","display_name":"Double-precision floating-point format","level":3,"score":0.5171751379966736},{"id":"https://openalex.org/C17349429","wikidata":"https://www.wikidata.org/wiki/Q1049914","display_name":"Matrix multiplication","level":3,"score":0.500199556350708},{"id":"https://openalex.org/C83283714","wikidata":"https://www.wikidata.org/wiki/Q121117","display_name":"Supercomputer","level":2,"score":0.47717753052711487},{"id":"https://openalex.org/C2780595030","wikidata":"https://www.wikidata.org/wiki/Q3860309","display_name":"Multiplication (music)","level":2,"score":0.445589154958725},{"id":"https://openalex.org/C2778100165","wikidata":"https://www.wikidata.org/wiki/Q1589327","display_name":"Memory hierarchy","level":3,"score":0.4288366734981537},{"id":"https://openalex.org/C74193536","wikidata":"https://www.wikidata.org/wiki/Q574844","display_name":"Kernel (algebra)","level":2,"score":0.4223019778728485},{"id":"https://openalex.org/C2777674469","wikidata":"https://www.wikidata.org/wiki/Q20741011","display_name":"Virtex","level":3,"score":0.41494470834732056},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.4131605625152588},{"id":"https://openalex.org/C9390403","wikidata":"https://www.wikidata.org/wiki/Q3966","display_name":"Computer hardware","level":1,"score":0.3383885622024536},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.2678046226501465},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.09720861911773682},{"id":"https://openalex.org/C163716315","wikidata":"https://www.wikidata.org/wiki/Q901177","display_name":"Gaussian","level":2,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","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/C84114770","wikidata":"https://www.wikidata.org/wiki/Q46344","display_name":"Quantum","level":2,"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.1145/1046192.1046202","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1046192.1046202","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2005 ACM/SIGDA 13th international symposium on Field-programmable gate arrays","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.133.1308","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.133.1308","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://cmc.rice.edu/asap2004/papers/37.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W31398948","https://openalex.org/W120928512","https://openalex.org/W126360885","https://openalex.org/W1522512418","https://openalex.org/W1540366270","https://openalex.org/W1542866900","https://openalex.org/W1553214226","https://openalex.org/W1587217691","https://openalex.org/W1861262881","https://openalex.org/W1987393840","https://openalex.org/W1997231251","https://openalex.org/W2084991847","https://openalex.org/W2111509133","https://openalex.org/W2113813361","https://openalex.org/W2114977680","https://openalex.org/W2126069080","https://openalex.org/W2129073677","https://openalex.org/W2130289795","https://openalex.org/W2161366195","https://openalex.org/W2204310803","https://openalex.org/W2504389667","https://openalex.org/W2916844179","https://openalex.org/W2981264952","https://openalex.org/W3143708375","https://openalex.org/W4235310052"],"related_works":["https://openalex.org/W2156524298","https://openalex.org/W3177218348","https://openalex.org/W2171105040","https://openalex.org/W3097256929","https://openalex.org/W2065321717","https://openalex.org/W17610788","https://openalex.org/W4239326219","https://openalex.org/W2152567198","https://openalex.org/W2887888236","https://openalex.org/W1555620806"],"abstract_inverted_index":{"Floating-point":[0],"Sparse":[1],"Matrix-Vector":[2],"Multiplication":[3],"(SpMXV)":[4],"is":[5,117,162],"a":[6,198],"key":[7],"computational":[8],"kernel":[9],"in":[10,73,108],"scientific":[11,125],"and":[12,78,98,200],"engineering":[13],"applications.":[14],"The":[15,42,90,110,138],"poor":[16],"data":[17],"locality":[18],"of":[19,26,56,86,112],"sparse":[20,71,121],"matrices":[21,72,122,185],"significantly":[22],"reduces":[23],"the":[24,35,54,83,87,124,129,135,143,147,152,159,173],"performance":[25,55,111,140],"SpMXV":[27,116,193],"on":[28,34,46,146,207],"general-purpose":[29,181],"processors,":[30],"which":[31],"rely":[32],"heavily":[33],"cache":[36],"hierarchy":[37],"to":[38,52],"achieve":[39],"high":[40],"performance.":[41],"abundant":[43],"hardware":[44,144],"resources":[45,145],"current":[47],"FPGAs":[48],"provide":[49],"new":[50],"opportunities":[51],"improve":[53],"SpMXV.":[57,67],"In":[58],"this":[59],"paper,":[60],"we":[61],"propose":[62],"an":[63],"FPGA-based":[64],"design":[65,69,91,114,166,196,203],"for":[66,115,171,184,204],"Our":[68],"accepts":[70],"Compressed":[74],"Row":[75],"Storage":[76],"format,":[77],"makes":[79],"no":[80],"assumptions":[81],"about":[82],"sparsity":[84,189],"structure":[85],"input":[88],"matrix.":[89],"employs":[92],"IEEE-754":[93],"format":[94],"double-precision":[95],"floating-point":[96,101,205],"multipliers/adders,":[97],"performs":[99],"multiple":[100],"operations":[102,107],"as":[103,105,134,149,151],"well":[104,150],"I/O":[106],"parallel.":[109],"our":[113,165,195],"evaluated":[118],"using":[119],"various":[120],"from":[123],"computing":[126],"community,":[127],"with":[128,142,186],"Xilinx":[130],"Virtex-II":[131],"Pro":[132],"XC2VP70":[133],"target":[136],"device.":[137],"MFLOPS":[139,170],"increases":[141],"device":[148],"available":[153],"memory":[154,160],"bandwidth.":[155],"For":[156],"example,":[157],"when":[158],"bandwidth":[161],"8":[163],"GB/s,":[164],"achieves":[167],"over":[168,180],"350":[169],"all":[172],"test":[174],"matrices.":[175],"It":[176],"demonstrates":[177],"significant":[178],"speedup":[179],"processors":[182],"particularly":[183],"very":[187],"irregular":[188],"structure.":[190],"Besides":[191],"solving":[192],"problem,":[194],"provides":[197],"parameterized":[199],"flexible":[201],"tree-based":[202],"applications":[206],"FPGAs.":[208]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":7},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":13},{"year":2020,"cited_by_count":13},{"year":2019,"cited_by_count":12},{"year":2018,"cited_by_count":6},{"year":2017,"cited_by_count":11},{"year":2016,"cited_by_count":15},{"year":2015,"cited_by_count":10},{"year":2014,"cited_by_count":16},{"year":2013,"cited_by_count":10},{"year":2012,"cited_by_count":9}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
