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.

Sections

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.

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.