Вы помните тот момент, когда ИТ-сообщество было в состоянии эйфории от перспективы отказа от классической архитектуры x86-64 в пользу AArch64? Презентация процессоров Apple Silicon на архитектуре ARM64 (AArch64) перевернула представление о том, каким должен быть современный персональный компьютер. Тихие, холодные, невероятно производительные MacBook на чипах M1 заставили многих поверить, что дни классической архитектуры x86-64 сочтены.
Причины скептицизма
Однако сегодня, когда первый восторг утих, а на рынке появились зрелые решения вроде Snapdragon X Elite, наступает отрезвление. Эксперимент по массовому внедрению AArch64 на классический десктоп (вне закрытой экосистемы Apple) близок к завершению, и его результаты оказываются далеко не теми, на которые мы рассчитывали.
Великие надежды: как зарождался десктопный AArch64
Чтобы понять глубину нынешнего скептицизма, нужно вспомнить, с чего все начиналось. Архитектура ARM традиционно доминировала в мобильных устройствах благодаря своей энергоэффективности. RISC-архитектура (Reduced Instruction Set Computer) с фиксированной длиной инструкций позволяла создавать более простые и энергоэффективные декодеры по сравнению со сложными CISC-декодерами в x86 (Complex Instruction Set Computer).
Первые попытки создания ARM-десктопов
- Одноплатные компьютеры (SBC): Raspberry Pi 4 и последующие модели доказали, что на ARM можно запустить полноценную графическую оболочку Linux и использовать плату для базовой офисной работы.
- Windows on ARM: Microsoft совместно с Qualcomm выпускала устройства вроде Surface Pro X, пытаясь доказать, что Windows может работать без x86.
- Энтузиастские проекты: Появление материнских плат Mini-ITX с распаянными серверными процессорами Ampere Altra (до 128 ядер AArch64) породило класс «ARM-воркстейшенов» для разработчиков.
Проблемы десктопного AArch64
Несовместимость ПО
Главной проблемой стали трудности с совместимостью программного обеспечения. Многие приложения были написаны для x86-архитектуры и не имели аналогов для AArch64. Это затрудняло переход на новую архитектуру. (Вспомним легендарное "работает на моей машине" - теперь это звучит как насмешка над AArch64.)
Аппаратная фрагментация
Еще одной проблемой стала аппаратная фрагментация. Различные устройства на основе AArch64 имели разные характеристики и не были совместимы между собой. Это напомнило историю с флешками на 3,5" и 5,25" - только теперь с ARM и x86.
Заключение
В итоге, несмотря на первоначальный энтузиазм, десктопный AArch64 не смог конкурировать с x86-64. Причины этого кроются в несовместимости ПО, аппаратной фрагментации и других технологических проблемах.
Сегодня мы можем констатировать: революция AArch64 на десктопе не состоялась. Однако это не означает, что AArch64 не найдет своего применения в других областях. Стоит попробовать использовать его в тех нишах, где его преимущества будут наиболее заметны. (Похоже, AArch64 ждёт судьба Lisp - перспективный, но не для десктопа.)