Testing MATLAB to the limits!

MATLAB users Hello!
I need to construct 6 billion pairs of some numbers and I would like to know if there is anything that I can do to increase the performance/speed/memory of MATLAB.
I use r2012a and r2009
Thanks in advance!

2 Kommentare

Daniel Shub
Daniel Shub am 9 Aug. 2012
What exactly are you going to do with all this data? It is unlikely that you will have enough RAM to load it all into memory and then do anything with it. Even saving it to a file is going to be painful.
Yash
Yash am 9 Aug. 2012
your Matlab will give out of memory error

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

per isakson
per isakson am 8 Aug. 2012

0 Stimmen

  1. use 64bit Matlab
  2. use uint8 if possible
  3. install a lot of RAM
  4. pre-allocate
  5. use the function, PROFILE
>> 6e9*2*8/1e9
ans =
96

4 Kommentare

loukos
loukos am 8 Aug. 2012
Bearbeitet: loukos am 8 Aug. 2012
what is:
6e9*2*8/1e9
ans =
96
per isakson
per isakson am 8 Aug. 2012
That is "6 billion" x "pairs" x "8bytes" converted to GB.
Sebastian Holmqvist
Sebastian Holmqvist am 9 Aug. 2012
While the data would amount to a whopping 96 Gigabytes (using uint8), since computers are binary-based you have to represent data in Gibibytes (1024^3) if you wish to store them to disk.
6e9*2*8/1024^3 = 89.407 GiB data on disk. On top of that you can expect some file overhead data, which depends on your method of storing the data. When it comes to memory, you still need 96 GB.
per isakson
per isakson am 9 Aug. 2012
Not uint8, "8bytes" stands for double.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Greg Heath
Greg Heath am 8 Aug. 2012

0 Stimmen

help memory
doc memory
Pre-allocate space as much as possible.
Greg

Kategorien

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by