En Fedora 42 se planea ofrecer versiones optimizadas de los archivos ejecutables.

En la versión de Fedora 42, programada para finales de abril, se propone permitir a los mantenedores incluir en los paquetes variantes adicionales de archivos ejecutables, compilados con optimizaciones para las microarquitecturas x86-64-v2, x86-64-v3 y x86-64-v4. Se señala que Fedora continúa compilando paquetes para la arquitectura x86-64-v1, mientras que CentOS utiliza la arquitectura x86-64-v2 y RHEL 10 la x86-64-v3. En la mayoría de los casos, el aumento del rendimiento al compilar para estas arquitecturas no supera el 10%, pero en situaciones específicas puede resultar en una notable mejora del rendimiento (hasta el 120%). Esta propuesta aún no ha sido aprobada por el comité FESCo (Fedora Engineering Steering Committee), que es responsable de la parte técnica del desarrollo de la distribución Fedora.

En Fedora ya se permite la entrega de bibliotecas adicionales, optimizadas para versiones avanzadas de la arquitectura x86_64, y ahora se planea extender esta posibilidad a los archivos ejecutables. La carga de implementaciones optimizadas de bibliotecas se realiza mediante el enlazador dinámico, que verifica la existencia de variantes adicionales en los subdirectorios glibc-hwcaps, ubicados en áreas del sistema de archivos que se examinan al buscar bibliotecas (por ejemplo, /usr/lib64/glibc-hwcaps/x86-64-v2).

Para los archivos ejecutables, se propone utilizar una capa hwcaps-loader, que seleccionará y ejecutará la variante del archivo ejecutable que se corresponda con las capacidades del sistema actual. Para los paquetes que entregan varias variantes de archivos ejecutables, se sugiere exponer esta capa a través de un enlace simbólico. Los mantenedores decidirán sobre la adición de archivos ejecutables optimizados, dependiendo de los resultados de las pruebas de rendimiento de paquetes específicos.

Las versiones x86-64-v* definen una forma no oficial de identificar las versiones del estado de la microarquitectura, que abarcan conjuntos específicos de extensiones:

  • x86-64-v2 abarca las extensiones SSE3, SSE4_2, SSSE3, POPCNT, LAHF-SAHF y CMPXCHG16B.
  • x86-64-v3 — AVX, AVX2, BMI2, FMA, LZCNT, MOVBE y SXSAVE.
  • x86-64-v4 — AVX512F, AVX512BW, AVX512CD, AVX512DQ y AVX512VL.

También se puede mencionar la propuesta para unificar la actualización de los cargadores grub y shim en las versiones atómicas y normales de Fedora. En lugar de actualizar el contenido de los directorios /boot y /boot/efi a través de un script durante la instalación del paquete rpm, se sugiere utilizar la herramienta bootupd, que ya se aplica en las versiones de Fedora que se actualizan de manera atómica. En los paquetes rpm con los cargadores, se propone instalar el contenido no directamente en los directorios /boot y /boot/efi, sino en un directorio separado dentro de la partición /usr, y luego sincronizar con el contenido de /boot y /boot/efi. Este enfoque permitirá implementar una opción de arranque de respaldo, que se puede utilizar para revertir a una configuración anterior en caso de problemas tras la actualización del cargador.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster