Cancel
Showing results for 
Search instead for 
Did you mean: 

5 Tips to Make NX Nastran Faster

Community Manager Community Manager
Community Manager

NX Nastran can be optimized to run simulations faster, but how? If you think processor speed is the main factor you should consider, think again. Degrees of freedom (DOF) are also not as important to Nastran speed as many simulation analysts would guess. So what has the biggest impact on NX Nastran solve times?

 

Input/output (I/O) according to Dr. Paul Blelloch, director of aerospace analysis for ATA Engineering, in a presentation he gave at the Siemens CAE & Test Symposium back in October.

 

We’ll look at five easy ways you can improve performance in NX Nastran starting with I/O.

 

  1. Nastran Best Practices.jpgLocate SCRATCH and SCR300 files on the fastest memory.
    When it comes to I/O, SCRATCH and SCR300 files have the most. These are going to be the areas you want to target in order to improve solving speed. Luckily you can specify a location within NX Nastran for high I/O files. If you have a large amount of RAM (at least 128 GB), your best bet is to locate the files there. Another good option is a solid state drive (SSD).

 

  1. Set parameters within the RCF file, command line, or options window.
    There are a few parameters that let you control the I/O in NX Nastran. You’ll want to use these when optimizing for speed. SCR controls how much data is written to the DBALL database compared to the SCRATCH and SCR300 files. The fastest option is SCR = YES. Everything will be written to the SCRATCH files, but beware! If you choose this option you can’t restart. Smem lets you determine how much RAM to dedicate to the SCRATCH files. The more RAM, the faster your simulation will be.

 

  1. Minimize the Front Size.
    Front Size, or the maximum length of a non-zero column in a matrix after it is reordered, plays a big role in how long it takes to solve. The bigger the Front Size, the longer it will take, so you’ll want to use the reordering algorithms in NX Nastran to minimize the Front Size of your model. NX Nastran will by default choose either the BEND or METIS algorithm based on the number of 3D elements in your model, but remember, the algorithms aren’t perfect. If you’re seeing slower speeds, you might want to try switching from one algorithm to the other.

 

FEA Solver NX Nastran.jpg4. Choose the right operating system.
Your operating system can also impact the amount of time a solve takes, so be sure to review all the options out there and choose the best one for your needs. NX Nastran typically performs better on Linux due to the way the OS handles memory, so Dr. Blelloch recommends Linux if you’re looking to reduce your runtime.

 

  1. Compare versions of NX Nastran.
    Finally, understand the differences between versions of NX Nastran—and know which version will be best at lowering your solve times. NX Nastran ILP has a few advantages over LP. For one, it has unlimited RAM. (Remember #1 where we talked about how important RAM is?) LP on the other hand has only 8GB RAM. Add to that the fact that ILP has 64-bit integers (compared to LP’s 32-bit integers) and you start to see the benefit ILP offers you. More integers won’t necessarily affect your runtime, but it will improve accuracy. 

Nastran Versions.jpg

So there you have it. Have you found any ways to make NX Nastran faster? Let us know down in the comments below! 

 

For more information on improving performance in NX Nastran, read the full ENGINEERING.com article this post is based on, and check out Dr. Paul Blelloch’s presentation from the 2014 Siemens CAE & Test Symposium in which these tips—and more!—are located.

Comments
Legend

One thing that has made a big difference for us is to implement caching on the scratch filesystem.  We use a RAID0 SSD configuration, but with an added cache taken from the machine's RAM to increase I/O throughput significantly.  Using Primocache, our random read/write speed was dramatically increased.

Pioneer

as per your 5 th point how i will know that i am using Lp64 or ILP64 nastran. if so where shoud i change this  to make NX Nastran faster

Siemens Phenom

Karthik,

 

You know by the name of the executable you use. If you are using nastran64.exe or nastran64w.exe, that is LP64. nastran64L.exe and nastran64Lw.exe are the ILP-64 versions.

 

The executables with the "w" will pop-up a small dialog with e file browser to allow you to select an input deck. These are intended to be used by desktop shortcuts, start menu/taskbar icons.

 

The executables without the "w" are what should be used from a command line or as in a batch script.

 

A NX 10 installation using an embedded version of NX Nastran should use be set up to use nastran64L.exe.

 

After a run, you can look at the .f06 or .log file to see which executable was used.

Creator

 From Siemens NX Nastran GUI, when I launch the solver with default settings, which executable is then run, nastran64Lw.exe or nastran64w.exe? And how is memory allocation and number of processors controlled/limited when default settings are used?

 

 

 

 

Siemens Phenom

Not sure what you mean. The only "NX Nastran GUI" is the file selection dialog, followed by the command line options dialog that you get when you execute either nastran64Lw.exe or nastran64w.exe. In that case, you have determined which one is run by double clicking on it.

 

If you mean which one is configured by default in NX Advanced Simulation, the answer is neither one as these are not meant to be called by another process for a batch solve. Prior to NX 10, the default NX configuration was to run nastran.exe, which is the same and nastran64.exe. In NX 10, the default was switched to nastran64L.exe.

 

Prior to NX 10, the .rcf file contained memory=estimate as the default memory allocation. This caused an old utility (estimate.exe) to run and give a heuristic memory estimate. This was really only useful for simple linear statics or normal modes runs. Estimate typically underpredicted memory for models with more modern boundary conditions (glue, contact) or nonlinearities. In NX 10, the .rcf file default was changed to memory=.45*physical This allocates 45 % of the physical machine memory (ram) to the solution.

 

Number or processors is set to 1 by default. This can be changed via the smp keyword which can be set in the .rcf file or on the Nastran command line.