Skip to content

Commit

Permalink
Clarify SMs/CUs/EUs belonging to nVidia/AMD/Intel. (#374)
Browse files Browse the repository at this point in the history
* Clarify SMs/CUs/EUs belonging to nVidia/AMD/Intel.
  Also add a line clarifying the order of extensions being fixed.
* Explain CUs, EUs, SMs.
  This addresses #375.
* Add GPU example as desired by #366.
* Correct example.
* Escape all underscores in examples.
  They get interpreted otherwise by markdown.
* Use vendor-neutral terminology for GPU processing units
* Typo and minor wording

Signed-off-by: Kurt Garloff <[email protected]>
Signed-off-by: Matthias Büchse <[email protected]>
Co-authored-by: Matthias Büchse <[email protected]>
  • Loading branch information
garloff and mbuechse authored Nov 10, 2023
1 parent e0b26d9 commit 19f3d6a
Showing 1 changed file with 28 additions and 21 deletions.
49 changes: 28 additions & 21 deletions Standards/scs-0100-v3-flavor-naming.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,19 +207,19 @@ so users can expect some level of parallelism and independence.

- SCS-2C-4-**10n**
- SCS-2C-4-**10s**
- SCS-2C-4-**10s**\_bms_z3
- SCS-2C-4-**10s**\_bms\_z3
- SCS-2C-4-**3x10s** <- Cloud creates three 10GB SSDs
- SCS-2C-4-**3x10s**\_bms_z3
- SCS-2C-4-**3x10s**\_bms\_z3
- SCS-2C-4-**10** <- Cloud decides disk type
- SCS-2C-4-**10**\_bms_z3
- SCS-2C-4-**n** <- Cloud decides disk size (min_disk from image or larger)
- SCS-2C-4-**n**\_bms_3
- SCS-2C-4-**10**\_bms\_z3
- SCS-2C-4-**n** <- Cloud decides disk size (min\_disk from image or larger)
- SCS-2C-4-**n**\_bms\_3
- SCS-2C-4- <- Cloud decides disk type and size
- SCS-2C-4-\_bms_z3
- SCS-2C-4-\_bms_z3h_GNa-64_ib
- SCS-2C-4-\_bms\_z3
- SCS-2C-4-\_bms\_z3h\_GNa-64\_ib
- SCS-2C-4-\_ib
- SCS-2C-4 <- You need to specify a boot volume yourself (boot from volume, or use `block_device_mapping_v2`)
- SCS-2C-4_bms_z3
- SCS-2C-4\_bms\_z3
- SCS-2C-4-3x10 <- Cloud decides type and creates three 10GB volumes
- ~~SCS-2C-4-**1.5n**~~ <- You must not specify disk sizes which are not in full GiBs

Expand Down Expand Up @@ -303,6 +303,9 @@ The extensions have the format:

\[`_`hyp\]\[`_hwv`\]\[`_`arch\[N\]\[`h`\]\]\[`_`\[`G/g`\]X\[N\]\[`-`M\]\[`h`\]\]\[`_ib`\]

Extensions are individually optional, but the ones that are used must appear in the order
given in the above line.

Remember that letters are case-sensitive.
In case you wonder: Feature indicators are capitalized, modifiers are lower case.
(An exception is the uppercase `_G` for a pass-through GPU vs. lowercase `_g` for vGPU.)
Expand Down Expand Up @@ -368,7 +371,7 @@ The options for arch are as follows:
| ------- | -------------------- | --------------------------------- |
| (none) | Generic x86-64 | `x86_64` |
| `i` | Intel x86-64 | `x86_64` |
| `z` | AMD/Zen x86-64 | `x86_64` |
| `z` | AMD (Zen) x86-64 | `x86_64` |
| `a` | ARM v8+ | `aarch64` |
| `r` | RISC-V | (not yet listed in Glance) |

Expand Down Expand Up @@ -413,11 +416,11 @@ capabilities.
- SCS-2C-4-10n\_**z3**
- SCS-2C-4-10n\_**z3h**
- SCS-2C-4-10n\_**z3hh**
- SCS-2C-4-10n_bms_**z**
- SCS-2C-4-10n_bms_**z3**
- SCS-2C-4-10n_bms_**z3**
- SCS-2C-4-10n_bms_**z3h**
- SCS-2C-4-10n_bms_**z3hh** <- Bare Metal, AMD Milan with > 3.25GHz all core freq
- SCS-2C-4-10n\_bms\_**z**
- SCS-2C-4-10n\_bms\_**z3**
- SCS-2C-4-10n\_bms\_**z3**
- SCS-2C-4-10n\_bms\_**z3h**
- SCS-2C-4-10n\_bms\_**z3hh** <- Bare Metal, AMD Milan with > 3.25GHz all core freq

### [OPTIONAL] GPU support

Expand All @@ -428,16 +431,16 @@ This extension provides more details on the specific GPU:
- pass-through (`G`) vs. virtual GPU (`g`)
- vendor (X)
- generation (N)
- no. of compute units / SMs / EUs (M) that are exposed (for pass-through) or assigned
- number (M) of processing units that are exposed (for pass-through) or assigned; see table below for vendor-specific terminology
- high-performance indicator (`h`)

Note that the vendor letter X is mandatory, generation and compute units are optional.
Note that the vendor letter X is mandatory, generation and processing units are optional.

| GPU | Vendor |
| --- | ------ |
| N | nVidia |
| A | AMD |
| I | Intel |
| letter X | vendor | processing units |
| -------- | ------ | ------------------------------- |
| `N` | nVidia | streaming multiprocessors (SMs) |
| `A` | AMD | compute units (CUs) |
| `I` | Intel | execution units (EUs) |

For nVidia, the generation N can be f=Fermi, k=Kepler, m=Maxwell, p=Pascal, v=Volta, t=turing, a=Ampere, l=Ada Lovelace, ...,
for AMD GCN-x=0.x, RDNA1=1, RDNA2=2, RDNA3=3,
Expand All @@ -448,6 +451,10 @@ The optional `h` suffix to the compute unit count indicates high-performance (e.
high bandwidth gfx memory such as HBM);
`h` can be duplicated for even higher performance.

Example: `SCS-16V-64-500s_GNa-14h`
This flavor has a pass-through GPU nVidia Ampere with 14 SMs and either high-bandwidth memory or specially high frequencies.
Looking through GPU specs you could guess it's 1/4 of an A30.

### [OPTIONAL] Infiniband

Format: `_ib`
Expand Down

0 comments on commit 19f3d6a

Please sign in to comment.