Which OpenACC 'acc_device_t' to use for AMD GPU offloading

Tobias Burnus tobias@codesourcery.com
Tue Dec 3 15:00:00 GMT 2019


Regarding the  acc_device_<name>, I want to observe that there is no 
fundamental reason that one cannot have multiple names which resolve to 
the same constant.

Thus, one could add acc_device_radeon while keeping acc_device_gcn. 
Whether this makes sense or causes even more confusion is another question.

Searching the internet, acc_device_gcn seems to GCC specific while 
acc_device_radeon does pop up, but not that often the documents are from 
2014/2015 – and mentionAMD Radeon 7970, AMD Radeon 7990.

[On one slide of a super-computing center, they listed what PGI back 
then did define. For completeness, that was: acc_device_none = 0, 
acc_device_default = 1, acc_device_host = 2, acc_device_not_host = 3, 
acc_device_nvidia = 4,acc_device_radeon = 5, acc_device_xeonphi = 6, 
acc_device_pgi_opencl = 7, acc_device_nvidia_opencl = 8, 
acc_device_opencl = 9.]

Tobias

On 12/3/19 3:42 PM, Thomas Schwinge wrote:
> And, as I'd mentioned, it's in the OpenACC specification, but it's a
> "recommendation", so if you're not comfortable with 'acc_device_radeon',
> then it's not too late to change the specification.  Think of it from a
> user's perspective, as I'd suggested.
>
> I had a look, and 'acc_device_radeon' (some kind of "brand" name, not
> specific to GPUs even?) has been present in the OpenACC specification for
> so long that from my archives, I can't tell who introduced it, and what
> the rationale was, given that 'acc_device_nvidia' (hardware vendor name)
> probably already did exist.
>
> As one additional data point: there once also existed a
> 'acc_device_xeonphi', which got removed two years ago "since Intel no
> longer produces this product".



More information about the Gcc-patches mailing list