With finite element model sizes becoming larger, the need for increased memory allocation has become more important. In response to this need, NX Nastran executables are compiled with a 64-bit integer size instead of 32-bits. The 32-bit integer executable can allocate up to 8 Gb of memory, while the executable compiled with a 64-bit integer size can allocate approximately 20 million terabytes. Practically speaking, there are no machines currently supporting more than half a terabyte, thus the amount of memory these executables can allocate is only limited by the amount of memory installed on the machine.
There are 3 different executable types available for NX Nastran:
32-bit word size and 32-bit memory pointer size, designated ILP-32. Integers are 32-bits and floating point uses two 32-bit words. 32-bit word size and 64-bit memory pointer size, designated LP-64. Integers are 32-bits and floating point uses two 32-bit words. 64-bit word size and 64-bit memory pointer size, designated ILP-64. Integers are 64-bits and floating point uses one 64-bit word.
When the ILP-32 and LP-64 executables are used, the bytes_per_word is 4. When the ILP-64 executable is used, the bytes_per_word is 8. This difference is important when you are specifying memory with the “memory” keyword. See the “memory” keyword in the NX Nastran Quick Reference Guide for more information
In summary, to take advanced of RAM memory above 8 GB RAM you need to use the ILP-64bit NX Nastran solver. It is fine to use with smaller models and it will be my "daily solver" in machines with 24 GB RAM memory.
Also, make sure you are using NX NASTRAN Release 7.1, with version of NXN7.0 the following errors appear (fixed in NXN7.1):
ILP64 executable on Windows not able to allocate more than 8GB of memory. Message not given on em64tnt LP64 when memory is reduced to 8GB. Groundcheck failure in Windows ILP-64 executable.
In FEMAP you can select the ILP-64 NX NASTRAN solver from "File > Preferences > Interfaces". In NX AdvSim 7.5 go to "File > Utilities > Customer Defaults > Simulation > NASTRAN > Solver Parameters".
I would like to point out that for models larger than about 500000 DOFs you should run Nastran with the keyword "memory=estimate". This launches the estimate.exe program within the Nastran installation directory and assigns the ideal amount of memory for Nastran. I've found out that if you give Nastran more memory than it needs, the solving speed increases because you are choking off other Windows I/O operations indirectly used by Nastran.