Thread: [Lapackpp-devel] bugs
Status: Beta
Brought to you by:
cstim
From: Do bi <mrc...@ya...> - 2006-08-04 16:57:48
|
Hi Christian sorry I mistakenly sent to your personal address the first time. This is my mportant enquiry: I noticed that LaGenMatDouble cannot be a size more than (10000,10000). Please tell me what to do. I need larger matrices. Thanks. --------------------------------- Groups are talking. We´re listening. Check out the handy changes to Yahoo! Groups. |
From: Christian S. <sti...@tu...> - 2006-08-05 16:33:47
|
Am Freitag, 4. August 2006 18:57 schrieb Do bi: > Hi Christian sorry I mistakenly sent to your personal address the first > time. This is my mportant enquiry: > > I noticed that LaGenMatDouble cannot be a size more than (10000,10000). > Please tell me what to do. I need larger matrices. > Thanks. Have you spent some thought about the required memory for the actual storage of a 10^4 x 10^4 general matrix? Obviously it has 10^8 entries. The "double" data type needs 8 bytes each ("float" needs 4 bytes), so this matrix would need 8*10^8 bytes in memory or in other words roughly 800 MBytes (in one continuous block). You don't have that amount of memory available. That's the whole point of all the other matrix data types which can be used if you don't need one "general dense" matrix (but instead any kind of symmetry or triangularity or whatever.) So, no, it's not a bug of lapack/lapackpp that you cannot create LaGenMatDouble of that size. You cannot do this unless you're on some kind of supercomputer. You have to formulate your problem in a different way so that you don't need a LaGenMatDouble. Christian |
From: Do bi <mrc...@ya...> - 2006-08-05 18:14:42
|
Please can you hint me on how to reduce the memory needs of a 10^5 x 10^5 Matrix in Lapackpp? 1) How can I use floats instead for the matrix? 2) What are the options in Lapack in terms of taking advantage of the symmetry, and using just half the matrix, and still solve A . x = b ? Please just hint me on what you would do. Regards Donald. Christian Stimming <sti...@tu...> wrote: Am Freitag, 4. August 2006 18:57 schrieb Do bi: > Hi Christian sorry I mistakenly sent to your personal address the first > time. This is my mportant enquiry: > > I noticed that LaGenMatDouble cannot be a size more than (10000,10000). > Please tell me what to do. I need larger matrices. > Thanks. Have you spent some thought about the required memory for the actual storage of a 10^4 x 10^4 general matrix? Obviously it has 10^8 entries. The "double" data type needs 8 bytes each ("float" needs 4 bytes), so this matrix would need 8*10^8 bytes in memory or in other words roughly 800 MBytes (in one continuous block). You don't have that amount of memory available. That's the whole point of all the other matrix data types which can be used if you don't need one "general dense" matrix (but instead any kind of symmetry or triangularity or whatever.) So, no, it's not a bug of lapack/lapackpp that you cannot create LaGenMatDouble of that size. You cannot do this unless you're on some kind of supercomputer. You have to formulate your problem in a different way so that you don't need a LaGenMatDouble. Christian --------------------------------- How low will we go? Check out Yahoo! Messengers low PC-to-Phone call rates. |
From: Christian S. <sti...@tu...> - 2006-08-06 10:18:09
|
Am Samstag, 5. August 2006 20:14 schrieb Do bi: > Please can you hint me on how to reduce the memory needs of a 10^5 x 10^5 > Matrix in Lapackpp? 1) How can I use floats instead for the matrix? Use LaGenMatFloat instead of LaGenMatDouble. > 2) What are the options in Lapack in terms of taking advantage of the > symmetry, and using just half the matrix, and still solve A . x = b ? Use LaSymmMatDouble from include/symd.h, but the header file hasn't been proof-read by myself (obvious because of almost missing documentation) so you need to watch out for potential errors in the code. Christian > Christian Stimming <sti...@tu...> wrote: > > Am Freitag, 4. August 2006 18:57 schrieb Do bi: > > Hi Christian sorry I mistakenly sent to your personal address the first > > time. This is my mportant enquiry: > > > > I noticed that LaGenMatDouble cannot be a size more than (10000,10000). > > Please tell me what to do. I need larger matrices. > > Thanks. > > Have you spent some thought about the required memory for the actual > storage of a 10^4 x 10^4 general matrix? Obviously it has 10^8 entries. The > "double" data type needs 8 bytes each ("float" needs 4 bytes), so this > matrix would need 8*10^8 bytes in memory or in other words roughly 800 > MBytes (in one continuous block). You don't have that amount of memory > available. That's the whole point of all the other matrix data types which > can be used if you don't need one "general dense" matrix (but instead any > kind of symmetry or triangularity or whatever.) > > So, no, it's not a bug of lapack/lapackpp that you cannot create > LaGenMatDouble of that size. You cannot do this unless you're on some kind > of supercomputer. You have to formulate your problem in a different way so > that you don't need a LaGenMatDouble. |