Closed r-barnes closed 3 years ago
Thank you for describing your difficulty with building Arioc from source.
In fact, the target microarchitecture ("compute capability") is not "hard-coded" in the Linux makefile. It is specified in the makefile in a user-configurable variable named CUDA_CC
, as you will see by examining the makefile and by following the example in the Arioc User Guide.
Furthermore, the Linux makefile, which by default specifies a "compute capability" of 3.7, does generate a valid executable that runs on devices with more recent microarchitectures.
Your comment suggests that the User Guide and the makefile are not sufficiently clear about how to compile Arioc to target a specific microarchitecture and how this might contribute to performance optimization. We will revisit that documentation and do our best to ensure that it is adequate.
The Linux makefile currently hardcodes the architecture:
This is problematic for two reasons:
More seriously, this doesn't offer forward compatibility with most GPUs (from the docs):