this post was submitted on 22 Dec 2024
99 points (98.1% liked)

Linux

5498 readers
377 users here now

A community for everything relating to the linux operating system

Also check out [email protected]

Original icon base courtesy of [email protected] and The GIMP

founded 2 years ago
MODERATORS
top 11 comments
sorted by: hot top controversial new old
[–] SteveTech 6 points 17 hours 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;
}

[–] onlinepersona 20 points 1 day ago* (last edited 17 hours ago) (2 children)

More surprising is that it's taken ~4 years for these Linux kernel patches to materialize with Zen 3 having first debuted in late 2020.

Reminder: Linux kernel funding is 2% of the Linux foundation's 200M$/year budget.

Anti Commercial-AI license

[–] [email protected] 22 points 23 hours 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.

[–] [email protected] 9 points 1 day ago (3 children)
[–] onlinepersona 2 points 13 hours ago

https://news.ycombinator.com/item?id=38797213

https://www.linuxfoundation.org/hubfs/Reports/2023_lf_annual_report_122123a.pdf?hsLang=en

- Cloud, Containers, & Virtualization 25%

- Networking & Edge 13%

- AI, ML, Data & Analytics 12%

- Web & Application Development 11%

- Cross-Technology 8%

- Privacy & Security 4%

- IoT & Embedded 4%

- Blockchain 4%

- DevOps, CI/CD, & Site Reliability 3%

- Open Source & Compliance Best Practices 3%

- System Administration 2%

- Linux Kernel 2%

- System Engineering 2%

- Storage 2%

- Open Hardware 1%

- Safety-Critical Systems 1%

- Visual Effects 1%

[–] [email protected] 4 points 17 hours ago

Without doing research, but the Linux Foundation is also the parent of the CNCF, the foundation that funds Kubernetes and many adjacent projects. I can imagine that they get a lot more money as there are probably more developers handling CNCF projects than the Linux Kernel.

[–] [email protected] 28 points 1 day ago

$196,000,000

[–] [email protected] 12 points 1 day ago (1 children)

I can't keep up with the architecture family lines; is the Ryzen 7 5800 series on the Zen 3 line?

[–] [email protected] 9 points 1 day ago

Assuming you're talking about the 5800x, yes.

[–] [email protected] 10 points 1 day ago (1 children)
[–] SteveTech 8 points 1 day ago

That's INVLPG which has been there since the 486. The AMD64 Programmer's Manual has some info on the differences between INVLPG, INVLPGA, and INVLPGB though.