CUDA: Clamp CUDA_ARCHITECTURES=native to values supported by CUDA Toolkit
The native
value is meant to easily compile for the host's GPUs.
If the GPUs are newer than the CUDA Toolkit version in use, clamp
the architectures to the highest version the CUDA Toolkit supports.
Without this, we may try to compile for architectures not supported by the CUDA Toolkit, which fails. Since !7050 (merged), our CUDA 9.2 CI job fails when it runs on a CI host with a GPU architecture newer than that CUDA 9.2 supports. Clamping the architecture level fixes that.
Issue: #22375 (closed), #23284