27.16 RLIMIT Command — Set Resource Limits
The RLIMIT command is used to set and display computer
resource limits. It is critically important to set the stacksize
limit (STACK) when running very large calculations in parallel
on an SGI workstation. The command is only implemented on SGI and Linux
systems. On Linux systems, the VMEM option is not accepted.
27.16.1 Syntax
RLIMIT repeat(limit [int ])
[INFinity]
[CORE ]
[CPU ]
[DATA ]
limit ::= [FSIZE ]
[NOFILE]
[STACK ]
[VMEM ]
[RSS ]
27.16.2 Function
The options in the RLIMIT command set computer resource limits.
After the command finishes execution, the current limits are printed.
The keywords have the following meaning:
- CORE
- Sets the maximum core file size in bytes. A zero limit means
no core files.
- CPU
- Sets the maximum CPU utilization per process in seconds.
- DATA
- Specifies the maximum extent of the data segment in a process in
units of bytes.
- FSIZE
- The maximum size of a file in bytes. N.B. In Irix 5.3 (and probably 6.1),
this limit can only be changed downward, because of a bug in setting
this limit, where the system call requires both soft and hard limits
to be changed simultaneously.
- NOFILE
- Maximum number of open files.
- STACK
- Maximum stack size. For parallel execution of CONGEN,
this parameter is very important. The default value of the stack size,
64 MB, results in memory consumption of 1.28GB for a 20 processor
run. CONGEN can run very well using a stack size of 1MB, which
is recommended for these large jobs.
- VMEM
- Maximum amount of virtual memory allowed to a process. This is effectively
the sum of the data segment and stack memory.
- RSS
- Declared amount of physical memory required by the process. When
total system memory is limited, any process using more than this
amount of memory will have its pages written to the swap file first.