2016
DOI: 10.15439/2016f35
|View full text |Cite
|
Sign up to set email alerts
|

Block Iterators for Sparse Matrices

Abstract: Abstract-Finding an optimal block size for a given sparse matrix forms an important problem for storage formats that partition matrices into uniformly-sized blocks. Finding a solution to this problem can take a significant amount of time, which, effectively, may negate the benefits that such a format brings into sparse-matrix computations. A key for an efficient solution is the ability to quickly iterate, for a particular block size, over matrix nonzero blocks. This work proposes an efficient parallel algorith… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2016
2016
2021
2021

Publication Types

Select...
3
1

Relationship

4
0

Authors

Journals

citations
Cited by 4 publications
(4 citation statements)
references
References 16 publications
0
4
0
Order By: Relevance
“…For example, uniformly-blocking formats are parametrized by the block size [13]. To find an optimal block size, matrix nonzero elements need to be sorted repeatedly with respect to different tested block sizes [12,29].…”
Section: Motivationmentioning
confidence: 99%
“…For example, uniformly-blocking formats are parametrized by the block size [13]. To find an optimal block size, matrix nonzero elements need to be sorted repeatedly with respect to different tested block sizes [12,29].…”
Section: Motivationmentioning
confidence: 99%
“…This operation involves (costly) integer division, however, in case of block sizes 2 k ×2 , it may be substituted by much faster logical shift operations. We observed 4 and 7 times faster block preprocessing due to such substitution on an Intel Haswell-based computer system and an Intel Xeon Phi coprocessor, respectively [20].…”
Section: Methodsmentioning
confidence: 84%
“…To evaluate memory footprints of a given matrix for different schemes and some particular tested block size, we need information about numbers of nonzero elements of all nonzero blocks [22]. In the end, this information must be obtained for each distinct block size from the optimization space, which represents the most demanding part of the whole optimization process [20]. The block preprocessing runtime is thus approximately proportional to the number of distinct tested block sizes.…”
Section: Methodsmentioning
confidence: 99%
“…To evaluate memory footprints of a given matrix for different schemes and some particular tested block size, we need information about numbers of nonzero elements of all nonzero blocks [24]. In the end, this information must be obtained for each distinct block size from the optimization space, which represents the most demanding part of the whole optimization process [22]. The block preprocessing runtime is thus approximately proportional to the number of distinct tested block sizes.…”
Section: Block Sizesmentioning
confidence: 99%