Re: Memory issue in SVD
- To: mathgroup at smc.vnet.net
- Subject: [mg75025] Re: Memory issue in SVD
- From: "Raj" <rajanikanth at gmail.com>
- Date: Sat, 14 Apr 2007 01:13:16 -0400 (EDT)
- References: <evn875$qs$1@smc.vnet.net>
hi! I am not an expert on this but this may help: Try using the SparseArray function..so instead of assigning the table to M, try doing this {U,S,V}=SingularValueDecomposition[SparseArray[Table[Random[],{5000}, {5000}]]]; Even then, you need atleast 3.5 GB of memory or more. Although not related to this..you may speed up your computation by enabling the NUMBER_OF_PROCESSORS environment variable(but you still need good amount of memory!!!). Good Luck, Raj On Apr 12, 11:33 pm, Tulga Ersal <ter... at umich.edu> wrote: > Dear group, > > I apologize in advance to bother you with a topic that came up many > times in the past, but nothing I found in the archives really helped. > > I am trying to find the singular value decomposition (SVD) of a big > matrix, but Mathematica gives the following message: > > "No more memory available. > Mathematica kernel has shut down. > Try quitting other applications and then retry." > > As an example, create a 5000x5000 matrix with random entries and try > to find its SVD: > > M=Table[Random[],{5000},{5000}]; > {U,S,V}=SingularValueDecomposition[M]; > > My computer cannot perform the SVD and gives the message above almost > immediately. Originally I thought the matrix was too big and my > computer didn't really have the necessary resources, but I can > compute the SVD using another program, so I know it is not really an > hardware issue. I'm using Mathematica 5.2 on a PC running Windows XP, > with 2GB RAM, 160GB hard disk, two 3.4 GHz processors. > > Is there a setting in Mathematica that needs tweaking to avoid the > memory problem? I have tried setting $HistoryLength=0, or using > Share, and neither helped. I'd appreciate any recommendations. > > Thank you, > Tulga