Cache Optimized Solution for Sparse Linear System over Large Order Finite Field

  • A. K. Bhateja
  • Vaishnavi KannanEmail author
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 655)


Many mathematical, engineering and cryptographic applications require the solution of sparse linear equations over large order finite fields. The Gaussian elimination is a standard algorithm used for the above. However, its use remains limited because of its implementation difficulty for large matrices. For large and sparse linear systems the iterative Lanczos and Wiedemann are the most efficient techniques. However, the computation intensive matrix vector multiplications in these algorithms make them unsuitable for large systems, increasing the computation time due to constant accesses to the RAM and hard disk for fetching and storing data. In this paper we present a cache optimized implementation of the Lanczos and Wiedemann algorithm that can be used for very large matrices even when there is not sufficient cache to store all the non zero matrix elements. Our algorithm makes optimal use of the cache, decreases the number of memory accesses and therefore reduces the time taken for the algorithms to provide a solution. The results show an improvement of 16% in Lanczos and 13% in Wiedemann in the execution time, with number of equations as 105 and same numbers of variables over the field of order 529 bits.


Sparse matrices Finite field Cache Lanczos algorithm Wiedemann algorithm 


  1. Bai, Z., Demmel, J., Dongarra, J., Ruhe, A., van der Vorst, H.: Templates for the Solution of Algebraic Eigenvalue Problems: A Practical Guide. SIAM, Philadelphia (2000)CrossRefzbMATHGoogle Scholar
  2. Berlekamp, E.R.: Algebraic Coding Theory. World Scientific, Singapore (2015). (Revised ed.)CrossRefzbMATHGoogle Scholar
  3. Chatterjee, S., Sen, S.: Cache-efficient matrix transposition. In: Paper Presented at the IEEE Sixth International Symposium on High-Performance Computer Architecture (HPCA-6) (2000)Google Scholar
  4. Ding, J., Liu, Y., Ding, F.: Iterative solutions to matrix equations of the form Ai\(\,\times \,\)Bi= Fi. Comput. Math. Appl. 59(11), 3500–3507 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  5. Granlund, T.: GMP, the GNU multiple precision arithmetic library (1991). Accessed
  6. Horowitz, E., Sahni, S.: Fundamentals of Data Structures. Pitman, London (1983). vol. 04; QA76. D35, H6zbMATHGoogle Scholar
  7. Ilmonen, T., Lokki, T.: Extreme filters-cache-efficient implementation of long IIR and FIR filters. IEEE Sig. Process. Lett. 13(7), 401–404 (2006)CrossRefGoogle Scholar
  8. LaMacchia, B.A., Odlyzko, A.M.: Solving large sparse linear systems over finite fields. In: Menezes, A.J., Vanstone, S.A. (eds.) CRYPTO 1990. LNCS, vol. 537, pp. 109–133. Springer, Heidelberg (1991). doi: 10.1007/3-540-38424-3_8 CrossRefGoogle Scholar
  9. Lanczos, C.: Solution of systems of linear equations by minimized iterations. J. Res. Natl Bur. Stan. 49(1) (1952)Google Scholar
  10. Odlyzko, A.M.: Discrete logarithms in finite fields and their cryptographic significance. In: Beth, T., Cot, N., Ingemarsson, I. (eds.) EUROCRYPT 1984. LNCS, vol. 209, pp. 224–314. Springer, Heidelberg (1985). doi: 10.1007/3-540-39757-4_20 CrossRefGoogle Scholar
  11. Pan, V., Reif, J.: Fast and efficient parallel solution of dense linear systems. Comput. Math. Appl. 17(11), 1481–1491 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  12. Reif, J.H.: Efficient approximate solution of sparse linear systems. Comput. Math. Appl. 36(9), 37–58 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  13. Saad, Y.: Krylov subspace methods on supercomputers. SIAM J. Sci. Stat. Comput. 10(6), 1200–1232 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  14. Sulatycke, P.D., Ghose, K.: Caching-efficient multithreaded fast multiplication of sparse matrices. In: Paper Presented at the Parallel Processing Symposium 1998, IPPS/SPDP 1998 (1998)Google Scholar
  15. Tan, J., Liu, Y., Liu, P.: Accelerating multiple string matching by using cache-efficient strategy. In: Paper Presented at the the Ninth International Conference on Web-Age Information Management 2008, WAIM 2008. IEEE(2008)Google Scholar
  16. Tchiboukdjian, M., Danjean, V., Raffin, B.: Binary mesh partitioning for cache-efficient visualization. IEEE Trans. Vis. Comput. Graph. 16(5), 815–828 (2010)CrossRefGoogle Scholar
  17. Wiedemann, D.H.: Solving sparse linear equations over finite fields. IEEE Trans. Inf. Theory 32(1), 54–62 (1986)MathSciNetCrossRefzbMATHGoogle Scholar
  18. Zoican, S.: Cache-efficient implementation of FIR filters using the Blackfin microcomputer. In: Paper Presented at the IEEE 8th International Conference on Telecommunications in Modern Satellite, Cable and Broadcasting Services 2007 (TELSIKS 2007) (2007)Google Scholar

Copyright information

© Springer Nature Singapore Pte Ltd. 2017

Authors and Affiliations

  1. 1.Defence Research and Development OrganisationNew DelhiIndia
  2. 2.Delhi Technological UniversityRohiniIndia

Personalised recommendations