SPEC CPU2006 Flag Description for the Intel(R) C++ Compiler 11.0 for Intel(R) Fortran Compiler 11.0 for IPF Linux64 X

Copyright © 2006 Intel Corporation. All Rights Reserved.


Selecting one of the following will take you directly to that section:

Optimization Flags

Portability Flags

Compiler Flags

Other Flags

System and Other Tuning Information

Platform settings

One or more of the following settings may have been set. If so, the "General Notes" section of the report will say so; and you can read below to find out more about what these settings mean.

limit stacksize unlimited

Sets the stack size to n kbytes, or unlimited to allow the stack size to grow without limit.

dplace [-c cpu_numbers] [-r [l|b|t] [-v 1|2]

Dplace is used to bind a related set of processes to specific cpus or nodes to prevent process migration. In some cases, this will improve performance since a higher percentage of memory accesses will to the local node.


The cpuset facility is primarily a workload manager tool permitting a system administrator to restrict the number of processor and memory resources that a process or set of processes may use. A cpuset defines a list of CPUs and memory nodes. A process contained in a cpuset may only execute on the CPUs in that cpuset and may only allocate memory on the memory nodes in that cpuset. Essentially, cpusets provide you with a CPU and memory containers or soft partitions within which you can run sets of related tasks. Using cpusets on an SGI Altix system improves cache locality and memory access times and can substantially improve an application's performance and runtime repeatability. Restraining all other jobs from using any of the CPUs or memory resources assigned to a critical job minimizes interference from other jobs on the system.

The default cpuset for the init process, classic UNIX daemons, and user login shells is the root cpuset that contains the entire system. For systems dedicated to running particular applications, it is better to restrict init, the kernel daemons, and login shells to a particular set of CPUs and memory nodes called the boot cpuset.

/dev/cpuset/memory_spread_page, /dev/cpuset/memory_spread_cache

There are two Boolean flag files per cpuset that control where the kernel allocates pages for the file system buffers and related in kernel data structures. They are called memory_spread_page and memory_spread_slab.

If the per-cpuset Boolean flag file memory_spread_page is set, the kernel will spread the file system buffers (page cache) evenly over all the nodes that the faulting task is allowed to use, instead of preferring to put those pages on the node where the task is running.

If the per-cpuset Boolean flag file memory_spread_slab is set, the kernel will spread some file system related slab caches, such as for inodes and directory entries, evenly over all the nodes that the faulting task is allowed to use; instead of preferring to put those pages on the node where the task is running.

The setting of these flags does not affect anonymous data segment or stack segment pages of a task.

When new cpusets are created, they inherit the memory spread settings of their parent.

Setting memory spreading causes allocations for the affected page or slab caches to ignore the tasks NUMA mempolicy and be spread instead. Tasks using mbind() or set_mempolicy() calls to set NUMA mempolicies will not notice any change in these calls as a result of their containing tasks memory spread settings. If memory spreading is turned off, the currently specified NUMA mempolicy once again applies to memory page allocations.

Both memory_spread_page and memory_spread_slab are Boolean flag files. By default they contain "1", meaning that the feature is on for that cpuset. If a "0" is written to that file, that turns the named feature off.

SGI ProPack for Linux

SGI ProPack is a suite of performance optimization libraries and tools for SGI Linux systems. It includes application accelerators such as NUMAtools and Flexible File I/O, parallel programming tools such as the Message Passing Toolkit, real-time performance via SGI REACT, and performance monitoring tools such as Performance Co-Pilot.

The dplace utility from the ProPack NUMAtools package is used to pin processes in CPU2006 rate runs.