What's new

GMD response to memory 64 vs 32 bit

JST

Alibre Super User
Basic question....

Is GMD likely to do equally well with 4GB (the minimum) and 32 bit program vs 8GB (the minimum) and 64 bit program?

Even if they are equal in their ability to store a certain maximum size project, is one likely to be faster than the other?

One might expect that the 64 bit would be a little better at data storage, and thus might be more efficient even with the minimum memory, but I have no idea what the data storage format is.

Nor do I have any idea what criteria are used to develop the memory size requirement. Obviously there must be some assumptions as to a "typical" amount of required storage.

Yes, I realize that 32 bit is not being carried forward. This is about the best way to go forward until I upgrade to a many-core machine to help with using keyshot. I can increase memory, but it is disproportionately expensive for this machine.
 

DavidJ

Administrator
Staff member
32bit Windows only allows max 2GB for a single application, so in terms of memory potentially available to the program 64bit with 8GB should be considerably better if file sizes start to grow.

In terms of speed (presumably when not limited by memory), I did read in a thread a long time ago that 32 bit GD/Windows may actually be very slightly faster than 64bit GD/Windows - though I am not clear why that should be. If I recall correctly the speed difference is small and is unlikely to be noticed.

For a definitive answer, you may need Geomagic to advise.
 

JST

Alibre Super User
DavidJ said:
32bit Windows only allows max 2GB for a single application, so in terms of memory potentially available to the program 64bit with 8GB should be considerably better if file sizes

I am using 64 bit win 7 either way so OS limits are not applicable.

The question is whether the 64bit *program* with 8gb is any better with large files than the 32bit *program* is with 4gb , or if simply using the 32bit *program* with 8gb will be better for as long as I can stand it.
 

simonb65

Alibre Super User
The key to any windows application and its performance is RAM. Applications and their data are loaded from disk into RAM and executed/stored. If you don't have enough RAM available, then windows will start to use disk space to juggle around data it needs to use. That is your 'swap file'. The access time on the swap file is a real performance killer. So the more RAM you have the better.

As DavidJ points out 32 bit architectures and applications can only access a certain amount of RAM due to the limitations of memory pointers and the size of data they can hold. Also, every time you transfer data around your application or the micro needs to get the next program instruction to execute, a 32 bit system will take 3 or 4 times the number of operations to do what a single 64 bit operation can do.

So 64 bit architecture with plenty of RAM (i would never use less than 8GB ... preferably 16 or 32GB) will give you the the best performance you can get. (Just look at Task Manager to see if your swap file is being used and what size it grows to at its peak).

P.S. When I say architecture, I mean hardware AND operating system. A 64 bit micro running 32 bit applications (and the RAM limitation) will not give you any real benefits !

RAM, RAM, RAM, RAM and more RAM .... is the key to a cost effective performance gain :D
 

RocketNut

Alibre Super User
Even using a 64 bit OS running a 32 bit program is limited to the 32 bit memory limits, because the software's internal variables can not handle more than the 2GB limit. It deals with the compiler assigning the size of the program variables. A 32 bit compiler does not know how to write a 64 bit variable, it only knows 32 bit . Thus when it tries to read a variable that's beyond the 32 bit limit the program crashes. It's like you try to read page 100 of a book but there is only 50 pages.
 

Kyle

Senior Member
JST,

You will better off running 64bit Design with 4GB than you will with 32bit at 4GB.
 

JST

Alibre Super User
Kyle said:
JST,

You will better off running 64bit Design with 4GB than you will with 32bit at 4GB.

Thank you, that is what I thought from the standpoint of raw data storage, as well as the compiler issues which Rocketnut brought up etc. I would assume that 64 bit will also be better than 32 bit with the 8GB which is the minimum for the 64 bit version.

As it happens, on this machine (win7 64 bit) I can run 32 bit OR 64 bit GMD, and have my choice of 4GB or 8GB memory(albeit at an extortionate price vs normal to get the 8GB). So it really comes down to the best immediate choice to increase capacity. I notice the memory issue regularly, I seem to have reasonably complex designs.

Some confirmation of this comes from Rocketnut himself, who seems to have 16GB and much larger designs than even I typically get involved with. Presumably the existing memory here is largely used up by program requirements, and extensions would be nearly pure design space.
 

JST

Alibre Super User
Well, after running the 64 bit for some time now, on a less-than-"required" amount of memory, it works.

In fact it works a lot better than the 32 bit version which I was supposedly restricted to because of the memory issue. Apparently the memory "requirement" is reasonably elastic, because it is responding faster, and causing considerably fewer memory problems, than the 32 bit version did, despite the 4 GB.

I do not know where the "requirement" comes from, but I very much doubt if it was based on comparing the program versions with the same maximum-size file.

I wish I had known about this earlier. Thanks to Kyle for pointing it out.
 
Top