Running Stata MP at the SSCC

The SSCC has two varieties of Stata. Stata SE uses just one processor, but Stata MP can take advantage of up to 64 processors for a huge increase in performance. Use it whenever you have a Stata job that’s taking a long time due to computations, such as mixed models or data wrangling with big data sets (unfortunately it can’t help with loading big data sets). No need to change your do files, just how you run them.

Important

Stata MP64 licenses are very expensive, so we have a limited number of them. Please do not leave a Stata MP session open if you’re not actively using it.

For more about using these servers, especially the Linux servers, see the Guide to Research Computing at the SSCC.

Winstat, WinSilo, and Winstat for Big Jobs

On Winstat, WinSilo, or Winstat for Big Jobs, right-click on a do file and choose Execute StataMP Batch Mode. Stata will not start its usual graphical user interface: it will simply run your do file and then quit. A log file with the same name as your do file will be created in the same directory as your do file automatically, but any log using commands will be honored as well.

Stata MP on Winstat will try to use 4 cores; Stata MP on WinSilo or Winstat for Big Jobs will try to use 24 cores. It may use less depending on what other users of the server are doing.

Linstat and LinSilo

On Linstat and LinSilo, the stata and xstata commands run Stata MP automatically. Open OnDemand also runs Stata MP when you click on it in the Applications list. The Linstat servers have 36 or 48 cores, LinSilo has 44 cores, and LinSiloBig has 80 cores but Stata MP can only use 64. The number of cores Stata MP can actually use will depend on what other users of the server are doing.

Slurm and SlurmSilo

Stata jobs submitted to Slurm automatically use Stata MP, and will use however many cores you reserve. Normally you want to reserve 64 cores so your job runs as quickly as possible. However, some Stata commands could not be parallelized. Pay attention to the efficiency report you get when your job is finished, and if you’re not using a lot of the CPU time you’re reserving, reduce the core count for future jobs.

Most of the servers in the Slurm cluster have 128 cores and can run two 64-core Stata jobs (we’d get 128 core licenses if Stata made them available). Most of the servers in SlurmSilo have 44 cores, but one has 80 (only reserve 64 if you’re using Stata). Since cores are reserved in Slurm, the number of cores you can use will not be affected by other jobs.