I Fedora 42 planlægger man at levere optimerede versioner af eksekverbare filer

I udgaven af Fedora 42, planlagt til slutningen af april, er det foreslået at tillade vedligeholderne at inkludere yderligere varianter af eksekverbare filer i pakkerne, bygget med optimeringer til mikroarkitekturerne x86-64-v2, x86-64-v3 og x86-64-v4. Det bemærkes, at Fedora fortsat samler pakker til arkitekturen x86-64-v1, mens CentOS bruger arkitekturen x86-64-v2 under samlingen, og RHEL 10 bruger x86-64-v3. I de fleste tilfælde overstiger præstationsforøgelsen ved samling for sådanne arkitekturer ikke 10%, men i enkelte situationer fører det til en markant præstationsforbedring (op til 120%). Tilbuddet er endnu ikke godkendt af FESCo (Fedora Engineering Steering Committee), som har ansvaret for den tekniske del af udviklingen af Fedora-distributionen.

I Fedora er det allerede tilladt at levere yderligere biblioteker, der er optimeret til de udvidede versioner af arkitekturen x86_64, og denne mulighed planlægges nu at blive udvidet til eksekverbare filer. Indlæsning af optimerede implementeringer af biblioteker håndteres af linkeren (dynamic linker), der tjekker for tilgængeligheden af yderligere varianter i underskatalogerne glibc-hwcaps, som findes i filsystemområder, der gennemsøges ved bibliotekssøgning (f.eks. /usr/lib64/glibc-hwcaps/x86-64-v2).

For de eksekverbare filer foreslås det at bruge et lag kaldet hwcaps-loader, der vil vælge og udføre den variant af den eksekverbare fil, der svarer til mulighederne i det aktuelle system. For pakker, der leverer flere varianter af eksekverbare filer, foreslås det at levere dette lag gennem et symbolsk link. Beslutningen om at tilføje yderligere optimerede eksekverbare filer vil blive truffet af vedligeholderne, afhængig af resultaterne af præstationstests for specifikke pakker.

Versionerne x86-64-v* definerer en uofficiel metode til identifikation af mikroarkitekturens tilstand, der dækker bestemte sæt af udvidelser:

  • x86-64-v2 dækker udvidelserne SSE3, SSE4_2, SSSE3, POPCNT, LAHF-SAHF og CMPXCHG16B.
  • x86-64-v3 – AVX, AVX2, BMI2, FMA, LZCNT, MOVBE og SXSAVE.
  • x86-64-v4 – AVX512F, AVX512BW, AVX512CD, AVX512DQ og AVX512VL.

Derudover kan man nævne forslaget om at uniformere opdateringen af grub- og shim-bootloadere i atomisk og almindelig version af Fedora. I stedet for at opdatere indholdet af mapperne /boot og /boot/efi ved at kalde et script under installationen af rpm-pakken, foreslås det at bruge værktøjet bootupd til opdatering af bootloaderen, som allerede anvendes i atomisk opdaterede versioner af Fedora. I rpm-pakker med bootloadere foreslås det at installere indholdet ikke direkte i mapperne /boot og /boot/efi, men i en separat mappe inden for partitionen /usr, hvorefter indholdet af /boot og /boot/efi synkroniseres med det. En sådan tilgang vil muliggøre en alternativ opstartsmulighed, som kan bruges til at rulle tilbage til en gammel konfiguration i tilfælde af problemer efter opdateringen af bootloaderen.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster