diff --git a/docs/spack_instructions.md b/docs/spack_instructions.md index 9bd6d7f..1424a25 100644 --- a/docs/spack_instructions.md +++ b/docs/spack_instructions.md @@ -181,3 +181,19 @@ # Example 1: OneAPI-DPCPP implementation $ spack install babelstream +sycl2020 implementation=ONEAPI-DPCPP ``` +## ACC +* Target device selection process is automatic with 2 options: + * **gpu** : Globally set the target device to an NVIDIA GPU automatically if `cuda_arch` is specified + * **multicore** : Globally set the target device to the host CPU automatically if `cpu_arch` is specified + +| Flag | Definition | +|-----------| ----------------------------------| +| cuda_arch |- List of supported compute capabilities are provided [here](https://github.com/spack/spack/blob/0f271883831bec6da3fc64c92eb1805c39a9f09a/lib/spack/spack/build_systems/cuda.py#LL19C1-L47C6)
- Useful [link](https://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/) for matching CUDA gencodes with NVIDIA architectures| +| CPU_ARCH | This sets the `-tp` (target processor) flag, possible values are:
`px` - Generic x86 Processor
`bulldozer` - AMD Bulldozer processor
`piledriver` - AMD Piledriver processor
`zen` - AMD Zen architecture (Epyc, Ryzen)
`zen2` - AMD Zen 2 architecture (Ryzen 2)
`sandybridge` - Intel SandyBridge processor
`haswell` - Intel Haswell processor
`knl` - Intel Knights Landing processor
`skylake` - Intel Skylake Xeon processor
`host` - Link native version of HPC SDK cpu math library
`native` - Alias for -tp host | `cpu_arch=skylake` | +```shell +# Example 1: For GPU Run + $ spack install babelstream +acc cuda_arch=<70> + +# Example 2: For Multicore CPU Run + $ spack install babelstream +acc cpu_arch= +``` \ No newline at end of file