Почему macOS Mojave требует Metal и не поддерживает OpenGL

Чтобы запустить новый macOS Mojave, компьютеры Mac должны иметь графическое оборудование, способное поддерживать Metal, современное низкоуровневое программное обеспечение Apple с низкими накладными расходами, которое обеспечивает доступ к обработке графики.

Примечание редактора: фурор по поводу того, почему Apple отказывается от OpenGL, снова вспыхнул с выпуском Mojave. Изначально эта часть была запущена в июне, но остается точной и актуальной сегодня

Список оборудования Apple Mac, поддерживающего новую macOS Mojave, идентичен его списку. компьютеров Mac, поддерживающих Metal. В частности, Metal — это аппаратно-ускоренная трехмерная графика и вычислительная среда Apple, стандартная библиотека и язык затенения графического процессора.

Для Mojave потребуется как минимум iMac конца 2012 года или Mac mini, MacBook Air или MacBook Pro середины 2012 года. Он также, конечно, работает на любом новом iMac Pro 2017 года или новых MacBook с Retina (выпущенных в 2015 году) и поддерживает все Mac Pro с черным цилиндром (выпущенные с 2013 года). Он также поддерживает более ранние модели Mac Pro с «теркой для сыра» до середины 2010 года, если они оснащены видеокартой с поддержкой Metal.

Отсутствие поддержки графики Metal является причиной того, что некоторые компьютеры Mac, поддерживаемые в сегодняшней macOS High Sierra, не могут быть обновлены для работы с Mojave. Сюда входят iMac 2009-2011 («не тонкие»); 2010-2011 Mac mini; Пластиковые MacBook без Retina 2009-2010 годов; и модели MacBook Pro и MacBook Air 2011 года или более ранние без Retina.

В новом Mojave в течение нескольких лет прекращается поддержка моделей без Retina, но по-прежнему поддерживается некоторые Mac без Retina, поскольку проблема не в разрешении экрана, а в возможностях графического процессора. Старые модели Mac Pro, выпущенные в 2010 году, могут быть оснащены новыми графическими процессорами с поддержкой Metal для запуска новой версии, что дает понять, что Apple не просто отказывается от устаревших компьютеров, чтобы заставить их делать новые покупки.

Рисование черты на графических процессорах с поддержкой Metal позволяет Apple оптимизировать графическую производительность — особенно для совершенно новых программных функций, включая многопользовательский FaceTime и другие новые функции пользовательского интерфейса, знакомые iOS. Если у вас есть Mac в течение 8-9 лет, Mojave предлагает хороший повод обновить ваше оборудование и присоединиться к современной компании Metal.

Новый Mojave Выпуск будет официально выпущен этой осенью вместе с новой iOS 12, watchOS 5 и новой tvOS, следуя тому, что было регулярным графиком Apple для обновлений ОС в течение нескольких лет. В преддверии этого Apple предлагает программу общедоступной бета-версии Mojave, в которой пользователи могут выбрать загрузку предварительного выпуска программного обеспечения, заранее протестировать его новые функции и сообщить Apple обо всех обнаруженных ошибках..

Металл заменяет OpenGL

Металл впервые был поставлен в 2014 году для iPhone предыдущего года. 5s, чтобы в полной мере использовать графические возможности своей пользовательской системы A7 «Система на кристалле», которая включает в себя 64-разрядный ЦП и независимый графический процессор.

Повышение производительности Metal во многом связано с его оптимизацией, направленной на сокращение Загрузка процессора, позволяющая программному обеспечению более эффективно использовать мощность графического процессора. Metal достигает этого с помощью явной синхронизации и совместного использования пространства памяти между GPU и CPU; меньшая нагрузка на драйверы, предварительно вычисленные шейдеры и предварительная проверка состояния; и эффективная многопоточность, когда каждый поток ЦП может отправлять команды ГП.

Metal получил свое название из-за низкого уровня оптимизации оборудования, поскольку он работает на » голый металл », а не нависать над большим уровнем аппаратной абстракции в модели кроссплатформенных графических фреймворков, таких как OpenGL, которые были разработаны для поддержки широкого спектра процессоров.

Apple изначально перешла на OpenGL в конце 90-х, после того, как Стив Джобс объявил о планах отказаться от собственного QuickDraw 3D компании, раннего проекта по созданию поддержки для программного рендеринга графики. в Mac. В то время переход на OpenGL позволил Apple воспользоваться преимуществами уже проделанной работы для создания программного обеспечения, обеспечивающего аппаратное ускорение на различных графических процессорах.

Однако пятнадцать лет спустя iOS от Apple стала крупнейшей платформой унифицированного мобильного оборудования. Параллельно с Metal, Apple выпустила первый 64-битный пользовательский процессор ARM, а также оптимизировала общий дизайн графического процессора, созданный Imagination Technologies. Забегая вперед, Apple знала, что все ее устройства iOS получат 64-битный процессор и усовершенствованный графический процессор.

За пределами iOS, лицензиаты Android и Windows Mobile использовали самые разные процессоры и графическое оборудование. Им суждено было отставать на годы в области производства 64-битных процессоров, и им приходилось сталкиваться с экономически эффективной «экономичной инженерией», которая требовала поставки устройств с неэффективной графикой.

Разработка современных мобильных графических процессоров была дорогой и рискованной предложение, которое полностью вытеснило гигантов мобильных графических процессоров AMD, Texas Instruments и Nvidia из бизнеса смартфонов.

Целью Apple для iOS было создание чрезвычайно высокопроизводительной графики, способной быстро повысить производительность, а затем так же быстро уменьшить ее, чтобы продлить срок службы батареи. Требовалась возможность оптимизировать поддержку будущих продуктов, особенно iPhone 6 и 6 Plus с более высоким разрешением, а также будущих моделей iPad, которые потребовали бы большей графической мощности, чем было у большинства ноутбуков ПК.

У лицензиатов Android и Windows были гораздо менее амбициозные планы. Samsung представила новые панели с высоким разрешением, но поставляла их с базовыми графическими процессорами под управлением стандартного программного обеспечения Android. Основное внимание уделялось характеристикам хвастовства, а не фактическому удобству использования или производительности в играх, творческих или ресурсоемких программах.

В 2015 году Apple предоставила поддержку Metal для последних моделей Mac ( с графическими процессорами 2012 года выпуска, включая Intel HD 4000 и Iris Graphics; графические процессоры AMD Graphics Core Next; и графические процессоры на базе Kepler от Nvidia) в macOS El Capitan.

Metal 2 фокусируется на будущем ML, AR, VR

В прошлом году Apple анонсировала Metal 2 для macOS High Sierra с улучшениями, включая новый отладчик шейдеров и средство просмотра зависимостей графического процессора для более эффективного профилирования и отладки в Xcode; поддержка ускорения вычислительно-ресурсоемкой задачи обучения нейронных сетей, включая машинное обучение; снизить нагрузку на ЦП с помощью конвейеров, управляемых графическим процессором, где графический процессор может создавать свои собственные команды рендеринга и планировать их практически без взаимодействия с ЦП; и поддержка виртуальной реальности.

Metal 2 также поддерживается в iOS на устройствах, использующих новые модели A11 Bionic: iPhone 8, 8 Plus и X. Этот чип также запустил первый независимый графический процессор Apple собственной разработки, еще более сильно оптимизированный не только для ускорения графики, но и для ускорения машинного обучения и дополненной реальности (включая такие приложения, как VR и отслеживание лиц).

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

Сегодня , Apple создает собственные микросхемы с высокой степенью адаптации, включая собственные ЦП, ГП и Neural Engine, и ей необходимо разработать программное обеспечение на «голом железе», чтобы они работали эффективно и с максимальной производительностью.

Android и другие платформы начали поддерживать разработанный сообществом фреймворк Vulkan для графики, который вносит улучшения по сравнению с OpenGL эпохи 1990-х годов, но они не разделяют то же самое достижимые цели как Apple. Большинство производителей Android ориентированы на крупные продажи базовых телефонных устройств, которые в среднем продаются по цене около 200 долларов.

Прекращение поддержки OpenGL

Ранее в этом месяце в документации для разработчиков Apple сообщалось, что активная разработка OpenGL и OpenCL на Mac прекращена, и что в дальнейшем в API будут внесены только «незначительные изменения».

«Приложения, созданные с использованием OpenGL и OpenCL, будут продолжать работать в macOS 10.14, но эти устаревшие технологии устарели в macOS 10.14. Игры и приложения с интенсивной графикой, которые use OpenGL теперь должен принять Metal. Аналогичным образом, приложения, использующие OpenCL для вычислительных задач, теперь должны использовать шейдеры Metal и Metal Performance Shaders », — отметили в компании.

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

Это вызвало резкую реакцию кликбейта, предупреждающего о том, что «разработчики» возмущаются и размахивают вилами по поводу объявления. Однако основные применения OpenGL и OpenCL (инфраструктура вычислений на GPU, которую Apple первоначально разработала и распространила с сообществом OpenGL) портируют низкоуровневый код между Linux, Windows и Mac.

Большинство современных игр с 3D-графикой жестко не запрограммированы с использованием низкоуровневого кода. OpenGL. Вместо этого разработчики используют фреймворки графического «движка» более высокого уровня, такие как Unreal Engine 4 от Epic Games, WoW и SC2 Engine от Blizzard; или Unity Engine. Подобно собственным графическим фреймворкам Apple более высокого уровня, таким как SceneKit, SpriteKit и ARKit, они уже используют Metal в своей основе.

Это означает, что устаревание OpenGL не повлияет на игры, в которые вы играете сегодня, и на новые игры, которые вы будете искать в будущем. . Однако они будут значительно ускорены последними достижениями Apple в области кремния низкого уровня и почти такого же низкого уровня металлического покрытия сверху. Кроме того, Metal также поддерживает развертывание новых передовых приложений, включая многопользовательский FaceTime, в публичной бета-версии macOS Mojave.

Оцените статью
futurei.ru
Добавить комментарий