• grue@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      18 days ago

      the Linux kernel hasn’t widely made use of INVLPGB… In part because Intel engineers typically carry out much of the new x86 instruction optimizations within the Linux kernel and Intel processors do not currently support INVLPGB.

      Sounds like AMD needs to fund more kernel development.

      • Swedneck@discuss.tchncs.de
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        12 days ago

        especially considering how they went into the server market again; like what, are they expecting people to shove a 256 thread processor into a windows server?

  • FizzyOrange@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    17 days ago

    Huge speed-ups for the will-it-scale tlb_flush2_threads test - presumably not very representative!

    I wonder how much effect it has on real world workloads.

  • SteveTech@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    18 days ago

    I couldn’t find a hard answer to whether this supports EPYC only, or Ryzen too; so I put together this script to read the CPUID to detect for INVLPGB support according to the AMD64 Programmer’s Manual, and my 7800X3D does not support INVLPGB.

    (Let me know if I’ve made an error though!)

    Code
    #include <stdio.h>
    #include <stdint.h>
    
    int main() {
        uint32_t eax, ebx, ecx, edx;
    
        eax = 0x80000008;
    
        __asm__ __volatile__ (
            "cpuid"
            : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
            : "a" (eax)
        );
    
        printf("EBX: 0x%x\n", ebx);
    
        if (ebx & (1 << 3)) {
            printf("CPU supports INVLPGB\n");
        } else {
            printf("CPU does not support INVLPGB\n");
        }
    
        return 0;
    }
    
      • Sweet. They’re laptop CPUs, right? Last year, after more than a decade of owning only laptops, I bought two of those micro-PC boxes - mine were Trigkey, but I saw nearly identical ones under other brand names. 16 cores, expandable RAM and NVME… utterly blew my latest 2y/o laptop out of the water, especially after I put 64GB of RAM in one in an orgy of entering a new market of cheap components.

        And now this. I’m loving it.