...
Following are the Numa Modes for KNL processors:
Mode | Name | Description |
---|---|---|
a2a | All-to-All | Addresses are uniformly hashed across distributed directories |
quad | Quadrant | Addresses are hashed to a directory in the same quadrant as the memory |
hemi | Hemisphere | Addresses are hashed to a directory in the same hemisphere as the memory |
snc4 | (4) Sub-NUMA | Tiles are divided into four sub-NUMA Clusters cluster, each cluster is one NUMA node. |
snc2 | (2) Sub-NUMA | Tiles are divided into two sub-NUMA Clusters clusters; each cluster is one NUMA node |
Following are the MCDRAM modes for KNL processors:
Mode | Name | Description |
---|---|---|
cache | Cache | MCDRAM is used as a cache between the processor and DDR4 memory |
flat | Flat | MCDRAM is physically addressable, in a separate NUMA node |
equal | Hybrid | Equal 50% of MCDRAM is Flat, and 50% of MCDRAM is Cache |
split | Hybrid | Split 75% of MCDRAM is Flat, and 25% of MCDRAM is Cache |
The KNL processor and MCDRAM can be configured in twenty different combinations of NUMA and MCDRAM
modes. For example, the quadrant NUMA mode can be combined with the cache MCDRAM mode, and this
combination is known as quad/cache. For more detail on same please check here.
...
We thought of using the new "SYSTEM" query to generate both knl and non-knl node. But there are certain elements/attrib which are
are exclusive to the query types. And just using "SYSTEM" query will not be viable.
These diffrences are as following:
ELEMENT/ATTRIBUTES | INVENTORY_QUERY | SYSTEM_QUERY |
---|---|---|
Architecture | Available (usually value is XT But it seems, there are other supported architecture) | -NA- |
Segment | Available | -NA- (But can be computed) |
PBScrayorder | Available( Easily computed) | -NA- |
LabelArray | Available | -NA- |
numa_cfg | NA | Available |
hbm_size_mb | NA | Available |
hbm_cache_pct | NA | Available |
NA: Not Available
Solution:
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<Node node_id="28" name="xxxx" architecture="XT" role="BATCH" state="UP"> <SocketArray> <Socket ordinal="0" architecture="x86_64" clock_mhz="2100"> <SegmentArray> <Segment ordinal="0"> <ComputeUnitArray> <ComputeUnit ordinal="0"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="1"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="2"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="3"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> </ComputeUnitArray> <MemoryArray> <Memory type="OS" page_size_kb="4" page_count="4194304"/> </MemoryArray> <LabelArray/> </Segment> <Segment ordinal="1"> <ComputeUnitArray> <ComputeUnit ordinal="0"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="1"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="2"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> <ComputeUnit ordinal="3"> <ProcessorArray> <Processor ordinal="0"/> <Processor ordinal="1"/> </ProcessorArray> </ComputeUnit> </ComputeUnitArray> <MemoryArray> <Memory type="OS" page_size_kb="4" page_count="4194304"/> </MemoryArray> <LabelArray/> </Segment> </SegmentArray> </Socket> </SocketArray> <AcceleratorArray> <Accelerator ordinal="0" type="GPU" state="UP" family="Tesla_K20X" memory_mb="6144" clock_mhz="732"/> </AcceleratorArray> </Node> |
...