diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-1.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-1.json index 31155e0ad33366d512112d01232ff0f77531a425..93a41a2d6862355440ec67fcfa6edc789e821109 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-1.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-1.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-10.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-10.json index 6cfc3609d18920244a409f0cfc478a18b405b7c5..a148606877f90407905edc88b89ed60bad04f98b 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-10.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-10.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-11.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-11.json index 9598f5f28f0b02061b2e9e71dd55e239dcbe86c3..cb86c11da56434d0b0dfcd3a0172ec904488fd11 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-11.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-11.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-12.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-12.json index af5a6416b1853491e2bef0e3b0b81e820954e295..dbbd773cf11f612f5c2582e5dd19f3f110bafecd 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-12.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-12.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-2.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-2.json index 48446ae7fd5b29ac6fc01b22ca65b04736cabe37..6e0f8b4ee9c4638b123089839fff9af7fcc0f82f 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-2.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-2.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-3.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-3.json index c13eef0c5206424ce93484a62a959e012fafdc24..75485990c9e0ae6c7de26b5a3c61e4cd98c4cc4a 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-3.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-3.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-4.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-4.json index 8391cc5d51a79738e727985940a3f873fe653789..5071a4fb78a4a35195edf8f8f907b8dee471ad8e 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-4.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-4.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-5.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-5.json index df23669edb115cd0617b25ecfeaf5f2838dc095c..b2c7caae4df6eb7fbd1facaeace834c1fbcb8938 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-5.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-5.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-6.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-6.json index 2fc28f5b1b508d24f9a9c90278176aeff3e7cae2..fd8d58be31a6ac56be38b2e2bc219fc59742d1d5 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-6.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-6.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-7.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-7.json index 1e64fa5be53bdc753c4c2c07c01db4ca085fd170..8d1cebc773f6ca552a86f9cf9498f27ca3caac6e 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-7.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-7.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-8.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-8.json index 783a4cbeaf3eb5b36057e78baa48c685a0e43024..c02b94c9ce036f8717d28ebbe99e120ac5e3d080 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-8.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-8.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-9.json b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-9.json index f94a7270c8bdad56739a8466e160aeee301568a2..867a181a54d5e20a66a082f7dbe4a3ebb8bac803 100644 --- a/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-9.json +++ b/data/grid5000/sites/toulouse/clusters/estats/nodes/estats-9.json @@ -25,7 +25,7 @@ "cpu_affinity": 1, "device": "/dev/nvgpu", "memory": 32518041600, - "microarchitecture": "Tegra", + "microarchitecture": "Volta", "model": "AGX Xavier", "performance": { "fp-16": 2820000000000, diff --git a/lib/refrepo/gen/wiki/generators/hardware.rb b/lib/refrepo/gen/wiki/generators/hardware.rb index 03f4f70c02f606bc0ca58505ed05e92ab496260e..0d12547a16c2641f5b005918af7a428a001ff39c 100644 --- a/lib/refrepo/gen/wiki/generators/hardware.rb +++ b/lib/refrepo/gen/wiki/generators/hardware.rb @@ -186,29 +186,32 @@ class G5KHardwareGenerator < WikiGenerator model = GPURef.model2shortname(acc['model']) cores = acc['cores'] compute_capability = acc.has_key?('compute_capability') ? acc['compute_capability'] : "N/A" + microarchitecture = acc['microarchitecture'] mem = RefRepo::Utils.get_as_gb(acc['memory']) when :MIC vendor = acc['mic_vendor'] model = acc['mic_model'] compute_capability = { text: "N/A", sort: 0 } + microarchitecture = 'N/A' mem = RefRepo::Utils.get_as_gb(acc['mic_memory']) when :FPGA vendor = acc['vendor'] model = acc['model'] compute_capability = { text: "N/A", sort: 0 } + microarchitecture = 'N/A' mem = RefRepo::Utils.get_as_gb(acc['memory']) end key = [vendor, { text: acc_type.to_s, sort: acc_type.to_s } ] init(data, 'acc_families', key) data['acc_families'][key][site_uid] += 1 - - key = [vendor, { text: acc_type.to_s, sort: acc_type.to_s }, model, { text: "#{mem}GB", sort: mem }] + + key = [vendor, { text: acc_type.to_s, sort: acc_type.to_s }, model, {text: microarchitecture, sort: get_date(microarchitecture) + ', ' + microarchitecture}, { text: "#{mem}GB", sort: mem }] init(data, 'acc_models', key) data['acc_models'][key][site_uid] += 1 if acc_type == :GPU - key = [vendor, model, { text: "#{mem}GB", sort: mem }, compute_capability] + key = [vendor, model, {text: microarchitecture, sort: get_date(microarchitecture) + ', ' + microarchitecture}, { text: "#{mem}GB", sort: mem }, compute_capability] init(data, 'gpu_cores', key) data['gpu_cores'][key][site_uid] += cores end @@ -261,11 +264,11 @@ class G5KHardwareGenerator < WikiGenerator generated_content += "\n== Accelerator counts per type ==\n" table_columns = ['Vendor', 'Type'] + sites + ['Accelerators total'] generated_content += MW.generate_table(table_options, table_columns, get_table_data(data, 'acc_families')) - table_columns = ['Vendor', 'Type', 'Model', 'Memory'] + sites + ['Accelerators total'] + table_columns = ['Vendor', 'Type', 'Model', 'Microarch', 'Memory'] + sites + ['Accelerators total'] generated_content += "\n== Accelerator counts per model ==\n" generated_content += MW.generate_table(table_options, table_columns, get_table_data(data, 'acc_models')) generated_content += "\n== GPU core counts per GPU model ==\n" - table_columns = ['Vendor', 'Model', 'Memory', 'Compute capability'] + sites + ['Cores total'] + table_columns = ['Vendor', 'Model', 'Microarch', 'Memory', 'Compute capability'] + sites + ['Cores total'] generated_content += MW.generate_table(table_options, table_columns, get_table_data(data, 'gpu_cores')) generated_content += "\n= Networking =\n" @@ -356,6 +359,15 @@ class G5KHardwareGenerator < WikiGenerator 'Vulcan' => '2018', 'Ice Lake' => '2021', 'Carmel' => '2018', + 'Vega20' => '2018', + 'Ampere' => '2020', + 'Turing' => '2018', + 'Maxwell' => '2014', + 'Kepler' => '2012', + 'Pascal' => '2016', + 'Volta' => '2017', + 'Fermi' => '2010', + 'N/A' => ' ', } date = release_dates[microarchitecture] raise "ERROR: microarchitecture not found: '#{microarchitecture}'. Add in hardware.rb" if date.nil? diff --git a/lib/refrepo/gpu_ref.rb b/lib/refrepo/gpu_ref.rb index 32e7a5de67066c71963c87edd1f5736c8d0ee29c..b3fe5b08079258b4f13eeafbcc7ae1e6b8c13ab5 100644 --- a/lib/refrepo/gpu_ref.rb +++ b/lib/refrepo/gpu_ref.rb @@ -10,7 +10,7 @@ class GPURef 'compute_capability' => '7.5', 'short_name' => 'RTX 2080 Ti', 'alias' => 'rtx2080ti', - 'microarchitecture' => 'Turing', + 'microarchitecture' => 'Turing', 'performance' => { 'fp-16' => 26900000000000, 'fp-32' => 13450000000000, @@ -22,7 +22,7 @@ class GPURef 'compute_capability' => '6.1', 'short_name' => 'GTX 1080 Ti', 'alias' => 'gtx1080ti', - 'microarchitecture' => 'Pascal', + 'microarchitecture' => 'Pascal', 'performance' => { 'fp-16' => 177200000000, 'fp-32' => 11340000000000, @@ -34,7 +34,7 @@ class GPURef 'compute_capability' => '6.0', 'short_name' => 'Tesla P100', 'alias' => 'p100-pcie-16', - 'microarchitecture' => 'Pascal', + 'microarchitecture' => 'Pascal', 'performance' => { 'fp-16' => 19050000000000, 'fp-32' => 9526000000000, @@ -46,7 +46,7 @@ class GPURef 'compute_capability' => '6.0', 'short_name' => 'Tesla P100', 'alias' => 'p100-sxm2-16', - 'microarchitecture' => 'Pascal', + 'microarchitecture' => 'Pascal', 'performance' => { 'fp-16' => 21220000000000, 'fp-32' => 10610000000000, @@ -58,7 +58,7 @@ class GPURef 'compute_capability' => '7.0', 'short_name' => 'Tesla V100', 'alias' => 'v100-pcie-32', - 'microarchitecture' => 'Volta', + 'microarchitecture' => 'Volta', 'performance' => { 'fp-16' => 28260000000000, 'fp-32' => 14130000000000, @@ -70,7 +70,7 @@ class GPURef 'compute_capability' => '7.0', 'short_name' => 'Tesla V100', 'alias' => 'v100-sxm2-32', - 'microarchitecture' => 'Volta', + 'microarchitecture' => 'Volta', 'performance' => { 'fp-16' => 28260000000000, 'fp-32' => 14130000000000, @@ -82,7 +82,7 @@ class GPURef 'compute_capability' => '2.0', 'short_name' => 'Tesla M2075', 'alias' => 'm2075', - 'microarchitecture' => 'Maxwell', + 'microarchitecture' => 'Maxwell', 'performance' => { 'fp-16' => 0, 'fp-32' => 1028000000000, @@ -94,7 +94,7 @@ class GPURef 'compute_capability' => '5.2', 'short_name' => 'GTX 980', 'alias' => 'gtx980', - 'microarchitecture' => 'Fermi', + 'microarchitecture' => 'Fermi', 'performance' => { 'fp-16' => 0, 'fp-32' => 4981000000000, @@ -106,7 +106,7 @@ class GPURef 'compute_capability' => '3.5', 'short_name' => 'Tesla K40M', 'alias' => 'k40m', - 'microarchitecture' => 'Kepler', + 'microarchitecture' => 'Kepler', 'performance' => { 'fp-16' => 0, 'fp-32' => 5046000000000, @@ -118,7 +118,7 @@ class GPURef 'compute_capability' => '7.5', 'short_name' => 'Tesla T4', 'alias' => 't4', - 'microarchitecture' => 'Turing', + 'microarchitecture' => 'Turing', 'performance' => { 'fp-16' => 65130000000000, 'fp-32' => 8141000000000, @@ -130,7 +130,7 @@ class GPURef 'compute_capability' => '8.0', 'short_name' => 'A100', 'alias' => 'a100-pcie-40', - 'microarchitecture' => 'Ampere', + 'microarchitecture' => 'Ampere', 'performance' => { 'fp-16' => 77970000000000, 'fp-32' => 19490000000000, @@ -142,7 +142,7 @@ class GPURef 'compute_capability' => '8.0', 'short_name' => 'A100', 'alias' => 'a100-sxm4-40', - 'microarchitecture' => 'Ampere', + 'microarchitecture' => 'Ampere', 'performance' => { 'fp-16' => 77970000000000, 'fp-32' => 19490000000000, @@ -154,7 +154,7 @@ class GPURef 'compute_capability' => '8.6', 'short_name' => 'A40', 'alias' => 'a40', - 'microarchitecture' => 'Ampere', + 'microarchitecture' => 'Ampere', 'performance' => { 'fp-16' => 37420000000000, 'fp-32' => 37420000000000, @@ -166,7 +166,7 @@ class GPURef 'compute_capability' => '7.5', 'short_name' => 'Quadro RTX 6000', 'alias' => 'rtx6000', - 'microarchitecture' => 'Turing', + 'microarchitecture' => 'Turing', 'performance' => { 'fp-16' => 32620000000000, 'fp-32' => 16310000000000, @@ -177,7 +177,7 @@ class GPURef 'cores' => 5120, 'short_name' => 'MI50', 'alias' => 'mi50-32', - 'microarchitecture' => 'Vega20', + 'microarchitecture' => 'Vega20', 'performance' => { 'fp-16' => 26820000000000, 'fp-32' => 13410000000000, @@ -189,7 +189,7 @@ class GPURef 'compute_capability' => '7.2', 'short_name' => 'AGX Xavier', 'alias' => 'agx-xavier', - 'microarchitecture' => 'Tegra', + 'microarchitecture' => 'Volta', 'performance' => { 'fp-16' => 2820000000000, 'fp-32' => 1410000000000,