hardware
Type |
Status |
---|---|
CML extraction template |
|
HTML5 representation |
Attribute |
Value |
---|---|
source |
GROMACS log |
id |
hardware |
name |
Hardware section |
pattern |
\s*Detecting\sCPU\sSIMD\sinstructions.* |
pattern2 |
\s*Running\s*on.*node.* |
pattern3 |
\s*Hardware\sdetected\son\shost.* |
endPattern |
.*GPUs\sauto-selected.* |
endPattern2 |
\s*#.*:.*$\s*$\s* |
endOffset |
2 |
repeat |
* |
xml:base |
job/hardware.xml |
Comment
Running on 1 node with total 6 cores, 6 logical cores, 1 compatible GPU
Hardware detected on host XXXX (the node of MPI rank 0):
CPU info:
Vendor: Intel
Brand: Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz
Family: 6 Model: 79 Stepping: 1
Features: aes apic avx avx2 clfsh cmov cx8 cx16 f16c fma hle intel lahf mmx msr pcid pclmuldq pdpe1gb popcnt pse rdrnd rdtscp rtm sse2 sse3 sse4.1 sse4.2 ssse3
Hardware topology: Only logical processor count
GPU info:
Number of GPUs detected: 1
#0: NVIDIA Tesla P100-PCIE-16GB, compute cap.: 6.0, ECC: yes, stat: compatible
Input
Detecting CPU SIMD instructions.
Present hardware specification:
Vendor: GenuineIntel
Brand: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz
Family: 6 Model: 62 Stepping: 4
Features: aes apic avx clfsh cmov cx8 cx16 f16c htt lahf_lm mmx msr nonstop_tsc pcid pclmuldq pdcm pdpe1gb popcnt pse rdrnd rdtscp sse2 sse3 sse4.1 sse4.2 ssse3 tdt x2apic
SIMD instructions most likely to fit this hardware: AVX_256
SIMD instructions selected at GROMACS compile time: AVX_256
4 GPUs detected:
#0: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible
#1: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible
#2: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible
#3: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible
4 GPUs auto-selected for this run.
Mapping of GPUs to the 4 PP ranks in this node: #0, #1, #2, #3
Output text
1<comment class="example.output" id="hardware">
2 <module cmlx:templateRef="hardware">
3 <list dictRef="hardware">
4 <scalar dataType="xsd:string" dictRef="gm:hardware">Detecting CPU SIMD instructions.</scalar>
5 <scalar dataType="xsd:string" dictRef="gm:hardware">Present hardware specification:</scalar>
6 <scalar dataType="xsd:string" dictRef="gm:hardware">Vendor: GenuineIntel</scalar>
7 <scalar dataType="xsd:string" dictRef="gm:hardware">Brand: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz</scalar>
8 <scalar dataType="xsd:string" dictRef="gm:hardware">Family: 6 Model: 62 Stepping: 4</scalar>
9 <scalar dataType="xsd:string" dictRef="gm:hardware">Features: aes apic avx clfsh cmov cx8 cx16 f16c htt lahf_lm mmx msr nonstop_tsc pcid pclmuldq pdcm pdpe1gb popcnt pse rdrnd rdtscp sse2 sse3 sse4.1 sse4.2 ssse3 tdt x2apic</scalar>
10 <scalar dataType="xsd:string" dictRef="gm:hardware">SIMD instructions most likely to fit this hardware: AVX_256</scalar>
11 <scalar dataType="xsd:string" dictRef="gm:hardware">SIMD instructions selected at GROMACS compile time: AVX_256</scalar>
12 <scalar dataType="xsd:string" dictRef="gm:hardware">4 GPUs detected:</scalar>
13 <scalar dataType="xsd:string" dictRef="gm:hardware">#0: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible</scalar>
14 <scalar dataType="xsd:string" dictRef="gm:hardware">#1: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible</scalar>
15 <scalar dataType="xsd:string" dictRef="gm:hardware">#2: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible</scalar>
16 <scalar dataType="xsd:string" dictRef="gm:hardware">#3: NVIDIA Tesla K20m, compute cap.: 3.5, ECC: yes, stat: compatible</scalar>
17 <scalar dataType="xsd:integer" dictRef="gm:numProcGPU">4</scalar>
18 <scalar dataType="xsd:integer" dictRef="gm:numRanks">4</scalar>
19 </list>
20 </module>
21 </comment>
Output text
1<comment class="example.output" id="hardware2">
2 <module cmlx:templateRef="hardware">
3 <list dictRef="hardware">
4 <scalar dataType="xsd:string" dictRef="gm:hardware">Running on 1 node with total 6 cores, 6 logical cores, 1 compatible GPU</scalar>
5 <scalar dataType="xsd:string" dictRef="gm:hardware">Hardware detected on host XXXX (the node of MPI rank 0):</scalar>
6 <scalar dataType="xsd:string" dictRef="gm:hardware">CPU info:</scalar>
7 <scalar dataType="xsd:string" dictRef="gm:hardware">Vendor: Intel</scalar>
8 <scalar dataType="xsd:string" dictRef="gm:hardware">Brand: Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz</scalar>
9 <scalar dataType="xsd:string" dictRef="gm:hardware">Family: 6 Model: 79 Stepping: 1</scalar>
10 <scalar dataType="xsd:string" dictRef="gm:hardware">Features: aes apic avx avx2 clfsh cmov cx8 cx16 f16c fma hle intel lahf mmx msr pcid pclmuldq pdpe1gb popcnt pse rdrnd rdtscp rtm sse2 sse3 sse4.1 sse4.2 ssse3</scalar>
11 <scalar dataType="xsd:string" dictRef="gm:hardware">Hardware topology: Only logical processor count</scalar>
12 <scalar dataType="xsd:string" dictRef="gm:hardware">GPU info:</scalar>
13 <scalar dataType="xsd:string" dictRef="gm:hardware">Number of GPUs detected: 1</scalar>
14 <scalar dataType="xsd:string" dictRef="gm:hardware">#0: NVIDIA Tesla P100-PCIE-16GB, compute cap.: 6.0, ECC: yes, stat: compatible</scalar>
15 </list>
16 </module>
17
18 </comment>
Template definition
1<templateList> <template pattern="\s*Detecting\sCPU\sSIMD\sinstructions.*" pattern2=".*GPUs\sdetected.*" pattern3="\s*Running\s*on.*node.*" pattern4="\s*Hardware\sdetected\son\shost.*" endPattern="\s*" endPattern2="~" endOffset="0" repeat="*"> <record repeat="*">{X,gm:hardware}</record>
2 </template> <template pattern=".*GPUs\sauto-selected.*" endPattern="\s*" endPattern2="~"> <record repeat="*">{I,gm:numProcGPU}GPUs\sauto-selected.*</record> <record>\s*Mapping\sof\sGPUs\sto\sthe{I,gm:numRanks}.*ranks\sin\sthis\snode:.*</record>
3 </template> <transform process="addChild" xpath="." elementName="cml:list" dictRef="hardware" /> <transform process="moveRelative" xpath=".//cml:scalar" to="../../../cml:list[@dictRef='hardware']" /> <transform process="addChild" xpath="." elementName="cml:scalar" dictRef="gm:numProcGPU" value="$string(replace(//cml:scalar[@dictRef='gm:hardware' and contains(text(), 'Number of GPUs detected')]/text(), 'Number of GPUs detected:\s*', ''))" /> <transform process="delete" xpath=".//cml:scalar[@dictRef='gm:numProcGPU' and text() ='']" /> <transform process="moveRelative" xpath="./cml:scalar" to="../cml:list[@dictRef='hardware']" /> <transform process="delete" xpath=".//cml:scalar[@dictRef='gm:numProcGPU' and empty(text())]" /> <transform process="delete" xpath=".//cml:module" />
4 </templateList>