Announcement

Collapse
No announcement yet.

GCC 13.3 Compiler Released With Tons Of Bug Fixes

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • JakubJelinek
    replied
    Originally posted by kylew77 View Post
    Here is a question I've always wondered but never known the answer to. The article says if you want Zen 5 support you need to upgrade to GCC 14.1, but what would happen if I did mach=native on a Zen 5 system without knowledge of what Zen 5 is like on GCC 13.x? Isn't the individual targets just a collection of options? So couldn't you build a Zen 5 target on an old compiler without the support by piecing together options?
    In the znver5 case, GCC 13 will detect it as znver4 instead.

    Leave a comment:


  • coder
    replied
    Originally posted by kylew77 View Post
    Thanks coder for explaining it to me, appreciate it.
    You're quite welcome, though I think I probably didn't clear up anything other than clue you into the existence of instruction cost tables.

    I'd still love if someone could shed more light on this. If I learn anything more, I'll post what I find. However, I'm not super invested in the matter, because I tend not to be using bleeding edge CPUs and rarely bother compiling -march=native.

    Perhaps it wouldn't be too hard to infer what the compiler is doing via experimentation. You just have to pick up an older build of GCC that doesn't know about your specific CPU model, and then compare -march=native with other -march and -mtune combinations. I wonder if one can simply compare the generated assembly language and keep fiddling until you get the same output.

    Leave a comment:


  • kylew77
    replied
    Originally posted by coder View Post
    Not only. The -mtune option uses cost tables that are customized to specific CPU microarchitectures. No matter which features get enabled, that's something that -march=native will never get right, on a CPU it doesn't know.
    Thanks coder for explaining it to me, appreciate it.

    Leave a comment:


  • coder
    replied
    Originally posted by kylew77 View Post
    The article says if you want Zen 5 support you need to upgrade to GCC 14.1, but what would happen if I did mach=native on a Zen 5 system without knowledge of what Zen 5 is like on GCC 13.x?
    Yeah, good question. If it doesn't know the particular family + model combination of CPUID values, I wonder if it somehow falls back to Zen 4, if it just uses x86-64 generic, or perhaps it picks the highest x86-64 feature level or even enables individual ISA options based on CPUID bits?

    Originally posted by kylew77 View Post
    Isn't the individual targets just a collection of options? So couldn't you build a Zen 5 target on an old compiler without the support by piecing together options?
    Not only. The -mtune option uses cost tables that are customized to specific CPU microarchitectures. No matter which features get enabled, that's something that -march=native will never get right, on a CPU it doesn't know.

    Leave a comment:


  • kylew77
    replied
    Here is a question I've always wondered but never known the answer to. The article says if you want Zen 5 support you need to upgrade to GCC 14.1, but what would happen if I did mach=native on a Zen 5 system without knowledge of what Zen 5 is like on GCC 13.x? Isn't the individual targets just a collection of options? So couldn't you build a Zen 5 target on an old compiler without the support by piecing together options?

    Leave a comment:


  • phoronix
    started a topic GCC 13.3 Compiler Released With Tons Of Bug Fixes

    GCC 13.3 Compiler Released With Tons Of Bug Fixes

    Phoronix: GCC 13.3 Compiler Released With Tons Of Bug Fixes

    While GCC 14 recently debuted as stable in the form of GCC 14.1, for those relying on the GCC 13 compiler that debuted last year there is now a new point release available with many bug fixes...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite
Working...
X