archspec / archspec-json

Other
20 stars 33 forks source link

Intel oneapi and Nvidia NVHPC compilers #36

Closed glennpj closed 1 year ago

glennpj commented 2 years ago

Are there any plans to add the Intel OneAPI and Nvidia NVHPC compilers to archspec-json? If this is not in the works I can take a stab at it.

tgamblin commented 2 years ago

We'd like to but currently don't have anyone on it. If you want to do it, we'd really appreciate the contribution!

tgamblin commented 2 years ago

One thing we've done for other compilers is implement proxies for x86_64_v2, x86_64_v3, x86_64_v4, etc. for older versions that do not support the names directly. If that's possible with oneapi and nvhpc that would be really helpful as well.

glennpj commented 2 years ago

I expect the oneapi entries to be very similar to the intel entries. Looking at the man page, some of the options for features, such as -mfma, -mbmi, -mavx2, and -mlzcnt can only be turned on via -march=core-avx2. That probably defeats the purpose of the x86_64_v[2-4] profiles, which I guess is why there are no entries for intel for those.

alalazo commented 2 years ago

@samcmill Would you, or anybody at NVIDIA, be interested in tackling this issue (for the nvhpc part, of course :smirk:)?

glennpj commented 2 years ago

I guess I initiated this and then let it fall off of my radar. I will start working on the oneapi compilers.

samcmill commented 2 years ago

@cparrott73 is looking at the nvhpc compilers.

cparrott73 commented 2 years ago

I have changes queued up to support the nvhpc compilers, but I am just waiting for management approval before I can release them. Hopefully very soon.

glennpj commented 2 years ago

I submitted #47 to cover the OneAPI part of this.

cparrott73 commented 2 years ago

I have received management approval to contribute changes to support the nvhpc compilers to this project. What's the best way to contribute this? My changes consist of fairly straightforward modifications to the microarchitectures.json file. I can produce a diff/patch if that would be preferable.

boegel commented 2 years ago

@cparrott73 A pull request to the master branch of this repository is easiest, since then the changes can be discussed in context easily if needed.

cparrott73 commented 2 years ago

@cparrott73 A pull request to the master branch of this repository is easiest, since then the changes can be discussed in context easily if needed.

Okay. This was a bit of a learning curve for me, as I had never done this before. I believe I just successfully sent the pull request with my changes. Please take a look and let me know if you need anything else from me. Thanks!

glennpj commented 1 year ago

This issue can be closed now that #67 is merged.