Разработчики ядра Linux обсуждают вопрос удаления субархитектуры x32

12 декабря 2018 года

В списке рассылки ядра Linux обсуждается вопрос удаления кода с реализацией субархитектуры x32 (не путать с x86 IA-32), позволяющей использовать на 64-разрядных системах x86 32-разрядную модель адресации памяти (гибрид x86 и x86_64). По мнению инициатора удаления технология x32 не оправдала себя и не нашла практического применения в современных промышленных дистрибутивах. Кроме того, в коде x32 используется достаточно спорный метод работы с системными вызовами, создающий риск нарушения нормального функционирования после переработки реализаций системных вызовов.

Линус Торвальдс сообщил, что он согласится с удалением x32, если не будут представлены аргументированные возражения или не будут заявлены системы, в которых субархитектура x32 нашла своё применение. Линус также отметил, что, судя по всему, применение x32 ограничилось экстремальными тестами производительности, так как поддержка данной субархитектуры сопряжена с большим усложнением сопровождения дистрибутивов и окружения для разработки.

В своё время при тестировании x32 один из разработчиков Gentoo пришёл к выводу, что выигрыш в производительности при переходе на x32 ABI не столь велик, как показывают синтетические тесты от создателей x32 ABI - заметный прогресс отмечается только при сравнении с устаревшей архитектурой x86, но при сравнении с актуальной архитектурой x86-64 выигрыш несущественный (проводимые создателями x32 SPEC-тесты показывали ускорение до 40% в сравнении с классическим x86_64 ABI, тестирование при прмощи кодека H.264 показало ускорение на 15-20%).

Напомним, что субархитектура x32 представляет собой гибридный x86_64 ABI, позволяющий использовать на 64-разрядных системах 32-разрядную модель адресации памяти (процессор работает в 64-разрядном режиме, но использует 32-разрядные указатели и арифметические операции). ABI X32 позволяет приложениям использовать все преимущества архитектуры x86_64, такие как дополнительные регистры и более быстрые инструкции, PIC ABI. В то же время ABI X32 даёт возможность работать с 32-разрядными указателями памяти, что позволяет экономить память, способствует более эффективному наполнению процессорного кэша и положительно сказывается на общей скорости исполнения кода. Ограничением ABI X32 является невозможность адресации из приложения более 4 Гб памяти. Поддержка X32 входит в состав ядра Linux начиная с выпуска 3.4, сформированного в мае 2012 года.

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Разработчики ядра Linux обсуждают вопрос удаления субархитектуры x32», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.