Go to main content
Oracle® Developer Studio 12.6: Numerical Computation Guide

Exit Print View

Updated: July 2017
 
 

5.1 Supported Operation Systems, Hardware, and Memory Model

Oracle Developer Studio 12.6 supports Oracle Solaris 10 1/13, Oracle Solaris 11, and Oracle and Red Hat Enterprise Linux releases 6 and 7.

Oracle Developer Studio supports the same hardware as the corresponding Oracle Solaris release. For SPARC, Oracle Solaris 10 and 11 support only SPARC processors that support a 64-bit address space memory model. For x86, Oracle Solaris 11 supports only x86 processors that support a 64-bit address space memory model. Oracle Solaris 10 also supports many x86 processors that only support a 32-bit address space memory model.

All 64-bit processors can execute programs compiled for either 32-bit or 64-bit address spaces. Oracle Solaris 10 and 11 support executing 32-bit programs on a 64-bit operating system.

32-bit and 64-bit addressing is selected at compile time with the –m32 and –m64 command-line options. These affect the size of C integer and pointer variables. The operating system provides some 32-bit and 64-bit runtime libraries, and the compilers provide additional libraries for specific languages.

A program that requires a 64-bit address space must be compiled with –m64. Many programs could be compiled with either one of the address models and run correctly, so it is natural to ask which model is faster. A C program that moves a lot of integer and pointer data to and from memory might be half as fast when using –m64. But the 64-bit application binary interfaces (ABIs) have more registers than the 32-bit ABIs, so fewer memory moves might be necessary. For most programs, the performance difference is not significant but to be sure of a particular program, it is best to compile both ways and test for correctness and performance.


Note -  In Sun Studio 11 and older releases, the memory model was not an explicit option like –m32 or –m64, but was built into the –xarch options which had different names corresponding to the memory model. With Sun Studio 12, the memory model options and architecture options have been separate.