HP OpenVMS Alpha Partitioning and Galaxy Guide |
NUMA Implications on OpenVMS Applications |
|
|
|
| |
Each of the following areas of enhancement adds a new capability to the system. Individually each brings increased performance potential for certain application needs. Collectively they provide the environment necessary for a diverse application mix. The areas being addressed are:
A CPU references memory in the same RAD three times faster than it references memory in another RAD. Therefore, it is important to keep the code being executed and the memory being referenced in the same RAD as much as possible. Consistently good location is the key to good performance. In assessing performance, the following questions illustrate the types of issues a programmer needs to consider:
The OpenVMS scheduler and the memory management subsystem work together to achieve the best possible location by:
Home RAD ![]()
The OpenVMS operating system assigns a home RAD to each process
during process creation. This has two major implications. First,
with rare exception, one of the CPUs in the process's home RAD runs
the process. Second, all process private pages required by the process
comes from memory in the home RAD. This combination aids in maximizing
local memory references.
When assigning home RADs, the default action of OpenVMS is to distribute the processes over the RADs.
System Code Replication ![]()
During system startup, the operating system code is replicated
in the memory of each RAD so that each process in the system accesses
local memory whenever it requires system functions. This replication
is of both the executive code and the installed resident image code
granularity hint regions.
Distributing Global
Pages ![]()
The default action of OpenVMS is to distribute global pages
(the pages of a global section) over the RADs. This approach is
also taken with the assignment of global pages that have been declared
as reserved memory during system startup.
|
|
|