Well, you are in the right way to solve the memory usage problem.
It is, however, not the only way to figure that out, according to the official.
Good luck
From official FAQ,
----------------------------------------------------------------------------------
Q: I have large programs that take a long time to run--sometimes they run out of memory unexpectedly. What can I do?
Ans: We suggest Windows NT, 2000 or XP for running long jobs that use a lot of memory.
Q: My problem has large matrices, how large can they be?
Ans: GAUSS uses all available memory in the computer and thus the primary limitation is the amount of RAM. Another limitation is the maximum addressable size on the computer. A 32-bit computer can maximally address about 2.2 gigabytes. The limitation in GAUSS in this case would be about one-sixth of 2.2 gigabytes, or about 360 megabytes because of temporary copies of matrices made during operations within a statement. A single element of a matrix is a double precision number taking 8 bytes. Thus a computer with more than 2.2 gigabytes can handle matrices of about 6000 by 6000. When matrices are that large in a problem, there could be serious slowdowns. The time involved in a matrix multiply, for example, is a cubic function of the size of the matrix. A single matrix multiply involving a 6000 by 6000 matrix would take about 30 hours to compute on one of today's PCs.
Usually only datasets come in sizes that large, and efficient code can be written to handle datasets larger than even 2.2 gigabytes by leaving the data on the disk and using special functions for accessing the data on the disk. Efficient methods will also be needed for computations. For example, rather than compute a moment matrix with a matrix multiply use GAUSS's moment function which computes only the lower left portion reducing the problem to a quadratic from a cubic function of size. And there is also a moment function, called moment, that can compute a moment matrix from a GAUSS dataset on the disk.