Русский
Русский
English
Статистика
Реклама

Rosetta

Apple M1. Если Intel ничего не предпримет, то мы можем увидеть его закат

18.11.2020 12:16:11 | Автор: admin


То что сейчас происходит это выбивание стула из под Intel, никак иначе. Еще и AMD может зацепить, хотя они показывают хороший прогресс. Если Intel продолжит свою текущую политику, продолжит считать себя монополией и диктовать цены на свои процессоры, то ее, веряотно, ждет закат. Почему? Я проанализировал первые тесты Apple M1 и они сделали первый серьезный удар.

Сразу скажу Я не фанат Apple, хоть и пользуюсь Apple MacBook Pro 13 еще 2015 года, а недавно выбирал супруге ноутбук и остановился на Apple MaCbook Pro 16, хотя и перебрал множество других недешевых ноутбуков. Я не в восторге от политики компании, от многочисленных багов в MacOS и если бы для меня существовала альтернатива, то я бы с радостью сьехал на Xubuntu. Потому я не являюсь ярым фанатом, потому не пытайтесь меня уличить в предвзятости =)

Сегодня появились в продаже новые MacBook Air, MacBook Pro 13 и Mac mini. Есть первые тесты производительности.

По тесту Geekbench 5 в тесте на 1 ядре Apple M1 3.2 GHz уделывает MacBook Pro 16 на топовом Intel Core i9-9880H 2.6 Ghz и даже iMac 2020 года на топовом Intel Core i9-10910 3.6 GHz. Результаты синтетических тестов 1689 vs 1251 vs 1095.



В multi-core тесте результаты 7288 vs 9021 vs 6869. При этом, у iMac 10 ядер, а у остальных по 8 ядер.



Но! Эти тесты без эмуляции x86, а у M1 архитектура ARM, потому тот же Premier Pro для x86 систем будет медленнее работать. Ранее на Geekbench были замеры в режиме эмуляции и там результаты single core/multi-core были куда скромнее: 1313 и 5888. Но потом с Geekbench данные этих тестов удалили и оставили нативные тесты. Но интернеты помнят все. Даже с эмуляцией это быстрее чем Core i7 и Core i9. А что будет когда Premier Pro и прочие сделают поддержку нативную ARM?



Эти тесты это синтетика, стоит помнить. У MacBook Air нет вентилятора, а у MacBook Pro есть, потому я предполагал возможность перегрева при длительной нагрузке и будет происходить снижение производительности. Но я уже видел экспорт H264 4K@60fps видео длиной в 20 минут, которые не привели к снижению производительности. Производительность не падает! На этом видео, кстати, видно, что экспорт занял 24 минуты, а топовый MBP 14 года проиграл 4%. Разница не так велика, но это Air vs Pro, без вентилятора и базового уровня, дальше Apple обещает более мощные чипы.

Еще под полной нагрузкой M1 нагрелся до 33 градусов по цельсию на корпусе на Air без вентилятора! Что повергло прямо в шок, ибо MacBook Pro 16 греется до 46-50 градусов, жужа как пылесос.

Работа в Davinci, Final Cut и Premiere Pro с 4K видео работает как нативно (Final Cut), так и с Premiere Pro в режиме эмуляции x86 (Rosetta 2). При x4 воспроизведении 4К не наблюдалось тормозов.

Тесты Cinebench R23 показали преимущество над Core i9-9880, 1498 vs 1183 в single core тесте. Правда Ryzen лидирует в multi-core тесте.





Affinity тест: M1 дает жару iMac с AMD 580X.



Утром подьехали тесты компиляции WebKit.





Числа выше говорят за себя. Но вот что еще Apple подняла цены на официальном сайте на версии с Intel процессорами. Для примера, MacBook Pro 16 с Core i9-9880H, 16Gb RAM и 512Gb SSD стоит $2699. В то время как Apple MacBook Air с M1, 16Gb RAM и 512Gb SSD стоит $1499. При почти одинаковой производительности Базовый Air entry level против топового Pro Давление ценой и качеством. Что же, это мощный удар.

Что может последовать дальше? Волна хайпа вдохновит других вендоров и разработчиков OS пересмотреть свой подход. ARM позволяет запускать сотни тысяч приложений с мобильного AppStore и пользователи смогут запускать тот же Instagram уже на Mac. У Google тоже есть своя большая экосистема на ARM и это может подстегнуть Google активней разрабатывать свою OS, либо даже посмотреть в сторону производства своих устройств. Если сойдутся звезды, то и MS присоединиться к гонке. Выиграет от этого покупатель в любом случае. А что думаете вы? Пишите в комментариях!

Материал подготовелен на базе моей публикаций в авторском телеграм канале Об IT без галстуков. Правда о менеджменте, действиях и мотиваторах топ-менеджмента, про то как расти в компании и что ценят собственники бизнеса. Ну и авторский материал про современную разработку!


Изображение на обложку взято с ixbt.com, ну очень в тему)
Подробнее..

OpenGL на AppleM1

14.12.2020 18:12:07 | Автор: admin

Apple ведёт активную борьбу с открытыми стандартами и некоторое время назад объявила OpenGL "устаревшим" на своей платформе macOS Mojave 10.14, двигая разработчиков в сторону проприетарного графического API Metal. Анонсы Mac mini на чипсете Apple M1 (ARM) и macOS 11 Big Sur были восприняты с тревогой за судьбу OpenGL на этой платформе, однако различные источники успокаивали - OpenGL всё ещё поддерживается macOS Big Sur.

Оставался один вопрос - какую версию OpenGL может предложить графический процессор "новичка" Apple M1? Официальная документация Apple не обновлялась с 2017го года, и в ней, разумеется, нет упоминаний M1, а доступные на момент написания статьи не освещают данный момент.

Наконец, одним вопросом стало меньше! Как оказалось, macOS заявляет о поддержке OpenGL 4.1 для данного чипа, реализованного поверх Metal - то есть достигает верхней планки OpenGL, доступной на данной платформе для других GPUs, даже GeForce и Radeon.

Для сравнения - сверху скриншот CAD Assistant, запущенного на M1 (Mac mini '2020), а снизу на Intel UHD Graphics 630 (Mac mini '2018). Скриншот демонстрирует работу трассировки путей (Path Tracing) на GPU реализованного открытым графическим движком Open CASCADE Technology. Path Tracing требует OpenGL 4+ и представляется собой достаточно сложную GLSL программу - так что это неплохой способ проверить работоспособность GPU и реализации OpenGL.

К сведению, самая распространённые реализации OpenGL на Windows давно поддерживают версию OpenGL 4.5 ('2014) и выше, спецификации которой вышли без малого шесть лет назад, тогда как OpenGL 4.1 ('2010) уже исполнилось 10 лет! Но удивляться "отсталости" Apple тут нет смысла - компания нигде не объявляла войну OpenGL, но план вытеснения его с платформы macOS прослеживался уже давно, даже до представления общественности проприетарного графического API Metal в 2014ом году - сначала для iOS, а затем и для macOS. И, к сожалению, в отличие от других платформ, производители видеокарт не могут обновить версию OpenGL независимо от Apple.

Счётчик кадров в секунду в простой тестовой сцене со стеклянным шариком демонстрирует преимущество до двух раз M1 над Intel HD 630: 48 FPS против 25 FPS для маленького окошка и 14.8 FPS против 6.5 FPS для разрешения 1080p. Конечно, тут M1 выглядит достойно только по сравнению со слабым GPU процессора Intel i5 - цифры не идут ни в какое сравнение со 100+ FPS для 1080p на мобильных видеокартах среднего сегмента, таких как четырёхлетний GeForce 1060 GTX.

Для простоты эксперимента, CAD Assistant запускался через Rosetta - программное решение Apple для запуска x86-64 приложений на ARM64 процессоре (коим является новый M1). Важность такого инструмента трудно недооценить, ведь на момент анонса 99.9% программного обеспечения, доступного для macOS, рассчитано на процессоры Intel.

И тем удивительнее, как смело Apple играет своими мускулами, ведь Rosetta даже не предустановлена на macOS Big Sur! Приложения .app для Intel в Finder просто не запускаются на свежей системе, при этом система не показывает ни единого сообщения об ошибке. А вот запуск инсталлционного пакета .pkg сразу предложила установить Rosetta, после чего запуск старых приложений стал возможен.

Проблема совместимости со старыми приложениями при появлении новых платформ была актуальна не один раз. IA-64 (64битная архитектура процессоров Intel Itanium) не поддерживала запуск x86 приложений, а вот x86_64 (или AMD64, 64-битная архитектура современных процессоров Intel и AMD) была изначально рассчитана на совместимость с существующими x86 платформами и приложениями. Более того, 64-битная версия Windows XP для процессоров AMD вышла только в 2005 году - то есть спустя два года после выпуска первых процессоров AMD Athlon 64 / Opteron с этой архитектурой. Благодаря обратной совместимости (в том числе реализации WoW64 для прозрачного запуска 32битных приложений на 64битной Windows), 32битные x86 приложения и операционные системы оставались популярными ещё долгие годы.

Процессоры ARM физически не поддерживют инструкции x86 (как и наоборот), поэтому реализация запуска и эффективной работы приложений, написанных для другой архитектуры процессоров, представляет собой определённые сложности. Для Apple этот опыт был уже не первым в истории - первая версия Rosetta использовалась для запуска PowerPC приложений на процессорах Intel в 2006 году.

Подобные решения можно было наблюдать и на других платформах, таких как Android - когда аутсайдер мобильного рынка Intel пытался конкурировать с ARM. Такие версии Android на процессорах Intel позволяли запускать приложения собранные для архитектуры ARM. По моему опыту, работала такая комбинация не очень стабильно - многие приложения падали и работали некорректно. Тем интереснее понаблюдать за работой приложений через Rosetta 2:

  • Видеоплеер sView заработал без видимых проблем, но наблюдаются падения приложения при изменении размера окна.

  • CAD Assistant запускается и в целом работает, однако вскоре возникают артефакты отображения текста через рендер QtQuick.

  • Telegram запустился и вроде бы работает.

  • Edge также заработал на паре сайтов.

  • Firefox запустился, но работает некорректно (зависает открытие сайтов, падения).

Не могу сказать, связаны ли наблюдаемые проблемы именно с Rosetta, или с самой системой macOS Big Sur, или даже с графическими драйверами Apple M1. В будущем с появлением нативных ARM приложений для macOS этот вопрос может прояснится.

Intel версия sView на macOS Big Sur (ARM)Intel версия sView на macOS Big Sur (ARM)Битый текст в Intel версии CAD Assistant на macOS Big Sur (ARM)Битый текст в Intel версии CAD Assistant на macOS Big Sur (ARM)

Английская версия публикации может быть найдена по следующей ссылке.

Подробнее..

В раздумьях об ARMагеддоне

09.12.2020 12:08:12 | Автор: admin
Привет, Хабр! Меня зовут Сергей Минаев, я руководитель направления администрирования веб-сервисов в компании Спортмастер.

И пока весь мир обсуждает, насколько удачным получился процессор Apple M1, и действительно ли можно верить бенчмаркам, я и мои инженеры погрузились в раздумья о грядущем.
Мы сидели и курили, начинался новый день, а из головы все никак не уходили мысли о том, что произошло. Нет, мы не обсуждали возможное крушение Intel, мы не думали о том, что будет дальше делать AMD с x86, не думали про Вендекапец. Мы пытались и все еще пытаемся понять, насколько изменит веб-разработку новый продукт от Apple.

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

В начале было слово. Потом двойное слово




Когда компьютеры были такими же большими, как и деревья, а x86 был маленьким, как трава, основную работу проводили на больших компьютерах, и никто особо сильно не воспринимал всерьез IBM PC. Но тут произошла революция номер раз появился 80386. Появился защищенный режим, можно было адресовать 4Гб памяти но все это на самом деле не имеет никакого значения. Значение имеют цена и распространённость. В какой-то момент x86 благодаря Microsoft очень малоизвестной компании начал завоевывать рынок персональных компьютеров, которые можно было покупать домой. А там, где множество, там и появляется подручный, привычный и любимый инструмент. Именно таким инструментом стал x86, под который начали писать очень много ПО, и это ПО писали на самом x86.

Да, был рынок больших и тяжелых DEC Alpha, PowerPC, MIPS, SPARC. Компьютеры Apple на Motorolla/PowerPC мы пока что обходим стороной. Но самое важное происходило на уровне персоналок: x86 был привычным и распространённым инструментом, с каждым поколением увеличивалась производительность, а доступность была выше, чем у других архитектур. Все это привело к тому, что критическая масса ПО получила распространение именно под x86, хороший пример тому постепенный отказ Microsoft от архитектур Alpha, MIPS и PowerPC в Windows NT 4.0

Постепенно x86 начал врываться в серверный сегмент, где раньше царили PowerPC, MIPS, IA64. Со временем архитекторы стали отказываться от кастомных архитектур, на рынке серверов стал доминировать x86 (уже amd64), а такие гиганты как PowerPC и SPARC перешли в очень нишевый рынок. MIPS ушел в роутеры, от PA-RISC отказались ради IA64, а IA64 нашел свой айсберг.

Да что уж говорить про серверный сегмент, если даже игровые приставки ушли от PowerPC/Cell к x86 и ARM.

Добро пожаловать в новый дивный мир. Или не пожаловать




Мысленно переместимся в середину 2000: доллар по 29, Apple заявляет о переходе с IBM PowerPC на Intel x86. Быстрее, выше, сильнее. Появляется транслятор Rosetta, который призван облегчить переход с одной архитектуры на другую. О разработке на MacBook тогда особо никто не думал, поэтому получалась мир-дружба-жвачка.

Теперь мы перемещаемся в 2007 год, когда Apple представила свой первый iPhone на Samsung 32-bit RISC ARM. Это эпохальное время для ARM. Процессоры этой архитектуры и раньше использовались в КПК, но устройства этого формата были прерогативой инженеров и гиков. Если вспомнить вагон метро того времени, то мало у кого можно было увидеть КПК, а если он и бросался в глаза, то вызывал интерес. А кого сейчас можно удивить смартфоном? Мобильные устройства полностью вошли в нашу жизнь. Сейчас рынок C/C++ или Assembler очень узкий, а вот мобильному разработчику практически все двери открыты. Да, под Android собирается Java, под iOS Swift. Но все это работает на ARM.

У ARM очень много преимуществ, я не думаю, что необходимо останавливаться на технических данных, потому как самое главное распространённость и привычка. Привычка как пользователей, так и разработки.

А между тем, ARM прорывается в мир приставок: Nintendo и nVidia начинают использовать эту архитектуру.

Прошлое забыто, будущее закрыто, настоящее даровано


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

В какой-то момент ноутбуки Apple стали не просто символом моды, они стали рабочим инструментом, притом что самое важное привычным инструментом разработчика. Мы часто слышим от кандидатов дайте мне MacBook или я буду программировать на своем. Разработчик (веб, мобила) и MacBook практически неделимы.

И вот на этом моменте начинается самое интересное: компания, у которой не такая и большая рыночная доля, но у которой есть инструмент, к которому привыкли и на котором по разным оценкам создается 90-95% кода для веба, меняет архитектуру процессора в своем продукте.
Вернемся в прошлое, где-то в 1985-1995 годы. В чем было преимущество x86: цена-доступность, привычка, растущее количество ПО и разработка ПО. Сейчас ноутбуки на Apple M1 продаются дешевле, чем на Intel Core. Разработчики сильно привыкли к Macbook, а если ARM версия дешевле x86, то ее в основном и будут покупать. А покупать ее будут и из-за цены, и из-за того, что по тестам она быстрее, и из-за того, что живет от зарядки больше. И вообще это суперновый Macbook!



И если с мобильной разработкой все более-менее понятно, в ней мало что изменится, то с вебом, возможно, начнется непонятное.

Пользователи новых MacBook будут работать на ARM, а писать код под x86. Да, есть Rosetta 2, да Docker пока не готов под M1. Но это все пока. Появятся оптимизированные версии под M1, разработчики, скорее всего, будут использовать образы ARM. Той же Java для работы нужна JVM, которая компилируется под конкретную архитектуру процессора. И когда-то возникнет так нами любимое У меня локально все работает, это что-то у вас с сервером!.

И в заключение




Мы не уверены, что будет так, как мы предполагаем. Возможно, Rosetta 2 будет жить постоянно, возможно, придумают что-то еще, возможно, Apple откажется от M1 (или империя Intel/AMD нанесет ответный удар).

Но пока что мы поискали по ящикам, нашли Raspberry Pi 4 и начали тестировать Docker на ARM. А заодно прошлись по всем нашим базовым образам в корпоративном Registry и посмотрели, можно ли их пересобрать под ARM.

VMware начинает портировать ESXi на ARM, Kubernetes уже существует в ARM-версии, у Amazon улучшаются ARM-инстансы, а в интернете часто пишут, что гегемонии x86 наступает конец.
Может быть, это все зря, но мы уже думаем про возможность и целесообразность использования серверов на ARM-архитектуре. Лучше об этом подумать сейчас, чтобы не оказаться в догоняющих и на обочине истории.
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru