How to handle large matrix in alglib
Page 1 of 1

Author:  gyhuang [ Tue May 24, 2011 6:51 am ]
Post subject:  How to handle large matrix in alglib


I am wondering how can I handle large matrix in alglib. For example, if the size is 10000*10000, we can not use two dimensional array.

If the matrix is really large, we can only use vector<vector<double>> to maintain it. However, how can I assign it to real_2d_array or ae_matrix structures. If I can, I can use it to handle matrix problems. In my understanding, the inner data structure in real_2d_array and ae_matrix are both pointers. For example, aematrix.ptr.pp_double[i][j] maintains the matrix. In this case, alglib still can not handle large matrix.

Any suggestions?


Author:  Sergey.Bochkanov [ Tue May 24, 2011 1:04 pm ]
Post subject:  Re: How to handle large matrix in alglib

If you want to handle really large matrices, you should work in 64-bit mode. With 64-bit pointers and integers ALGLIB will easily process your data. Although not too fast - some linear algebra algorithms (SVD and EVD solvers) still rely on Level 2 BLAS which means that their performance will decrease on matrices which does not fit into CPU cache. In this case I recommend you to use ATLAS.

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group