Home  /  Products  /  Why Stata  /  What computer should I use to run Stata/MP?

What computer should I use to run Stata/MP?

Stata/MP is an edition of Stata that can perform symmetric multiprocessing (SMP) on a computer with multiple processors or cores.

Stata/MP licenses are not platform specific, and Stata/MP is available on all operating systems supported by Stata:

  • Windows (64-bit x86-64)
  • macOS (Apple Silicon and 64-bit Intel)
  • Linux (64-bit x86-64)

A computer’s processor is often called the central processing unit, or CPU. Computers can have multiple CPUs, and Stata/MP takes advantage of this design to process data faster.

Virtually all computers now have processors with multiple cores. A core is the computation engine of a CPU, consisting of integer and floating-point processing units. Thus a computer with one dual-core processor is similar to a computer with two processors. In fact, Stata/MP does not distinguish between CPUs and cores; it is designed to use systems with up to 64 cores—be they single core (one per CPU), dual core (two per CPU), or multicore (many per CPU).

Most manufacturers sell multiprocessor computers as servers. Thus your choice is to buy a desktop or laptop computer with a multicore CPU or a server with multiple processors, each of which likely has multiple cores. Having more processors/cores means that Stata/MP will run faster.

Be aware of the term “hyperthreaded”, however. Stata/MP runs faster on hyperthreaded processors, but not as fast as it would if you had full cores instead of hyperthreads. Computers with multiple hyperthreaded processors are suitable for Stata/MP. The number of real processors is the critical factor.

Both Intel and AMD manufactured chips are appropriate for Stata/MP on Windows or Linux, and both Apple Silicon and Intel are appropriate for Stata/MP on macOS. You can use any version of Windows from 7 to 10 and newer, or Linux, or you can use a Mac with macOS 10.12 or newer, to run Stata/MP.

Regardless of the system you buy, the most important thing you can do is to ensure that you have enough memory to hold 1.5 times the maximum dataset size you plan to use.