Announcement

Collapse
No announcement yet.

Some AMD CPUs To Benefit From New Micro-Optimization In Linux 6.6

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

  • Some AMD CPUs To Benefit From New Micro-Optimization In Linux 6.6

    Phoronix: Some AMD CPUs To Benefit From New Micro-Optimization In Linux 6.6

    One of the patches to be picked up by the Linux 6.6 kernel this week brings back REP MOSQ for user-access on CPUs without Enhanced REP MOVSB (ERMS) support. In turn this can equate to some performance benefits on AMD CPUs lacking ERMS...

    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

  • #2
    Do I have to enable something to benefit from this on my 5950X?

    Comment


    • #3
      Originally posted by Kjell View Post
      Do I have to enable something to benefit from this on my 5950X?
      5950X still doesn't have that "ERMS" CPU feature?

      Comment


      • #4
        3700X doesn't show it in /proc/cpuinfo FWIW.

        Comment


        • #5
          I have Ryzen 7 1700 and did "cat /proc/cpuinfo | grep erms" and there was no output

          When I do "perf top", and hide all non-kernel functions, I could see the "rep_movs_alternative" kernel function being used when playing audio

          I guess this patch will give me a performance benefit on a Ryzen 7 1700!!!

          I think this patch will not benefit Ryzen 5XXX and newer because they already have ERMS and FSRM
          Last edited by CHECK_12345; 05 September 2023, 07:11 PM.

          Comment


          • #6
            5800x ...

            $ cat /proc/cpuinfo | grep erms
            flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm​

            Comment


            • #7
              Slightly hurting performance on some higher end hardware in order to increase performance on some lower end hardware? That’s going to ruffle some feathers. I expect at least 2 protest forks. Maybe “Debtwo” with x86_64_v4.

              Comment

              Working...
              X