The XTAdmin Database segment Table
The XTAdmin database contains a segment table that supports the memory affinity optimization tools for applications and CPU affinity options for all Cray compute nodes. The CPU affinity options apply to all Cray multicore compute nodes.
The segment table is similar to the attributes table but differs in that a node may have multiple segments associated with it; the attributes table provides summary information for each node.
In order to address the application launch and placement requirements for compute nodes with two or more NUMA nodes, the Application Level Placement Scheduler (ALPS) requires additional information that characterizes the intranode topology of the system. This data is stored in the segment table of the XTAdmin database and acquired by apbridge when ALPS is started, in much the same way that node attribute data is acquired.
The segment table contains the following fields:
node_id- The node identifier that maps to the
nodeidfield of theattributestable andprocessor_idfield of theprocessortable. socket_id- Contains a unique ordinal for each processor socket.
die_id- Contains a unique ordinal for each processor die; with this release,
die_idis0in the segment table and is otherwise unused (reserved for future use). numcores- The number of integer cores per node; in systems with accelerators this only applies to the host processor (CPU).
coremask- The processor core mask. The coremask has a bit set for each core of a CPU. 24-core nodes will have a value of
16777215(hex0xFFFFFF).coremaskis deprecated and will be removed in a future release. mempgs- Represents the amount of memory available, in Megabytes, to a single segment.
The /etc/sysconfig/xt file contains SDBSEG field, which specifies the location of the segment table file; by default, SDBSEG=/etc/opt/cray/sdb/segment.
segment table, use the following service database commands: - xtdb2segment, which converts the data into an ASCII text file that can be edited
- xtsegment2db, which writes the data back into the database file
For more information, see the xtdb2segment(8) and xtsegment2db(8) man pages.
After manually updating the segment table, log on to any login node or the SDB node as root and execute the apmgr resync command to request that ALPS reevaluate the configuration node segment information and update its information.
If ALPS or any portion of the feature fails in relation to segment scheduling, ALPS reverts to the standard scheduling procedure.