В выпуске Fedora 42, намеченный на конец апреля, предложено разрешить сопровождающим включать в пакеты дополнительные варианты исполняемых файлов, собранные с включением оптимизаций для микроархитектур x86-64-v2, x86-64-v3 и x86-64-v4. Отмечается, что Fedora продолжает собирать пакеты для архитектуры x86-64-v1, в то время как CentOS использует при сборке архитектуру x86-64-v2, а RHEL 10 - x86-64-v3. В большинстве случаев прирост производительности при сборке для подобных архитектур не превышает 10%, но в отдельных ситуациях приводит к заметному повышению производительности (до 120%). Предложение пока не утверждено комитетом FESCo (Fedora Engineering Steering Committee), отвечающим за техническую часть разработки дистрибутива Fedora.

В Fedora уже допускается поставка дополнительных библиотек, оптимизированных для расширенных версий архитектуры x86_64, и подобную возможность теперь планируют распространить на исполняемые файлы. Загрузка оптимизированных реализаций библиотек осуществляется компоновщиком (dynamic linker), который проверяет наличие дополнительных вариантов в подкаталогах glibc-hwcaps, размещаемых в областях ФС, просматриваемых при поиске библиотек (например, /usr/lib64/glibc-hwcaps/x86-64-v2).

В случае исполняемых файлов предлагается использовать прослойку hwcaps-loader, которая будет выбирать и запускать вариант исполняемого файла, соответствующий возможностям текущей системы. Для пакетов, поставляющих несколько вариантов исполняемых файлов данную прослойку предлагается выставлять через символическую ссылку. Решение о добавлении дополнительно оптимизированных исполняемых файлов будут принимать сопровождающие, в зависимости от результатов тестирования производительности конкретных пакетов.

Версии x86-64-v* определяют неофициальный способ идентификации срезов состояния микроархитектуры, охватывающих определённые наборы расширений:

  • x86-64-v2 охватывает расширения SSE3, SSE4_2, SSSE3, POPCNT, LAHF-SAHF и CMPXCHG16B.
  • x86-64-v3 - AVX, AVX2, BMI2, FMA, LZCNT, MOVBE и SXSAVE.
  • x86-64-v4 - AVX512F, AVX512BW, AVX512CD, AVX512DQ и AVX512VL.

Дополнительно можно отметить предложение по унификации обновления загрузчиков grub и shim в атомарных и обычных вариантах Fedora. Вместо обновления содержимого каталогов /boot и /boot/efi через вызов скрипта во время установки rpm-пакета, для обновления загрузчика предлагается использовать инструментарий bootupd, который уже применяется в атомарно обновляемых вариантах Fedora. В rpm-пакетах с загрузчиками содержимое предлагается устанавливать не напрямую в каталоги /boot и /boot/efi, а в отдельный каталог внутри раздела /usr, после чего синхронизировать с ним содержимое /boot и /boot/efi. Подобный подход даст возможность реализовать запасной вариант загрузки, который можно использовать для отката к старой конфигурации в случае проблем после обновления загрузчика.

  • MrSugomaOP
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    У меня не поставилось.

    Значит, у тебя руки не из того места растут. Впрочем, если ты ставил Федору не на виртуалку, чтобы потом ее сразу же уничтожить, то я только рад, что ты ее не поставил.

    • odalist
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      1 year ago

      чтобы потом ее сразу же уничтожить

      Ты думаешь,мне нужно было оставить эту федору, если установщик пишет “unsupported hardware detected”?

      чтобы потом ее сразу же уничтожить

      В qemu все работает нормально.

      • MrSugomaOP
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Ты думаешь,мне нужно было оставить эту федору, если установщик пишет «unsupported hardware detected»?

        Нет, Fedora не нужна.

        В qemu все работает нормально.

        Поставь какой-нибудь Devuan, там поставь QEMU, в QEMU поставь Федору, автостартуй QEMU после старта Иксов.

        • odalist
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          Нет, Fedora не нужна.

          Именно так. Я вот нарыл интересную инфу.

          Red Hat девятая ветка это последняя ветка, которая поддерживает архитектуру x86-64-v2 (я думаю, что в этом кроется причина того, что я не смог установить федору). А вот Alma linux x86-64-v2 данную архитектуру в десятой ветке поддерживать будет (отдельным iso).

          Within the x86-64 architecture, there are specific versions that represent specific CPU feature sets. RHEL was increasing the architecture version baseline to v3, which results in the loss of support for numerous older CPUs(and some newer ones). Both in AlmaLinux OS Kitten 10 e AlmaLinux OS 10, we will follow Red Hat’s decision to ship x86-64-v3 optimized binaries by default, but we will also provide additional x86-64-v2 architecture ONLY for older hardware that doesn’t support modern CPU feature sets.