Поддержка процессоров Apple M1 в .NET

    17 ноября Apple официально представила устройства на базе своего нового ARM-процессора Apple M1. Естественно, это событие не могло быть не замечено со стороны компании Microsoft, которая с 2014 года начала активную экспансию .NET на новые платформы. Давайте посмотрим, что нас ждет в связи с этим в ближайшее время.

    Начнем пожалуй с инструментов, а затем перейдем к самой платформе .NET, но если вам не терпится узнать, получат ли новые маки поддержку .NET, то вот вам небольшой спойлер:

    Spoiler

    Да, на новых маках будет .NET

    Visual Studio Code

    Команда разработчиков Visual Studio Code уже объявила о том, что работает над поддержкой новых процессоров. На странице загрузок Insider Preview для macOS уже появились опция для загрузки экспериментальной сборки с поддержкой ARM. Следить за работой команды можно на официальном аккаунте в GitHub.

    Visual Studio for Mac

    Если команда VS Code уже подготовила тестовые сборки с поддержкой Apple M1, то их коллеги из команды Visual Studio for Mac оказались не так расторопны:

    Впрочем Visual Studio for Mac гораздо более крупный и сложный проект, поэтому портирование его на новый процессор может занять несколько больше времени. Сейчас эта версия IDE может работать при поддержке Rosetta 2.

    На данный момент у владельцев новых ноутбуков Apple наблюдаются некоторые проблемы при отладке проектов на Xamarin.Forms для iOS. Соответствующий баг уже заведен в репозитории проекта Xamarin.iOS & Xamarin.Mac.

    Rider

    В JetBrains уже объявили, что они работают над переносом JetBrains Runtime (и всех продуктов, работающих на JVM, в том числе и Rider) на Apple Silicon. На данный момент IDE от JetBrains работают на чипах Apple Silicon через Rosetta 2. Правда не все функции работают в этом режиме стабильно. Так, например, многие жалуются на то, что отладка в Rider сейчас не работает.

    Docker

    Docker стал практически must have инструментом для современного разработчика. У Майкрософт есть обширный набор образов для .NET, но к сожалению, воспользоваться вы ими на ноутбуке с новым процессором от Apple пока не сможете.

    Будем надеяться, что в ближайшее время поддержка M1 будет реализована в Docker.

    .NET

    А теперь перейдем к самому главному – получит ли новый чип поддержку .NET?

    Те, кто подсмотрели спойлер в начале статьи уже знают ответ на этот вопрос. Команда разработки .NET активно работает над поддержкой Apple M1. Для этого даже был создан отдельный проект в трекинге платформы. Стоит отметить тот факт, что текущая версия платформы (а именно, недавно ушедший в релиз .NET 5) будет работать поверх Rosetta. А вот в .NET 6 уже будет нативная поддержка нового чипа. Согласно планам Microsoft, произойдет это не раньше, чем через год:

    Из того, что уже выполнено, я бы отдельно отметил такие задачи:

    Также запланирована поддержка нового процессора в ASP.NET Core.

    Но несмотря на то, что официальной поддержки новых процессоров придется ждать почти год, уже доступна к загрузке альфа-версия .NET 6.0. На момент написания статьи, это версия 6.0.0-alpha.1.0562.6.

    Mono

    Проект Mono, который обычно был догоняющим (так как команде приходилось реализовывать те возможности, которые уже были в .NET) на этот раз оказался слегка впереди. Пулреквест с поддержка нового процессора сделала сама Apple, которая ранее обещала помощь в поддержке M1 для проектов с открытым исходным кодом.

    Проекты, которые вскоре должны получить поддержку Apple M1
    Проекты, которые вскоре должны получить поддержку Apple M1

    Самое большое изменение, которое было сделано для поддержки процессора M1 связанно с тем, как работает JIT, а именно, с изменение состояния потоков. Это было реализовано с помощью новых макросов в mono/mini.h. Они были встроены в систему из соображений производительности.

    Rosetta 2

    В этой публикации не один раз упоминалась технология Rosetta 2. Для тех, кто не знает, что это, приведем пояснение, которое размещено на странице портала Apple Developer:

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

    Итоги

    Новый процессор (а соотвественно устройства, которые будут на основаны на нем) без сомнений получит нативную поддержку в .NET, впрочем эта задача не является приоритетной в текущем роадмапе, поэтому ждать ее придется не раньше, чем в релиз уйдет шестая версия платформы. До того момента можно будет работать c .NET, используя возможности Rosetta 2. Что касается инструментария для разработчиков, то я могу предположить, что в ближайшие пол года основные проблемы будут решены (возможно даже с участием Apple) и уже к апрелю можно будет потихоньку присматриваться к компьютерам на базе Apple M1 в качестве рабочего инструмента.

    Комментарии 47

      +3

      .NET в последнее время стабильно радует!


      P.S. Оффтоп, конечно, но блин: Qt != QT

        +2

        Так это ж эппл, так что это вполне может быть самый что ни на есть QT, а не Qt.

        –2

        Не совсем понятно зачем Net разработчику Docker. Реально в нем потребности ни разу не возникало.

          +2

          В качестве примера могу привести свой проект, в котором мы все свои сервисы хостим в kubernetes, поэтому возможность работы с контейнерами часто бывает востребована.

            +1

            Мы используем Nomad, он позволяет запускать приложения и без докера.

              0

              Справедливости ради, на презентации сказали, что докер на новой платформе будет запускать образ с ARM-версией ядра. А это значит, что образ-то может и запустится, но поведение его может отличаться от продуктовой среды, потому что серверная инфраструктура на 99% это x86.

                0
                Не обязательно. Мы пол года назад перешли на AWS A1 (Graviton) платформу. В нашем случае это существенно снизило затраты. В таком случае M1 будет даже удобнее для разработки.
                  +1

                  А расскажите, как у вас сейчас работа устроена?
                  CI на таких же серверах крутится? Локально разрабатываете-отлаживаете в x86?

              +2

              Да, действительно в мире .NET сначала была только Windows (с оговоркой про Mono), а потом сразу Core с его мультиплатформенностью и сборкой вместе с рантаймом в одном пакете. Но docker это не только ценный мех окружение, это ещё и изоляция, контроль ресурсов, а так возможность попасть в K8S, как сказал Ernado (его возможности можете посмотреть отдельно).

                +1

                Можно по интересоваться, под что разрабатываете на неткоре?


                Под IIS? или если под юникс, то как запускаете сервера?


                Не думаю что много кто на неткоре делает CLI утилиты или UI на Avalonia.

                  +1
                  Я не разраб, но на моём проекте на .NET Core написана интеграция, которая в свою очередь крутится в Azure Functions.
                    +3
                    Под IIS совсем не обязательно. Там давно есть Kestrel. Мы делали сервисы на .NET Core которые крутились на Линуксе. Не помню точно, кажется это был Дебиан
                      0

                      Да оно понятно. Просто вопрос "зачем нужен докер" страннопрозвучал, если веб 80% задач неткора. Можно и без докера. :-)


                      Хотя мне не нравится деплоить без него, надо расшариваться с system.d и деплоить через ansible, а это лень.

                        0
                        Совсем не обязательно, что это будут веб сервисы. Это могут быть как запланированные задачи через какой-нибудь Quartz, так и внутренние сервисы без доступа наружу
                      +1

                      Чисто для статистики: мы делаем проект с десктопным клиентом на NET Core и UI на WPF

                        0

                        А почему Core, а не фреймворк?


                        P.S. в UWP же изначально кор был?

                          0

                          Потому что уже когда мы начинали, MS говорили, что если вы начинаете новый проект и не завязаны на фреймворк, то используйте core.
                          Есть надежда на то что однажды сможем перевезти клиента и на Линукс.

                        +1
                        Тоже приведу примеры:
                        Ну вот мы на работе постепенно перелезаем на .net core. Веб сервисы спокойно хостятся под *nix со связкой kestrel + nginx. Десктопный софт пока не изучали, но должен вполне спокойно переехать учитывая что поддержку WinForms и WPF завезли в 3.0. Вроде даже слышал что в течение пары лет должна подъехать мультиплатформенная поддержка UI, но для нас это пока не актуально.

                        Из личных проектов, как пример CLI, есть распределенный highload веб краулер, который абсолютно спокойно живет под .net core еще со времен пре-релиза 1.0.
                          0

                          Для кроссплатформы существует Avalonia, хотя я не в курсе насколько там все радужно.


                          Ну а деплоить на голый никс как по мне муторно, без докера. Мб вкусовщина и моя лень.

                            0
                            Ну у net core для каких-то мелких вещей, которые не часто обновляются, еще кстати вопрос что более муторно — настроить докер и репозиторий, билдить докерфайл, пушить в репозиторий, выкачивать его потом из репозитория или сбилдить self-contained билд, залить по ssh и запускать в screen.
                        +1
                        Как это зачем. Коровские проекты на раз пакуются в контейнер и запускаются в никсах без всяких винсерверовских лицензий. Ну и да, кубер подразумевает контейнирезацию. Надеюсь вы не спросите, зачем нужна оркестрация. Тем более контейнирезация как таковая независимо от платформы, на которой написан софт.
                          –1

                          Как вам там живется в 2012ом?

                            +1

                            Мы, например, в нашем кровавом энтерпрайзе не только сами сервисы гоняем в кубере, так ещё и все тесты API контроллеров пишем с использованием дотнет порта TestContainers
                            https://github.com/HofmeisterAn/dotnet-testcontainers

                            0
                            Парни кто в теме, подскажите, каковы шансы чтобы тот же PowerShell 7+ будет работать на M1?
                              0

                              Учитывая, что .NET Core работает под Rosetta 2 (насколько стабильно пока судить не берусь, но все же запускается), то PS7, который на .NET Core написан тоже вполне может работать. Но нативная поддержка будет, я думаю, не раньше релиза .NET 6.

                                0
                                Спасибо, значит в любом случае ждать следующее поколение :)
                              0
                              Выход данных процессоров вызывает непонятный для меня ажиотаж, кто хотел использовать Arm64 в лаптопе могли покупать surface X, кто хотел Mac могли брать Mac на x64, почему многие люди хотят купить именно Mac на arm64?
                              Мне, как раннему пользователю, пока он не нравится, потратил 3 дня на то, чтобы сделать reset системы, ибо почему-то сервер apple не был доступен из их нового recovery mode, перезагрузок с panic crash случаются по несколько раз в день, даже их Xcode без танцев не запустить.
                              Это магия «something new from apple» -> BUY или все хотят большую автономность?
                                0

                                Apple, Microsoft, Google, etc. — крупные игроки на рынке. Поэтому любой их шаг так, или иначе будет вызывать интерес. Любой их шаг, так, или иначе будет влиять на рынок.

                                  0
                                  Скорее вопрос в том (ну, у меня так точно), почему же продукция от Apple вызвала такой ажиотаж при использовании ARM процессора, а вот продукция от Microsoft нет, хотя Windows более популярная ОС?
                                  Да, несомненно чип у них вышел отличный, рвёт всё и вся, но SQ1 тоже выдаёт неплохие результаты для приложений соответствующей архитектуры. Но, однако бума адаптаций приложений под Windows on ARM замечено почему-то не было, хотя их(приложений) гораздо больше.
                                    +1

                                    1) Surface Pro X медленнее похожих Surface на Intel даже в нативных приложениях. Эмуляция крайне медленная и не работает для x86-64 приложений.
                                    2) Ассортимент компьютеров скуден. Ничего напоминающего рабочие станции ни у кого нет даже в планах.
                                    3) Средства разработки спустя 2 года ничего кроме слёз не вызывают.


                                    Плюс все понимают, что x86 никуда не денется, поэтому зачем вообще обращать внимание на экзотическую платформу? Тем более перед глазами совсем недавно почившие Windows Phone и Windows RT.


                                    UPD: Написал и понял, что прям по-каждому пункту Apple сделала всё наоборот.

                                      +1
                                      1.1) Вам мало этой производительности? Вы вообще пользовались WOA(Windows On ARM)? Представьте себе любой ультрабук(ведь это ближайший формфактор к Surface Pro X), вы действительно можете представить такую нагрузку, которую можно дать этому ультрабуку и не выполнить её на Surface Pro X? За исключением архитектурных различий таких нагрузок нет.

                                      1.2) Считаете, что эмуляция слишком медленная? Да вы только вспомните о том, что из себя представляют типичные x86 приложения для Windows. Это такое количество различных компиляторов, использований недокументированных возможностей Windows и всего прочего, что универсальный эмулятор явно быстрым сделать не получится. Зато есть устаревшее ПО, которое вы так любите. И оно работает. И кстати, эмуляцию x86_64 завезут в конце ноября.

                                      2) Тут полностью согласен, я бы не прочь заиметь настольный ПК на базе ARM, но увы, приемлемых предложений пока нет (хотя кто-то использует серверные ThunderX2 в связке с Windows, но экзотика).

                                      3) Смотря что вы имеете ввиду. Если для разработки под ARM, то вы голословны. Весь инструментарий, присущий обычной разработке для Windows, доступен и для ARM, если вы, конечно, не на Delphi пишете, но в таком случае это ваша проблема. Если для разработки на ARM, то простите, под Mac сейчас тоже ничего нет.

                                      > что x86 никуда не денется, поэтому зачем вообще обращать внимание на экзотическую платформу?
                                      Действительно, и зачем обращать внимание на Mac?

                                      > Тем более перед глазами совсем недавно почившие Windows Phone и Windows RT.
                                      Это обратно возвращает нас к вопросу, поставленному мною ранее:
                                      > почему же продукция от Apple вызвала такой ажиотаж при использовании ARM процессора, а вот продукция от Microsoft нет
                                        0

                                        Я брал как раз этот SPX у знакомого погонять.
                                        1.1) Да, мало. Меня откровенно не устраивала скорость работы даже в браузере. Дело не в нагрузках, а в отзывчивости системы при множестве запущенных приложений.
                                        1.2) Да, она ужасно медленная. Компиляторы тут вообще ни при чём, у них на выходе один и тот же формат PE с одинаковыми машинными кодами.
                                        При том количестве приложений, которые даже теоретически никогда не будут обновлены, это просто не решение — что-то запускается, а работать невозможно.
                                        2) Если у вас нет достаточно производительной машины на целевой платформе, то разработка и отладка усложняется многократно.
                                        3) Нативных средств, чтобы разрабатывать на целевой машине нет. Даже Visual Studio до сих пор не появился, 2 года после выпуска устройств прошло.


                                        Действительно, и зачем обращать внимание на Mac?

                                        WoA намного более экзотическая платформа, тем более для разработчиков.


                                        Распишу тогда, что именно сделала Apple по-другому:
                                        1) Первые же устройства намного производительнее моделей, которые они заменили — есть причина обновляться, есть конкурентое преимущество для новых покупателей. Трансляция приложений работает с первого дня настолько хорошо, что можно даже видео монтировать, не говоря об офисных пакетах и сторонних средствах разработки.
                                        2) Макбуки и младший настольный компьютер вышли сразу с достаточными ресурсами для разработки нативных приложений. Более мощные компьютеры на подходе, в течении 2 лет будут рабочие станции.
                                        3) XCode с поддержкой сборки под Apple Silicon был доступен с начала лета. Разработчикам по запросу высылался DTK с нативным XCode. Можно прямо сейчас взять Intel мак или купить новый с M1, сесть за него и начать писать Universal-приложения, которые будут одинаково хорошо работать и на старых маках и на новых. Портирование старых приложений максимально упрощено — никаких новых библиотек, уникальных ARM API, заморочек со сборкой — всё изменение архитектуры спрятано в одну галку в интерфейсе XCode (да, я знаю, что так просто это работает только для неизощрённых приложений на ObjC/Swift). Все крупные производители средств разработки получили помощь от Apple. Всё, что использует LLVM поддерживает нативную сборку под macOS-ARM с первого дня.
                                        То, что не успели обновить, будет доделано в первые месяцы.


                                        Плюс все понимают, что x86 никуда не денется

                                        А вот тут внезапно, через 2 года никаких новых Intel-маков не будет, а рынок юзеров со старыми будет неуклонно сокращаться.
                                        Разработчики под macOS понимают, что Apple Silicon — безальтернативное будущее маков на долгие годы, поэтому если не займёшься их поддержкой, поезд уйдёт без тебя.


                                        В итоге Apple дала:


                                        • позитивный стимул — новые маки значительно быстрее и дольше работают от батареи
                                        • негативный стимул — старая архитектура сдохнет
                                        • удобные средства для движения в "светлое будущее".

                                        MS не дал ничего.

                                          0
                                          1.2) Да, она ужасно медленная. Компиляторы тут вообще ни при чём, у них на выходе один и тот же формат PE с одинаковыми машинными кодами.

                                          Вы забываете, что трансляция идёт не с 64-битной архитектуры на 64-битную, а с 32-битной архитектуры на 64-битную (в отличии от Rosetta). Мало того, что это совершенно иная адресация, которую надо исправлять, так ещё и исправлению подлежат все системные вызовы. А компиляторы не все работают на базе LLVM, и то, что могло быть оптимально для целевой архитектуры, при эмуляции только замедляют процесс исполнения, например, выравнивание данных компилятором может сильно повлиять.
                                          2) Если у вас нет достаточно производительной машины на целевой платформе, то разработка и отладка усложняется многократно.

                                          Протестую. Отлаживал UWP приложения на Surface RT и Raspberry Pi, и знаете, не умер.
                                          Нативных средств, чтобы разрабатывать на целевой машине нет. Даже Visual Studio до сих пор не появился, 2 года после выпуска устройств прошло.

                                          Да, печально. Но это монстр, портирование которого не осилили даже на архитектуру x86_64, что говорить об ARM, но особо жалоб на 32-битную IDE я почему-то не слышу. А так — есть нативная VS Code.
                                          WoA намного более экзотическая платформа, тем более для разработчиков.

                                          и
                                          Портирование старых приложений максимально упрощено — никаких новых библиотек, уникальных ARM API, заморочек со сборкой — всё изменение архитектуры спрятано в одну галку в интерфейсе XCode (да, я знаю, что так просто это работает только для неизощрённых приложений на ObjC/Swift).

                                          Что касаясь UWP, что касаясь Win32, где же вы увидели отличия в API между aarch64 и x86_64? Да я больше скажу — если не используются ассемблерные вставки, то и драйвера обычно перекомпилируются парой кликов мыши.
                                          Плюс все понимают, что x86 никуда не денется

                                          А вот тут внезапно, через 2 года никаких новых Intel-маков не будет, а рынок юзеров со старыми будет неуклонно сокращаться.
                                          Разработчики под macOS понимают, что Apple Silicon — безальтернативное будущее маков на долгие годы, поэтому если не займёшься их поддержкой, поезд уйдёт без тебя.

                                          Так это же я вас процитировал. В целом, да, изменения позитивные, устаревшее ПО надо бы заменять новым, более функциональным и производительным. Только вот нынешние разработчики забыли, что ресурсы компьютера всё же не безграничны, и фигачат на JS всякие тухлые поделки, которые даже без палки в колесе работают будто как с ней. А наколенная поделка на C студента 2003 года оказывается гораздо функциональнее, чем новые аналоги.
                                          1) Первые же устройства намного производительнее моделей, которые они заменили — есть причина обновляться, есть конкурентое преимущество для новых покупателей. Трансляция приложений работает с первого дня настолько хорошо, что можно даже видео монтировать, не говоря об офисных пакетах и сторонних средствах разработки.

                                          Я и не спорю. Прекрасное железо. Но не всем же совершать прорывы. Тем более, что у Microsoft и Qualcomm кабальный контракт на продажу WOA только на процессорах от Qualcomm. Отсюда и заявление о том, что WOA на Apple Silicon полностью зависит от Microsoft, хотя, внутри Apple Windows на M1 уже запускали.
                                          MS не дал ничего.

                                          Вы просто хотите в это сильно верить. Microsoft, например, своими силами портировали Chromium, инфраструктуру LLVM, OpenVPN на WOA. И существует множество других примеров. Другое дело, что поддержки со стороны других компаний в этом направлении Microsoft почти не получает.
                                          XCode с поддержкой сборки под Apple Silicon был доступен с начала лета. Разработчикам по запросу высылался DTK с нативным XCode. Можно прямо сейчас взять Intel мак или купить новый с M1, сесть за него и начать писать Universal-приложения, которые будут одинаково хорошо работать и на старых маках и на новых.

                                          Действительно, а вот при выходе любых устройств с WOA этих инструментов не было? Помимо того, что они были, так ещё и целая гора приложений, написанных для Windows 10 Mobile, просто берут и работают на WOA. Инфраструктура была отлажена ещё задолго до появления таких устройств.
                                            0
                                            Вы забываете, что трансляция идёт не с 64-битной архитектуры на 64-битную, а с 32-битной архитектуры на 64-битную (в отличии от Rosetta)

                                            Пользователю всё равно, из-за чего у него одни приложения тормозят, а другие не запускаются вообще. И в игрушки не поиграть. Он просто сдаст устройство обратно и друзьям расскажет, чтобы не брали.


                                            Протестую. Отлаживал UWP приложения на Surface RT и Raspberry Pi, и знаете, не умер.

                                            Я же не сказал, что невозможно.


                                            Да, печально. Но это монстр, портирование которого не осилили даже на архитектуру x86_64, что говорить об ARM, но особо жалоб на 32-битную IDE я почему-то не слышу. А так — есть нативная VS Code.

                                            VS Code всё-таки совершенно другой продукт.


                                            Что касаясь UWP, что касаясь Win32, где же вы увидели отличия в API между aarch64 и x86_64? Да я больше скажу — если не используются ассемблерные вставки, то и драйвера обычно перекомпилируются парой кликов мыши.

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


                                            Я и не спорю. Прекрасное железо. Но не всем же совершать прорывы.

                                            А без прорывов непонятно, зачем такое устройство вообще покупать и иметь проблемы с совместимостью и эмуляцией.


                                            Тем более, что у Microsoft и Qualcomm кабальный контракт на продажу WOA только на процессорах от Qualcomm.

                                            Это было их решение. Как видим, не очень дальновидное.


                                            своими силами портировали Chromium

                                            Это же для своего же браузера.


                                            Вы просто хотите в это сильно верить. Microsoft, например, своими силами портировали Chromium, инфраструктуру LLVM, OpenVPN на WOA. И существует множество других примеров.

                                            А расскажите ещё примеров, пожалуйста. Я не ради спора, мне действительно интересно, потому что совсем мимо меня как-то пролетело, а нагуглить не получается.


                                            Действительно, а вот при выходе любых устройств с WOA этих инструментов не было?

                                            Так нативных и до сих пор нет. Я не могу купить устройство на ARM и нормально пользоваться им для разработки.


                                            Помимо того, что они были, так ещё и целая гора приложений, написанных для Windows 10 Mobile, просто берут и работают на WOA.

                                            Они действительно хоть кому-то нужны?

                                              0
                                              внутри Apple Windows на M1 уже запускали

                                              А есть где почитать об этом подробнее? Очень интересно стало.

                                              0
                                              3) Нативных средств, чтобы разрабатывать на целевой машине нет. Даже Visual Studio до сих пор не появился, 2 года после выпуска устройств прошло.

                                              Нативные средства в виде компилятора C++, .Net на них WoA есть, UI от Visual Studio — нет, VS code работает. Но, пока что, Xcode и VS Code оба весело крашатся на Arm64 Apple при попытке их открыть, консольные тулы работают.
                                          0
                                          Да, несомненно чип у них вышел отличный, рвёт всё и вся
                                          Производительность пока ничем реальным не подтверждена (гикбенч я видел).
                                          Похоже на раскруточный хайп.
                                            0

                                            А что именно вы ожидаете в качестве подтверждения производительности?
                                            Потому что тестов в интернетах уже достаточно всяких разных наделали, может найдётся?

                                              0
                                                0
                                                М1 выигрывает у ультраэкономичного 15W Core i7-8557U 4ядра +HT.

                                                Тем не менее, до нормальных процессоров еще далеко. В Синебенч20 М1 получил 2100 баллов (8:20) сравниваем тут.

                                                Тем не менее, выглядит многообещающе, особенно когда получит нативные приложения.
                                                  0
                                                  Тем не менее, до нормальных процессоров еще далеко. В Синебенч20 М1 получил 2100 баллов (8:20) сравниваем тут.
                                                  да, но только r23 работает на M1 нативно, в нем M1 получает что-то около 1500/7500, что является весьма респектабельным результатом (№7 в однопотоке, на уровне шестиядерных десктопников в многопотоке). R20 запускался через rosetta2, и может служить лишь индикатором эффективности оной. В общем, вы нормально так черрипикнули самый нерепрезентативный бенчмарк
                                                    0
                                                    Честно говоря, мне эта презентация вообще не показалась репрезентативной. Сплошное вождение руками и мантры «какой холодный».

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

                                                    Не говоря уже о том, что сам Синебенч весьма далек от реальных задач. И в нем, _внезапно_, 4х-ядерный процессор вдвое медленнее 8-ядерного.

                                                    А производительность с плавающей точкой?

                                                    В общем, подождем нормальных тестов.
                                                      0
                                                      Не говоря уже о том, что сам Синебенч весьма далек от реальных задач. И в нем, _внезапно_, 4х-ядерный процессор вдвое медленнее 8-ядерного.


                                                      Куда уж ближе к реальным задачам, чем многопоточный 3D рендеринг. Ну и, в общем то, ничего удивительного что 4 ядра в многопотоке проигрывают 8 ядрам если это ситуация когда 8 ядерный проц плюс-минус равен или выше по IPC и/или частоте.
                                                        0
                                                        В общем, подождем нормальных тестов.
                                                        define «нормальные тесты». А то в последнее время любой бенчмарк, в котором замеряют M1, внезапно становится плохим. Да чего далеко ходить:
                                                        Не говоря уже о том, что сам Синебенч весьма далек от реальных задач.
                                                        пока x86 выигрывал у M1 в cinebench r20, вы сами на него сослались. А когда оказалось что лишь более новая версия cinebench работает на M1 нативно, так он у вас сразу стал «далек от реальных задач».
                                                          0
                                                          Любой набор тестов лучше, чем ничего, даже этот.

                                                          Неплохой набор тестов, например у 3Dnews

                                                          Про синебенч напомню про 1е райзены, которые больше нигде не выделялись, а там ОГОГО!

                                                          И нет, я не ругаю М1. Для первого релиза это великолепный результат, тем более тут не только железо, но и ОС, и слой совместимости разом и в очень сжатые сроки.
                                                            0
                                                            Неплохой набор тестов, например у 3Dnews
                                                            ну там половина тестов игровые, а половина оставшихся является этапами того же geekbench'а
                                                            Про синебенч напомню про 1е райзены, которые больше нигде не выделялись, а там ОГОГО!
                                                            интересно, может ли это быть связано с тем, что это был первый восьмиядерный проц в десктопном сегменте, конкурирующий с четырехядерным 7700K в хорошо распараллеленной задаче?
                                                            И нет, я не ругаю М1. Для первого релиза это великолепный результат, тем более тут не только железо, но и ОС, и слой совместимости разом и в очень сжатые сроки
                                                            я намекаю на предвзятость в оценке его замеров
                                          +1

                                          del

                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                          Самое читаемое