apple-rosetta-m1

16 марта 2021


В прошлом году компания Apple начала переход на процессоры собственной разработки, первым из которых стал чип Apple M1.

MacBook Air M1 работает под управлением операционной системы macOS Big Sur.
Для тех программ, которые не используют новую архитектуру, в Apple реализовали эмулятор Rosetta 2.

На момент выхода новой версии Rhino 7 пользователи столкнулись со следующей проблемой:
Rhino 6 и 7 для Mac не поддерживаются на компьютерах Mac Apple Silicon с процессорами M1.

Стало известно, что Rhino 6 не будет поддерживаться Apple Silicon.
Однако ведется разработка Rhino 7 для поддержки Apple Silicon через Apple Rosetta Translation Environment.

Также планируется разработка Rhino 8 с включенной поддержкой новой архитектуры посредством Universal Binary (универсальный двоичный код) как для Intel, так и для Apple Silicon.

Нативные приложения работают более эффективно, чем переведенные, потому что компилятор может оптимизировать ваш код для целевой архитектуры.
Приложение, поддерживающее только архитектуру, должно работать с эмулятором Rosetta на микросхеме Apple.
Универсальный двоичный код изначально работает как на микросхемах Apple, так и на компьютерах Mac на базе Intel, поскольку он содержит исполняемый код для обеих архитектур x86_64.

Эмулятор Rosetta

Эмулятор Rosetta пытается автоматически переводить приложения Intel для работы на Apple Silicon. Пока это единственный путь к поддержке Apple Silicon для Rhino. Это служит временным решением, конечной целью является переход на универсальный двоичный код.
Большинство проблем связаны с ограниченной поддержкой OpenGL драйверами. Компания Apple активно работает в этом направлении.

Универсальный двоичный код

Компания Apple отправила прототип оборудования Apple Silicon разработчикам Rhino. Проведена оценка объема работ. Rhino имеет множество сторонних зависимостей, таких как библиотеки для импорта и экспорта файлов. Для полной поддержки всех функций программы необходима совместимость всех партнерских решений с Apple Silicon.
Вся работа, связанная с универсальным двоичным кодом, выполняется в рамках разработки Rhino 8.

Как ускорить процесс адаптации?

Если Вы являетесь владельцем Mac Apple Silicon M1, то данные рекомендации могут помочь: