archspec / archspec-json

Other
20 stars 32 forks source link

eliminate redundant -mtune, when it is implied by -march #100

Open jeffhammond opened 4 months ago

jeffhammond commented 4 months ago

This is motivated by https://github.com/spack/spack/issues/43808.

I am not super optimistic that this will be accepted, but I figure it's worth a try.

haampie commented 4 months ago

Makes sense, @alalazo can maybe comment why both flags are set.

We just set them as defaults cc -march=... -mtune=... <other args...>, meaning that our -mtune is not there to override anything from the build system.

alalazo commented 4 months ago

Given the way it is currently used in Spack it wouldn't make a difference.

I'm wondering if we use it the right way though. On the one hand we want to allow libraries etc. to dispatch at runtime if they want to (and not be forced to a single target), but on the other hand I think we'd also like that generic targets on a spec keep their promise :thinking:

Also, in terms of a generic library (archspec), the current flags, if appended, would ensure a complete override with uarch specific settings. If we delete mtune we leave tuning to whatever previous option was possibly set.

Not sure what would be best. @tgamblin Any thought on this?