By Topic

Efficient Zero/One Matrix-Vector Multiplication Based on Cache

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$31 $13
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

4 Author(s)
Yu Li ; Sch. of Comput., Wuhan Univ., Wuhan ; Li Yuan Xiang ; Naixue Xiong ; Yang, L.T.

This article describes a new method which we have used for computing matrix-vector products. Matrix-vector multiplication is the core of black-box algorithm, which is effective when we analyze the properties of sparse or structured matrix. Hence it is very useful to optimize the calculation. Here we design an algorithm for large-sized sparse zero-one matrix-vector products based on the theory of cache, whose advantage is that it can reduce cache misses to the minimum. We divide the matrix M into several vertical strips and vector x is stripped by system in the corresponding way. Then we calculate the products of all stripped matrix and the vector, and add all the results together to obtain the Zo matrix-vector product. We use C++ language to implement the algorithm in Windows XP and have experiments to compare the time costs between the Zo and stripped matrix-vector products of various blocking schemes. After many experiments, we find the most appropriate blocking scheme to suit the cache size.

Published in:

Computer Science and its Applications, 2008. CSA '08. International Symposium on

Date of Conference:

13-15 Oct. 2008