Новый Apple M1, AMD Epyc, AMD Ryzen… Если Intel ничего не предпримет, то мы можем увидеть его закат



    То что сейчас происходит — это выбивание стула из под 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.



    А еще на habr пользователь avengerweb опубликовал Первый опыт: Mac Mini на M1.



    Числа выше говорят за себя. Но вот что еще… 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… Давление ценой и качеством. Что же, это мощный удар.



    UPD. В комментариях уже зацепились за AMD и Market Share, потому давайте добавлю и это.

    Доля Intel на рынке процессоров падает и этому способствовал успех AMD.



    У AMD вообще отличная архитектура и себестоимость 1Ghz вычислений намного ниже. Это позволило AMD обеспечить прирост в 5 раз доли в сегменте DC. А запас производительности для топовых железок просто отменный.





    Какую же долю занимает Client/Server сегмент Intel? Client сегмент на 50% больше чем сервервный, именно в Client сегмент начал быть AMD и теперь Apple.



    Потому я вижу, что Intel сдает позиции в x86 десктопном, мобильном и серверном сегменте AMD, а тут еще Apple с ARM начинает будоражить рынок.



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

    А что по минусам или рискам?

    • Заявлена поддержка только 1 экрана до 6K в MBA и MBP, подключить два не получится. Возможно, добавят в следующей ревизии, ибо о какой Pro может идти речь, если нельзя два экрана подключить? Кстати, у Mac Mini на M1 есть HDMI порт и подключить можно будет два экрана, скорее всего.
    • Epic Games Launcher у людей на MBA вылетал, потому проблемы с Rosetta могут быть, я бы советовал подождать пока проблемы исправят.

    Материал подготовлен на базе моей публикаций в авторском телеграм канале Об IT без галстуков. Правда о менеджменте, действиях и мотиваторах топ-менеджмента, про то как расти в компании и что ценят собственники бизнеса. Ну и авторский материал про современную разработку! Второй мой канал (ФинВам) про финансы, финансовую грамотность и инвестиции.
    Изображение на обложку взято с ixbt.com, ну очень в тему.
    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 750

      –28
      Вы сравниваете мобильные чипы. ARM не сможет тягаться с десктопными x86, по крайней мере при одинаковом техпроцессе.
        +41
        Но тут показаны реальные задачи включая компиляцию. Почему не могут, если делают?
          –19
          При разработке чего-либо (например процессорной архитектуры) приходится постоянно искать компромиссы. У ARM упор сделан на энергоэффективность, у x86 на производительность. Невозможно сделать процессор одновременно и с высокой производительностью, и с малым энергопотреблением. Физику не обманешь.

          Почему не могут, если делают?
          В приведенных вами тестах не участвуют десктопные x86.
            +11
            В мак про стоит ZeonXeon. Если в тестах нет никакой ошибки, то похороны x86 уже случились.
              +10
              Помнится, эта же самая яблочная контора уже «хоронила» x86 лет 25 назад. Тогда тоже были крутые тесты, овации в прессе, слоган «лучше, чем Pentium» и т.д.

              И чем все закончилось?
              А вот этим.



              Я уже говорил в другой теме, что если ядро новых ARM такое крутое, то ни у интела, ни у амд, не будет больших проблем использовать его в своих x86-совместимых процессорах, потому как нет разницы, поверх чего будет работать транслятор команд.
                +6
                ни у интела, ни у амд, не будет больших проблем использовать его в своих x86-совместимых процессорах

                И да, и нет. И да, потому что концептуально можно положить ARM ядро и назвать этот процессор Intel Core или там Ryzen. Более того, AMD в начале 10х экспериментировала с выпуском ARM процессоров.
                С другой стороны, разработка ядер CPU и процессоров на их базе — основной бизнес Intel и бОльшая часть бизнеса AMD. Если они начнут эти ядра у кого-то покупать (а Apple, на сколько я понимаю, все таки разрабатывает сама и ядра, и процессор, а не покупает их на стороне, как делают многие производители мобильных чипов), то это будет означать фактическую смерть обоих компаний, так как основную ценность и главную компетенцию они потеряют.
                Кроме этого, если у них нет туза в рукаве на базе «таких хороших ядер» на ARM (а у Intel его судя по всему нет) — разрабатывать его с ноля займет годы. И проблемы с техпроцессом. Кроме того, в случае с Intel и их собственными уникальными фабриками, придется еще и перепроектировать все это под собственно их фабрики, что тоже займет долгое время, т.к. нельзя просто взять условную пачку документаций и спецификаций с фабрики TSMC и начать делать то же самое на фабрике от Intel или от Samsung. Даже на одном и том же условном «10нм» техпроцессе техпроцесс у каждого производителя отличается и чип надо под него перепроектировать.
                В общем — все на самом деле очень непросто.
                  –17
                  С другой стороны, разработка ядер CPU и процессоров на их базе — основной бизнес Intel и бОльшая часть бизнеса AMD. Если они начнут эти ядра у кого-то покупать

                  У них гораздо больше опыта в разработке ядер, чем у кого-либо. Если окажется, что просто выбран неверный путь, то повернуть в сторону и разработать нечто похожее для них большой проблемой не будет. Покупать разве что на время переходного периода придется.

                  а Apple, на сколько я понимаю, все таки разрабатывает сама и ядра, и процессор

                  Apple — исторически контора дизайнеров-гуманитариев (и не нужно спорить, публично доступная история разработки айфона это отлично доказывает). Весь грешный инжиниринг делается купленными на стороне руками и головами. Так кто мешает тому же интелу, если прям так сильно пахнет жаренным, точно так же перекупить тех, что умеет делать лучшие ядра?

                  Ну и не забываем, что яблочный процессор — это ARM, а не что-то неведомо-новое, т.е. его архитектура прекрасно известна и доступна всем желающим.
                    +12
                    повернуть в сторону и разработать нечто похожее для них большой проблемой не будет.

                    Будет. Intel вот пыталась пару лет назад и в модемы, и в процессоры мобильные. Слилась, не смогла.
                    Если бы могли — сделали бы. Intel/AMD и любая другая подобная компания каждый год миллиарды долларов в RnD закапывают. Пока в ARM и подобные показатели производительности у них даже близко не получилось.
                    А на счет покупать — во-первых могут и не продать, во-вторых — все, что доступно к свободной покупке не блещет показателями. Так то да, вон готовые Cortex ядра продаются.
                    Весь грешный инжиниринг делается купленными на стороне руками и головами.

                    Вот только процессоры они разрабатывают in house. Даже компанию для этого купили в начале нулевых, специализирующуюся на разработке процессоров. Там не только маркетологи работают все таки, с времен создания первого айфона поменялось достаточно много. Ну и контрактников конечно никто не отменял, они есть у любой крупной компани.
                    Кто мешает тому же интелу, если прям так сильно пахнет жаренным, точно так же перекупить тех, что умеет делать лучшие ядра?

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

                    Так и x86_64 всем известен и доступен всем желающим по лицензии. Проблем нет. Вот только архитектура != ядро или процессор под нее. Разница примерно как между алфавитом определенного языка и его грамматикой и написанной с помощью этого алфавита на этом языке книгой.
                    Знание языка необходимо, но совершенно недостаточно для того, чтобы написать книгу. Ну то есть что-то конечно можно изобразить, но до бестселлера этому произведению будет далековато.
                      +2
                      Будет. Intel вот пыталась пару лет назад и в модемы, и в процессоры мобильные. Слилась, не смогла.

                      Не "пару лет", а побольше. И ушла не потому, что "не смогла", а потому, что эти рынки — низкомаржинальные. Затрат много, конкуренция высокая, прибыли (относительно десктопных и серверных процессоров) — низкие.


                      Реальная очевидная проблема у Интела сейчас одна — они впервые за очень долгое время потеряли лидерство в техпроцессе, и никак не могут его наладить. На этом фоне рассуждать о том, что у Эппла или АМД архитектура лучше, а Интел якобы "не смог" — занятие так себе.

                        0
                        Разве в x86_64 не всё запатентовано перепатентовано? И патенты никому не продаются. Или это речь шла про х86?
                          +4
                          Только то, что мы называем x86_64 было разработано AMD. и оно вообще-то называется AMD64.
                          Интеловская 64 разрядная технология (IA-64) вообще не взлетела.
                            0
                            Не взлетела массово, потому что предлагала слишком радикальный подход, ведущий к продуктивности за счёт отказа от легаси. Что сейчас всё равно происходит.
                            Впрочем, ограниченную распространённость получила и до сих пор используется, но как раз наступает EOL.
                            Если уж HP и Intel, потратив огромное количество ресурсов на разработку технологии, решили от неё отказаться, значит есть другие варианты.
                          –2
                          Будет. Intel вот пыталась пару лет назад и в модемы, и в процессоры мобильные. Слилась, не смогла.

                          Чужая ниша. А персоналки и сервера — свое поле. Разница очень большая. Тут уже и маркетинг налажен, и рынок приложений трилионный.

                          А на счет покупать — во-первых могут и не продать

                          Купить болванку. А сделать ее быстрой, если дело только в наборе команд, должны суметь, иначе грош им цена.

                          Даже компанию для этого купили в начале нулевых

                          Вот про это я и говорю.

                          У Apple денег даже в кэше 75 миллиардов против 16 у Intel.

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

                          Вот только архитектура != ядро или процессор под нее.

                          Конечно, но раз apple не стала пилить свой x86, а пошла на кардинальную смену набора команд и выбрала arm, значит архитектура решает, не так ли? И если новый камень реально такой крутой, как о нем тут пишут, значит и интел может поменять архитектуру и получить примерно то же самое.
                            +2
                            но раз apple не стала пилить свой x86, а пошла на кардинальную смену набора команд и выбрала arm, значит архитектура решает, не так ли?

                            Конечно решает, x86 не продаётся, а больше разумных вариантов, кроме арма не было, вот и всё решение.

                              +3
                              Еще наработки под мобильные армы были.
                                +6

                                Да и вообще, они этот арм основали :)

                                0
                                Почему это? Лицензию х86 может купить любой желающий с тем лишь ограничением, что компания должна быть из США. Apple вполне подходят под это требование.
                                Я думаю, что выбор x86 <-> ARM был в другом — Apple уже давненько сама разрабатывает процессоры для своих телефонов и увидела, что это у неё успешно получается + провела моделирование быстродействия для десктопных задач. Результаты её устроили и поэтому она решила перевести на них Маки.
                                  0
                                  Почему это? Лицензию х86 может купить любой желающий с тем лишь ограничением, что компания должна быть из США. Apple вполне подходят под это требование.

                                  Откуда такая уверенность, что лицензия на x86 вообще продаётся? :)

                                    –4
                                    Потому-что иначе это ограничение конкуренции, а там такое очень сильно не любят. Так что там или ты её не продаёшь вообще никому, или пилишь разумные условия лицензии и продаёшь всем, кто подходит им соответствует. Там же недавно Qualcomm нагнули (или дело ещё в процессе) за такое.
                                      +2

                                      Хорошо вам жить в мире иллюзий, где всё просто и понятно, как у вас в комментарии.


                                      Так что там или ты её не продаёшь вообще никому, или пилишь разумные условия лицензии и продаёшь всем, кто подходит им соответствует.

                                      Ну вот x86 никому и не продаётся, нет никаких "разумных условий лицензии", нет никакой лицензии вообще, на планете три компании, кроме интела, которые могут делать x86 процессоры, потому что они исторически добились (разными путями) разрешения от Интела.


                                      С другой стороны, многие патенты уже истекают, так что в принципе любой может начать делать что-то вроде Пентиума 2, но смысл? :)

                                        0
                                        AMD, VIA, а третья какая?
                                          +1

                                          DM&P Electronics с их процессорами Vortex86 для embedded оборудования. Последнюю на текущий момент модель процессора они выпустили в 2018 году.

                                            0
                                            Даже не слышал о такой.
                                            0

                                            IBM внезапно.

                                    0
                                    Конечно решает, x86 не продаётся
                                    эм, x86 может и продаётся (ну, как минимум есть ещё виа с правами на процы с x86), не продаются какие-нибудь новые расширения и x64. Интел и АМД их крослицензировали друг другу.
                                    Хотя можно вспомнить, что АМД продала зен1 китайцам без блоков шифрования. Не знаю, имеют ли они право теперь что-то выше сделать на основе.
                                      0

                                      Загуглите как via получили права на x86, там была совсем не продажа :)

                                        –1
                                        Ну китайцы то для личных процов таки купили прям архитектуру у амд вообще, не знаю на каких условиях)
                                          0

                                          Формально, там по сути AMD производит свои ядра.

                                            0
                                            Формально, там совместное предприятие AMD с китацами, как и в случае VIA с Zhaoxin.
                                            И совместному была передана именно лицензия на разработку на основе zen без блоков криптографии, которые были заменены на блоки для работы с китайскими алгоритмами шифрования. Zen2 уже не разрешили передавать.
                                              0

                                              Да, в википедии так и написано

                                    0
                                    Купить болванку. А сделать ее быстрой, если дело только в наборе команд, должны суметь, иначе грош им цена.

                                    Так дело же совершенно НЕ в наборе команд. Дело в том, как реализовано выполнение этих команд.
                                    Вот про это я и говорю.

                                    Поглощения компаний ради готовых компетенций — нормальный путь развития крупного бизнеса. В этом нет ничего удивительного. Посмотрите сколько компаний поглатила та же Intel — newsroom.intel.com/tag/acquisition/#gs.l7gq90
                                    Большая часть из них была про микроэлектронику. Получается там тоже одни маркетологи сидят?
                                    Apple даже светоча своего Джобса умудрилась просрать в свое время, опыт есть.

                                    Причем тут конкретный человек и компания?
                                    Конечно, но раз apple не стала пилить свой x86, а пошла на кардинальную смену набора команд и выбрала arm, значит архитектура решает, не так ли?

                                    Нет, не так. Apple была в соучеридителях ARM, много лет разрабатывала мобильные процессоры на этой архитектуре и теперь пришла в другой сегмент. Они же не вчера этим занялись. Как раз те самые компетенции. Всмысле они научились очень хорошо работать в рамках этой архитектуры. Вероятно даже лучше, чем AMD/Intel в рамках своей х86 и лучше, чем Qualcomm в рамках той же ARM. Если бы дело было только в архитектуре, Qualcomm, Samsung, Huawei и еще пара десятков компаний помельче давно бы пришели и нагнули парочку Intel/AMD.
                                    Известно, что лицензией на архитектуру Arm64, на которой построены все современные ARM процессоры (то есть возможность заглянуть вообще везде и во все детали и крутить ее как надо, а не купить готовые ядра в формате black box), есть как минимум у Apple, Samsung, Applied Micro, Broadcomm, AMD(да да), Cavium, Huawei, Nvidia.
                                    У Intel есть лицензия на Arm32, есть ли она на Arm64 неизвестно, по крайней мере в открытых источниках я не нашел, но у них в линейке есть процессор Intel Movidius, а он на Arm64. Возможно ядра лицензированы, подробностей о нем мало. Процессор этой линейки ставился в Intel Neural Compute Stick.
                                    Вообще, ARM как системе команд уже хрен знает сколько лет. Весь мобильный рынок на ней. Кое-кто экспериментирует с разработкой процессоров для более серьезных задач (Amazon, к примеру). Но это все совершенно не значит что интел или кто-то еще может пойти, взять эту систему команд и что-то внятное на ней изобразить. Архитектура достаточно удачная сама по себе, да. Но есть и другие, и даже открытые (OpenRISC). Что-то никому это особо не помогает делать какие-то особо быстрые и эффективные процессоры. Равно как и многолетняя разработка процессоров на ARM не помогает той же Qualcomm сделать такой-же быстрый и эффективный процессор, как M1.
                                      –2
                                      Так дело же совершенно НЕ в наборе команд. Дело в том, как реализовано выполнение этих команд.

                                      Дело в наборе команд. RISC при прочих равных всегда уделает CISC. Собственно и у Интела CISC уже давно аппаратно эмулируется поверх RISC‐ядра. Убираем слой эмуляции — получаем более холодные камни с большими возможностями для оптимиации компилятором.
                                        0
                                        Вопрос в том, какой оверхед на эту эмуляцию в процентах. Если 5%, то можно и забить на переписывание всего и вся.
                                          0
                                          Так оверхед не только в производительности, но и в энергопотреблении, поскольку этот слой работает на каждом такте процессора. И это сильно понижает максимальную планку быстродействия процессора. А у Apple тот же слой эмуляции сейчас перенесёт в comipile time по сути в виде Rosetta 2.
                                          0
                                          Дело в наборе команд. RISC при прочих равных всегда уделает CISC

                                          Но никаких прочих равных нет :)


                                          Как и нет никакой "эмуляции", которую можно взять и убрать.

                                            0
                                            Да, Intel уже отстал и по техпроцессу, что делает картину ещё более драматичной. В случае с x86, конечно, нельзя убрать, но есть ARM, где уже убрано.
                                              –1
                                              Intel по техпроцессу отстал только у маркетологов, на деле же их 14нм+++ по плотности не намного хуже 7нм от tsmc.
                                              youtu.be/1kQUXpZpLXI?t=782
                                                0

                                                А если в транзисторах на мм^2? :) А то у вас одни маркетологи других перебивают и всё.

                                                  –1
                                                  Intel 10 nm and TSMC 7nm processes both produce dies with approx 90 million transistors per sq millimetre

                                                  Для 14+++ поищите данные сами.
                                                    +1

                                                    На 50% меньше, как и положено. Даже в вашем ролике через 30 секунд этот график есть. А то, что 7нм TSMC и 10нм Интела более-менее эквивалентны — это широко известно.


                                                    Только разговор-то у нас о процессоре на 5нм и эти шаги являются существенным прогрессом, несмотря на всю сложность (комплексность) стоящих за ними изменений по разным параметрам, трудно сводимую к одной единственной цифре.


                                                    Поэтому сравнивать массовые процессоры Интел на 14+++ (да хоть двадцать плюсов) и 5нм Apple — трудно, между ними пропасть в технологиях, а не только в маркетинге.

                                            +2
                                            Убираем слой эмуляции — получаем более холодные камни с большими возможностями для оптимиации компилятором.

                                            Мсье теоретик? Где все эти "более холодные камни с большими возможностями по оптимизации" были, пока Интел по техпроцессам не отставал? :) x86 за время своего существования повыбивал самые разные "более эффективные" RISC-процессоры из разных ниш, так что объективная реальность несколько отличается от "сделаем без эмуляции — получим преимущество".

                                              –1
                                              Где все эти «более холодные камни с большими возможностями по оптимизации» были, пока Интел по техпроцессам не отставал?

                                              В телефонах и планшетах.

                                              x86 за время своего существования повыбивал самые разные «более эффективные» RISC-процессоры из разных ниш

                                              При этом с худшим техпроцессом чисто из‐за преимуществ x86 архитектуры, наверное. (нет)
                                                0
                                                В телефонах и планшетах.

                                                Вы ещё стиральные машины забыли. Ещё раз — рынок мобильных процессоров, в отличие от рынка настольных и особенно серверных, низкомаржинальный. Есть некоторая разница между "проиграли технологически" и "не захотели сильно вкладываться из-за низкой нормы прибыли".


                                                При этом с худшим техпроцессом чисто из‐за преимуществ x86 архитектуры, наверное.

                                                Разумеется, нет, потому что внешняя архитектура команд с определенного момента вообще перестала играть существенную роль в производительности. О чем я вам и говорю.

                                                  –2
                                                  А я говорю, что играет. Убираем CISC‐декодер, работающий на каждом такте → снижаем TDP → получаем возможность сделать более производительный процессор.
                                                    0

                                                    Не настолько. В CISC-декодер сложнее вносить изменения и он имеет больше пространства для нежелательных сайд-эффектов в силу сложности, но транзисторного бюджета и TDP он в товарных количествах не потребляет.


                                                    А вот то, что у него L1I 192kB и L1D 128kB и 12 MB shared L2 — вносит огромный вклад в производительность.

                                                      –1
                                                      Но тогда почему у Intel не получилось в мобильные процессоры даже тогда, когда у них ещё было преимущество по техпроцессу?

                                                      Тот же АЛУ может какое‐то время не использоваться, и статическая память кеша не потребляет, пока в ней не меняются данные, а вот декодер должен отработать на каждом такте.

                                                      Но даже если модифицировать схему: убираем CISC‐декодер → снижаем сложность и избавляемся от сайд‐эффектов → упрощаем внесение изменений → делаем более производительный процессор.

                                                      Всё равно получается, что и таким образом архитектура набора команд играет существенную роль в производительности.
                                                        0

                                                        У них, как бы, довольно долго вполне получалось.
                                                        Тот же Haswell/Broadwell были крайне удачны.
                                                        Да и нельзя забывать, что M1 пока не поступили в массово в реальную эксплуатацию, и еще не понятно, какие у них по факту узкие места. Тот же RPi 4 на десктопе — не очень торт, а потребляет наравне с Atom.


                                                        Убрать декодер нельзя, ибо совместимость. Можно только добавить еще регистров и завести отдельный набор команд — но это новшество не будет востебовано еще долго и пока оно не будет востребовано, его обслуживание будет стоит транзисторного бюджета и tdp (даже если его немного совсем) которые можно было бы расходовать иначе.
                                                        Например, на раширение L1.


                                                        Так что это очень сложный вопрос даже на взгляд непрофессионала.

                                                          –1
                                                          Убрать декодер нельзя, ибо совместимость

                                                          Это я про концептуальное «убрать», то есть перейти на RISC ISA, чтобы CISC‐декодер не требовался. Понятно, что в самих x86‐процессорах декодер не убрать, а вот перейти на ARM можно, который сразу RISC.
                                                            0

                                                            Ну, собственно, Apple это процесс и запустила. Посмотрим, взлетит или нет.

                                                          0
                                                          и статическая память кеша не потребляет, пока в ней не меняются данные

                                                          Внезапно, с подключением, токи утечки составляют сейчас чуть ли не основную долю потребления процессоров, а кеш, как самая большая часть — потребляет значительную часть их них :)

                                                            –1
                                                            И всё же они пока достаточно малы, по сравнению с затратами на переключение КМОП‐схем, иначе уже невозможно было бы уменьшать техпроцесс.
                                                              +1

                                                              Половина — это достаточно мало? :)
                                                              image


                                                              Хотя все такие картинки закончились лет десять назад, надо полагать тогда что-то произошло, что изменило тренды радикально? Слишком глубоко копать ради спора в комментариях.

                                                                –1
                                                                Это суммарные утечки по всей микросхеме. При этом лишь малая часть вентилей переключается за такт, но они набирают вторую половину. Это значит, что вентиль в момент переключения расходует значительно больше энергии, чем в простое, иначе КМОП‐схемотехника была бы не нужна.
                                                                  0

                                                                  Какой процент транзисторов в среднем переключается за такт? (я правда навскидку не нашёл)

                                                                    –1
                                                                    Без понятия какой процент, но понятно, что небольшой, иначе процессор бы перегрелся, либо смысла в КМОП бы не было, и можно было бы делать сверхбольшие n‐МОП схемы.

                                                                    И это было бы замечательно, потому что можно делать очень быстрые n‐МОП транзисторы на германии, но из‐за высокого потребления в статике сверхобольшие интегральные схемы n‐МОП увы невозможны.

                                                                    Декодер работает на каждом такте, если процессор что‐то делает. А вот АЛУ уже нужны не всегда. Регистры тоже простаивают, пока в них лежат промежуточные данные вычеслений. Кеш ещё реже работает.

                                                                    Поэтому и тротлинг работает — уменьшение частоты существенно снижает энергопотребление.
                                                            +1
                                                            А я говорю, что играет. Убираем CISC‐декодер, работающий на каждом такте → снижаем TDP

                                                            А вы не говорите, а маленький расчет сделайте — какую часть чипа занимает декодер и сколько потребляет энергии в сравнении с остальным. Вот тогда будет что-то похожее на предметный разговор.


                                                            Но тогда почему у Intel не получилось в мобильные процессоры

                                                            Я вам уже ответил, но вы проигнорировали — причины маркетинговые, а не технические. С технической точки зрения там всё прекрасно получалось.

                                                              –3
                                                              А вы не говорите, а маленький расчет сделайте — какую часть чипа занимает декодер и сколько потребляет энергии в сравнении с остальным. Вот тогда будет что-то похожее на предметный разговор.

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

                                                              Так что может влияет, а может и не влияет, но есть ещё одна гипотеза, по которой RISC позволяет сделать более производительные процессоры: habr.com/ru/post/528658/?reply_to=22333998#comment_22333328

                                                              Сколько вклад каждой из них посчитать, конечно, возможно, но у меня ресурсов для этого, к сожалению, недостаточно.
                                              +3
                                              Конечно, но раз apple не стала пилить свой x86, а пошла на кардинальную смену набора команд и выбрала arm, значит архитектура решает, не так ли?

                                              Apple делает ARM процессоры уже 17-лет, причем последние 10 лет на собственной микроархитектуре, так что ни на какую смену набора команд она не шла.
                                            +2
                                            Весь грешный инжиниринг делается купленными на стороне руками и головами.

                                            Простите, сотрудникам интел не платят, или что означает «купленными на стороне»?
                                              +2
                                              повернуть в сторону и разработать нечто похожее для них большой проблемой не будет
                                              Вы вообще представляете себе цикл разработки процессора с нуля? Вы понимаете, что от первых идей до релиза проходит 3-5 лет (в свете чего, кстати, хардварные косяки иногда исправляются через 1-2 поколения, а не сразу, ибо банально нельзя «повернуть в сторону» посреди процесса, не потеряв миллионы долларов, если не десятки-сотни оных), которые конкуренты на жопе не сидят, а тоже что-то делают? И это на знакомой архитектуре.

                                              Нельзя просто взять и пересадить инженеров-хардварщиков, которые собаку съели на интеловском х86, на АРМ, и сказать «сделайте конфетку». Это так не работает. Это другие компетенции. Из тракториста не получится сразу сделать гонщика Формулы-1.
                                            +2
                                            использовать его в своих x86-совместимых процессорах, потому как нет разницы, поверх чего будет работать транслятор команд.

                                            Кроме того, что Эпл им его никогда не отдаст для использования в их процессорах?

                                              –5
                                              А их никто и просить не будет. Потому что это ARM, который продается всем желающим, и эплу (слава всевышнему) не принадлежит. Или, думаете, у амд не хватит мозгов перевести готовое ядро на новейший техпроцесс и заказать его изготовление у той же TSMC?
                                                +8

                                                Посмотрите внимательнее что именно продаёт ARM и что именно позволило Эплу добиться производительности своих процессоров — это разные вещи, никаких готовых ядер как у Эпла в продаже нет.

                                                  +2
                                                  что именно продаёт ARM

                                                  Ядра продает.

                                                  что именно позволило Эплу добиться производительности своих процессоров

                                                  Самое главное, что удалось сделать эплу, — перекупить мощности TSMC по производству камней по лучшему техпроцессу. На 14 нм все было бы заметно грустнее.

                                                    +7

                                                    ARM продает много всего. В том числе лицензии на набор команд и на архитектуру.
                                                    Тае вот. Ни Apple ни Qualcomm не покупали ядра. Они купили лицензии на архитектуру и разработали свои ядра.

                                                      0
                                                      Они купили лицензии на архитектуру и разработали свои ядра.

                                                      Отлично. И как из этого следует, что условная AMD не может сделать то же самое, раз набор микрокоманд определяет такую большую разницу, как тут пишут?
                                                        +2

                                                        Если и пишут (но я не вижу где), то просто ошибаются, решает реализация микроархитектуры, а набор команд даёт в лучшем случае десяток процентов разницы (и то спорно).

                                                          –1
                                                          Набор команд влияет на возможности реализации микроархитектуры. В Intel уже давно пришли к выводу, что проще сделать RISC‐ядро, а поверх него сделать аппаратный эмулятор x86. Так вот использование RISC архитектуры набора команд позволяет выбросить этот эмулятор, который работает на каждом такте, попутно давая больше возможностей для оптимизации компилятором.
                                                            0
                                                            Вы не разграничиваете RISC-ядро и RISC-процессор, а зря. Использование RISC архитектуры набора команд процессора раздувает код программы до совершенно избыточных размеров, а этот код нужно загружать из оперативной памяти в процессор в рантайме. И здесь как раз очень желательно, что бы он был покороче. А уже на процессоре декодер превратит его в набор упрощенных команд, которые можно будет исполнить. При этом превращения эти декодер делает асинхронно, и на длиной дистанции на быстродействие не влияет. Не согласны — попробуйте написать frontend-bound код под x86 архитектуру.
                                                              0
                                                              Использование RISC архитектуры набора команд процессора раздувает код программы до совершенно избыточных размеров

                                                              Это больше похоже на VLIW… где-то попадалась сравнительная диаграмма плотности кода: она для ARM/x86_64/RV64 примерно одинакова, но RISC, как правило, имеет компактную версию.
                                                              image
                                                              Ссылка на статью
                                                              Если, конечно, не брать за образец MIPS или Freescale.

                                                                0
                                                                Во-первых, архитектуру x86-64 не назовешь удачно спроектированной — она вынуждена поддерживать legacy-режимы работы; если я не ошибаюсь, прелести одно-двух байтных команд по большей части недоступны уже даже в 32-битном режиме, про 64-битный нечего и говорить. Во-вторых — знаю, мнение непопулярное, но ИМХО сейчас в ARM от RISC осталось немного больше, чем просто название.
                                                                  0

                                                                  Собственно, непонятно как


                                                                  Использование RISC архитектуры набора команд процессора раздувает код программы до совершенно избыточных размеров

                                                                  Армы да, имея RISC-основу они взяли некоторые черты CISC.

                                                                    0
                                                                    Если использовать лишь тривиальные команды, очевидно количество команд, нужных для кодирование алгоритма, будет больше, чем при использовании нетривиальных. При этом мы также будем вынуждены кодировать все команды одинаковым количеством байт, вместо того, что бы использовать меньше байт на популярные команды и больше на экзотические. Поэтому я считаю, что условно идеально спроектированный CISC выиграет у условно идеально спроектированного RISC'а в размере программы.
                                                                      0

                                                                      На практике в RISC реализуются разные сокращенные подмножества, а для CISC такое невозможно, так как он уже состоит из подмножеств. Причем, оптимальность изначальной нарезки бит в инструкциях определяет сложность дальнейшего расширения. А самое главное, нельзя просто взять и выкинуть некоторое подмножество (на самом деле иногда можно, но чтобы выкинуть что-то бесполезное сначала надо ввести что-то бесполезное, как было с командами мониторинга в Pentium, емнип, эволюционировавшими в префиксы AMD64).
                                                                      Отчего CISC обречен пухнуть, а RISC — быть гибким и уменьшаться.

                                                                        0
                                                                        Не очень понял, о чем Вы. Что значит сокращенные подмножества? И почему выкинуть что-либо из CISC проблемнее чем из RISC?
                                                                          +5
                                                                          сокращенные подмножества

                                                                          Thumb, Thumb-2, RV64C, RV32C — вот это вот все.


                                                                          почему выкинуть что-либо из CISC проблемнее чем из RISC

                                                                          Ну вот смотрите: пилите вы свой идеальный передовой 16-битный процессор.


                                                                          • У вас есть некоторое количество базовых операций которые вам надо выполнять наиболее часть: загрузка, сложение/вычитание, сдвиг, условный переход, ротация возврат. Вы хотите сделать их как можно короче, одно байтовыми.
                                                                            Кроме этого, у вас еще может быть i8/i16 операнд и косвенная адресация — все это должно влезть в инструкцию. А еще надо адресовать регистровый файл. Допустим, он будет состоять из 32 байтовых GPR, которые объединяются попарно для 16-битных операций.
                                                                            CISC:
                                                                            Адресуя 32 регистра пятью битами, вы можете реализовать всего 2³=8 команд. Сложение, вычитание и сдвиг вправо и влево в знаковом и беззнаковом вариантах, ротация и условный переход — это уже 10!
                                                                            Ок, режем количество GPR до 8, освободим аж два бита для команд, потребуется всего три бита для кодирования регистра и можно сделать больше коротких однобайтовых инструкций. Теперь вы реализовали загрузки и сохранение и у вас есть даже задел на будущее в виде еще 16 (для простоты счета) свободных опкодов — круто!
                                                                            При этом короткие инструкции всегда неявно подразумевают работу с R0/R1R0.
                                                                            RISC:
                                                                            Ок, используем два байта для команды. Адресуем Op0 и Op1 младшими 10 бит для команд, требующих два операнда, для остальных используем Op1 как расширение опкода. Immed-операнд размещается следом за командой, расширеный до 16 бит.
                                                                            16-тибитные команды состоят из флага в 15 бите, 7 бит опкода (даже больше, чем у 8-мибитных) и двух нибблов для Op0 и Op1.

                                                                          Результат:
                                                                          Пока что системы команд обоих архитектур достаточно близки, и декодируются простой таблицей.
                                                                          Какие смешные эти RISC, они на любую инструкцию тратят на байт, а то и три, больше! А ведь его из памяти прочитать еще надо!


                                                                          • Добавляем косвенный переход и индексную адресацию.
                                                                            CISC
                                                                            Оукей, у нас в условном переходе используется 4 бита под номер флажка, двойных регистров у нас всего 4 — это всего 8 опкодов.
                                                                            Черт, нам бы еще пару индексных регистров, а то ворочать массивы будет очень тормозно! Добавим еще опкоды… для всех операций, только теперь индексные… Нам нехватает опкодов — вводим двухбайтовую кодировку, пусть все опкоды 0xCx будут префиксами!
                                                                            RISC
                                                                            Вводит два новых опкода в 16-тибитную часть.

                                                                          Результат
                                                                          CISC: ладно, я все равно местами быстрее.


                                                                          • Добавляется FPU…
                                                                            CISC
                                                                            Так, ребята помните, какая жопа у нас случилась в прошлый раз? Давайте теперь не будем маяться дурью и сразу сделаем команды для FPU — префиксными.
                                                                            RISC
                                                                            Добавляет еще несколько опкодов.

                                                                          Результат
                                                                          На 8-мибитной шине CISC показывает небольшое преимущество, на 16-бит они идут ноздря в ноздрю.


                                                                          • Итак, парни, у нас новинка: 32 бита! У нас много работы!
                                                                            CISC
                                                                            Окей. Парни, во-первых, давайте расширимся: стыдно в наше-то время со всего 8 GPR ходить, сделаем их 16.
                                                                            Кроме того, у нас уже большой, сложный декодер, давайте не изобретать велосипед, а просто его переиспользуем. Отпрефиксим новые инструкции, у нас еще этих префиксов полдюжины! За работу!
                                                                            RISC
                                                                            Невозмутимо расширяет командное слово до 32 бит. И все GPR. Теперь можно адресовать одновременно 3 GPR одной командой.
                                                                            Добавляет условное исполнение.

                                                                          Результаты:
                                                                          CISC страдает на ветвлениях и переходах, но не подает виду.


                                                                          • Гипервизор …
                                                                          • SIMD
                                                                          • Виртуализация…
                                                                          • Еще SIMD
                                                                          • 64-бит

                                                                          ну, вы же уже догадались, да?

                                                                            0
                                                                            Ну да, ну да, давайте спроектируем CISC в точности как x86-64, что бы унаследовать все его косяки. Ни в коем случае не утрамбовываем в один-два байта полезные инструкции, лучше запихнем туда операции над 8-16 битными операндами — вот будет счастье. Я понимаю, что в x86 чего только нет, но уж сферический процессор в вакууме можно же спроектировать хотя бы по современным меркам.
                                                                            Вообще по этому поводу у меня была мысль ввести механизм эпох. По сути — что бы в специальном регистре можно было задавать разные режимы декодирования команд, и программы могли использовать такую упаковку, которая им по душе. Правда, не уверен, что зависимость декодирования от данных в регистрах может быть реализована без больших накладных расходов. Да и вообще, даже на x86 упереться во фронтенд могут не только лишь все, так что скорее всего оно того просто не стоит.
                                                                              +3

                                                                              Это истории реальных RISC и CISC )


                                                                              Во-первых, все свойственное CISC многообразие опкодов, структуры инструкций и регистров, оно не от хорошей жизни, а от кроилова, приводящего к сиюминутной выгоде — и попадалову в будущем.


                                                                              Во-вторых, по мере развития CISC обратно эволюционирует в сторону RISC (увеличивает регистровый файл, лишает особенные регистры особенного статуса — что дополнительно приводит к росту сложности системы команд) а RISC приобретает некоторые черты CISC (у некоторых GPR появляются выделеные роли).


                                                                              В результате через лет 20÷30 CISC вынужден поддерживать огромным, трудноотлаживаемым и труднооптимизируемым декодером все исторические наслоения наборов команд развесистого префиксного дерева, с самого своего появления — одна и та же ассемблерная мнемоника может быть реализована несколькими ассемблерными кодами, а современные компьютеры до сих пор стартуют в 16-битном режиме; в то время как RISC имеет простые и быстрые табличные декодеры для каждого поддерживаемого набора команд и волен не тащить с собой все легаси.


                                                                              Идеальная система команд CISC, к которой стремится, например, x86 — это RISC, но отягощенный x86-legacy.

                                                                                0
                                                                                Это истории x86 и ARM (они кстати обе CISC, просто напоминаю).

                                                                                Опять же, Вы привязываетесь к конкретным архитектурам, а я оцениваю CISC и RISC концептуально. Это не CISC, а x86 тащит легаси из неоптимально спроектированных команд, CISC сам по себе к этому не обязывает. И это в x86 нет упрощенных наборов команд с разными декодерами — в самой концепции CISC я не вижу на это никаких ограничений.

                                                                                В общем, у Вас аргументация вида «когда-то придумали передавать данные по сети в виде цифрового сигнала, потом появился веб, и вот, спустя 30 лет, он как-то не очень подходит для современных задач — значит надо было передавать сигнал в аналоговом виде».
                                                                                  0
                                                                                  истории x86 и ARM … они кстати обе CISC

                                                                                  ARM (Advanced RISC Machine)


                                                                                  У них есть одно важное отличие: они выжили и распространились настолько, что стали конкурировать друг с другом.
                                                                                  И это отлично иллюстрирует разницу Complex и Reduced систем: они обе начиная с одного и того же ставят разные цели — и получают разные результаты.


                                                                                  Это не CISC, а x86 тащит легаси из неоптимально спроектированных команд

                                                                                  Они были крайне оптимально спроектированы и востребованы на момент разработки.
                                                                                  Сейчас те их фичи не востребованы, но продолжают висеть в legacy.


                                                                                  CISC сам по себе к этому не обязывает

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


                                                                                  • в 386, который ввел 32-бит, но использовался как быстрый 286
                                                                                  • в 486, который получил RISC-ядро (наверное, от идеальности CISC, да? нельзя быть слишком идеальным)
                                                                                  • в AMD64

                                                                                  Один раз — случайность, два раза — совпадение, три — уже система.
                                                                                  И этот выбор делали не комментаторы на хабре отнюдь


                                                                                  Просто вещи так устроены: либо вы делаете complex, но извлекаете прибыль сейчас, чтобы расплачиваться в будущем, либо KISS.


                                                                                  Если вы продумываете march&ISA на два шага вперед — вы делаете RISC, если вы извлекаете профит сейчас — у вас получится CISC. That's all.


                                                                                  В общем, у Вас аргументация вида

                                                                                  а вот это уже лежит на тонкой грани между wishful thinking и подменой…

                                                                                    0
                                                                                    ARM (Advanced RISC Machine)
                                                                                    Можно называть утку медведем, но она все равно будет выглядеть как утка и крякать как утка.
                                                                                    они выжили и распространились
                                                                                    Только вот x86 распространился на персоналках и серверах, что повлекло за собой проблему обратной совместимости, а ARM — на single-program девайсах и мобилках с JVM. Но проблемы с легаси на x86 разумеется исключительно из-за CISC.
                                                                                    получил RISC-ядро (наверное, от идеальности CISC, да? нельзя быть слишком идеальным)
                                                                                    Уже тоже не разграничиваете RISC-ядро и RISC-процессор? Я нигде не говорил, что нужно исполнять CISC-команды в том виде в каком они есть.
                                                                                    Если вы продумываете march&ISA на два шага вперед — вы делаете RISC, если вы извлекаете профит сейчас — у вас получится CISC
                                                                                    А если CISC с разными декодерами и возможностью переключаться от одного к другому?
                                                                                    а вот это уже лежит на тонкой грани между wishful thinking и подменой…
                                                                                    А натягивание ARM-совы на RISC-глобус — это другое.
                                                                                      0
                                                                                      Можно называть утку медведем, но она все равно будет выглядеть как утка и крякать как утка

                                                                                      Знаете


                                                                                      А натягивание ARM-совы на RISC-глобус — это другое

                                                                                      А AVR — тоже не RISC?
                                                                                      Вы заставляете этого цитировать самого себя:


                                                                                      по мере развития CISC обратно эволюционирует в сторону RISC (увеличивает регистровый файл, лишает особенные регистры особенного статуса — что дополнительно приводит к росту сложности системы команд) а RISC приобретает некоторые черты CISC (у некоторых GPR появляются выделеные роли)

                                                                                      Кроме того, вам всегда, независимо от микроархитектуры, необходимо иметь выделенный command counter, flags и stack pointer (если стек используется), data stack pointer (если есть стек данных, отдельный от стека адресов возврата); если используется сегментная модель памяти или изоляция приложений — то еще и регистры сегментов.
                                                                                      Кроме того, операции с неявным аккумулятором, который еще и может быть физически отдельным, для ускорения таких операций, подсоединенным прямо к ALU, но явно адресуемым как r0, добавляет, как это ни удивительно, производительности.
                                                                                      Разумеется, эти технические ньюансы накладывают свой отпечаток на ISA.


                                                                                      Поэтому какого-то там идеализированного полностью неспециалированного RISC в природе быть не может, так же как и идеально специализированного CISC.


                                                                                      Принципиальные отличия RISC — это большой регистровый файл равноправных регистров и простая регулярная система команд vs малое количество разнородных GPR и специальные регистры со специальными командами для обращения к ним.
                                                                                      И это различие — не догма, не божественное повеление, а условность, показавшаяся достаточно очевидной во время определения терминов.


                                                                                      А если CISC с разными декодерами и возможностью переключаться от одного к другому?

                                                                                      У вас уже — God Object, в виде декодера. Хотите добавить еще парочку?
                                                                                      Потому что первое C в CISC — это Complex. Сложно. Понимаете?
                                                                                      Complete оно станет тогда и только тогда, когда его перестанут производить.
                                                                                      Потому что тогда его перестанут дополнять.
                                                                                      Потому что полное не дополняется.


                                                                                      Что проще: реализовать пару альтернативных простых таблиц трансляции, или несколько God Objects?


                                                                                      Ладно еще реализовать, их же подерживать и развивать нужно


                                                                                      UPD:


                                                                                      Уже тоже не разграничиваете RISC-ядро и RISC-процессор?

                                                                                      А вы можете точно сказать, где лежит граница между RISC-ядром с CISC-декодером и RISC-процессором с CISC-сабсетом, если кроме CISC-декодера у них все остальное — одинаковое?

                                                                                        0
                                                                                        И это различие — не догма, не божественное повеление, а условность, показавшаяся достаточно очевидной во время определения терминов.
                                                                                        А, ну я оперирую терминами как они есть, а Вы подстраиваете их под ARM. Ладно, пусть будет так.
                                                                                        Что проще: реализовать пару альтернативных простых таблиц трансляции, или несколько God Objects?
                                                                                        Тут расчет на то, что от того, что God Object'ов несколько, они будут не такие уж и God.
                                                                                        А вы можете точно сказать, где лежит граница между RISC-ядром с CISC-декодером и RISC-процессором с CISC-сабсетом, если кроме CISC-декодера у них все остальное — одинаковое?
                                                                                        В моем понимании терминологии RISC-процессор с CISC-дополнениями — это уже CISC. То есть был такой строгий и тривиальный RISC, добавили сложные команды, добавили поддержку укороченных команд — все, стал CISC. Но, возможно, это действительно неправильное понимание. Хотя подстраивать термины под хотелки ARM — тоже выглядит странно.
                                                                                          0
                                                                                          Вы подстраиваете их под ARM. Ладно, пусть будет так.

                                                                                          Этот говорил об абстрактном RISC. RISCV тут подойдет ничуть не хуже, но у него история короче, и он не настолько известен.


                                                                                          Тут расчет на то, что от того, что God Object'ов несколько, они будут не такие уж и God.

                                                                                          А зачем вообще делать God Object?


                                                                                          То есть был такой строгий и тривиальный RISC, добавили сложные команды, добавили поддержку укороченных команд — все, стал CISC.

                                                                                          Эмм… то есть, даже наивная реализация гарвардской архитектуры и банальная оптимизация r0 — уже делает CISC?
                                                                                          Ну и ну и ну.
                                                                                          Это ж тогда Power и VLIW тогда — тоже CISC. И введение не то что FPU/SIMD, а даже стека и инструкции call/ret тоже делает CISC %)


                                                                                          Хотя подстраивать термины под хотелки ARM — тоже выглядит странно

                                                                                          Поэтому надо подогнать все под x86.
                                                                                          Разве наши слоны уже летают?

                                                                                            0
                                                                                            А зачем вообще делать God Object?
                                                                                            Я могу сказать для чего делать переменную длину команд — для оптимизации размера кода программы. А проблему того, что со временем одни команды становятся менее используемыми, а другие наоборот — решать введением нескольких типов декодеров, между которыми можно переключаться.
                                                                                            И введение не то что FPU/SIMD, а даже стека и инструкции call/ret тоже делает CISC %)
                                                                                            Э нет. FPU/SIMD/стек — имеют поддержку на уровне исполнительных блоков (ну или дополнительных кешей в случае со стеком). И команды эти нужны для того, что бы задействовать эти самые аппаратные возможности. А вот введение команд типа SSE-шных dpps и crc32, которые просто транслируются в набор элементарных математических инструкций — это уже CISC-элементы.
                                                                                            Поэтому надо подогнать все под x86.
                                                                                            Почему подгонять под x86? Он-то очевидно CISC по самое не хочу.
                                                                                              0
                                                                                              для оптимизации размера кода программы

                                                                                              Что очень актуально, пока вы работаете с 8-бит внешней шиной, менее актуально с 16 и совершенно неактуально с 32+.
                                                                                              И заодно приводит к проблемам при появлении кэша.
                                                                                              И требует сложного декодера.
                                                                                              Но позволяет урвать немного производительности, пока вы на 8/16-битной внешней шине.
                                                                                              И делается гораздо эффективнее RISC с сохранением всех их преимуществ.


                                                                                              (ну или дополнительных кешей в случае со стеком)

                                                                                              Нет, к кешам стэк не имеет никакого отношения.


                                                                                              А вот введение команд типа SSE-шных dpps и crc32

                                                                                              А что именно делает объединение часто используемых вместе команд в одну — CISC?
                                                                                              То так, если что, все математические операции эмулируются сложением, инверсией и сдвигом. Запретить RISC'ам MUL и FPU? Они же просто объединение длинной последовательности простых команд — CISC-элемент!


                                                                                              Почему подгонять под x86?

                                                                                              Вы последовательно подгоняете идеологическую (не доказательную) базу под "если в RISC есть хоть какие-то оптимизации, то это CISC". x86 просто характерный успешный представитель, ну и от RISC/CISC уже в глазах рябит. Можете читать как CISC.

                                                                                                0
                                                                                                Что очень актуально, пока вы работаете с 8-бит внешней шиной, менее актуально с 16 и совершенно неактуально с 32+.
                                                                                                Ну не знаю, мы точно не упремся в подгрузку кода с RAM на какой-нибудь простыне из арифметических инструкций на 0.1-0.2 такта каждая?
                                                                                                Нет, к кешам стэк не имеет никакого отношения.
                                                                                                Спутал с call/ret — в Intel'ах есть кеш точек возврата, который с ними взаимодействует.
                                                                                                То так, если что, все математические операции эмулируются сложением, инверсией и сдвигом. Запретить RISC'ам MUL и FPU?
                                                                                                Срочно запретить, если нет аппаратных умножителей чисел с плавающей точкой. Если есть — так же срочно разрешить.
                                                                                                Вы последовательно подгоняете идеологическую (не доказательную) базу под «если в RISC есть хоть какие-то оптимизации, то это CISC».
                                                                                                Тут смотря какие оптимизации. Если что-то вроде «ой а тут надо сделать набор инструкций уменьшенного размера» или «ну нарушим разок load/store принцип, и что с того» — то да, подгоняю.
                                                                                                  0
                                                                                                  Ну не знаю, мы точно не упремся в подгрузку кода с RAM на какой-нибудь простыне из арифметических инструкций на 0.1-0.2 такта каждая?

                                                                                                  Как насчет 15-байтных инструкций? Это почти 4 двойных слова, или почти 8 инструкций RV64C.


                                                                                                  Про подгрузку данных в какой-нибудь AVX можно вообще не вспоминать, там объемы будут еще больше.


                                                                                                  в Intel'ах есть кеш точек возврата, который с ними взаимодействует

                                                                                                  Это старая оптимизация гарвардских RISC — локальный буфер на несколько точек возврата. Подразумевается, что несколько возвратов подряд невозможны, поэтому небольшой буфер может хранить несколько последних точек, и отлаженно выпихивать их в стек/подтягивать обратно.


                                                                                                  Срочно запретить, если нет аппаратных умножителей чисел с плавающей точкой. Если есть — так же срочно разрешить.

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


                                                                                                  Если что-то вроде «ой а тут надо сделать набор инструкций уменьшенного размера»

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


                                                                                                  UPD:
                                                                                                  Кстати, а чем альтернативный набор команд отличается от команд FPU/SIMD, которые вы так любезно разрешили? В железе он реализован.

                                                                                            0
                                                                                            В моем понимании терминологии RISC-процессор

                                                                                            Англовики
                                                                                            Рувики

                                                                                              0
                                                                                              Давайте по пунктам:
                                                                                              Фиксированная длина машинных инструкций (например, 32 бита) и простой формат команды.
                                                                                              Ну то есть с момента появления Thumb ARM RISC'ом не является.
                                                                                              Специализированные команды для операций с памятью — чтения или записи. Операции вида Read-Modify-Write отсутствуют.
                                                                                              В целом ARM соблюдает это правило, но он ведь еще и atomic операции поддерживает, так?
                                                                                              Большое количество регистров общего назначения (32 и более)
                                                                                              Тут да, хотя по этому правилу многие архитектуры подойдут.
                                                                                              По четвертому ничего сказать не могу, пятое не очень понял — оно предполагает, что, к примеру, TLB должна быть реализована полностью софтварно? Вот это правило уже кандидат на объявление устаревшим.

                                                                                              Вот так, в моем понимании, и получается, что ARM — не RISC. Что я упускаю?
                                                                                                0
                                                                                                Ну то есть с момента появления Thumb ARM RISC'ом не является.

                                                                                                С момента появления RV32C и RV64C — RISCV перестал быть RISC?


                                                                                                Сокращенные наборы команд исполняются в отдельном режиме процессора, работающем с одной, отличной от дефолтной, таблицей трансляции команд. Команды из дефолтной таблицы вызывают UB.
                                                                                                В рамках текущего набора команд все струтура командного слова продолжает оставаться регулярной.
                                                                                                Разницы между поведением процессора даже меньше, чем между привилегированным и непривилегированным режимами. Просто другой Instruction Set.
                                                                                                Если про распихивание immed в случайные дырки, то это в Thumb артефакт, решающийся банальным ремультиплексированием, возможно хардварным.


                                                                                                но он ведь еще и atomic операции поддерживает, так?

                                                                                                Некоторые вещи обязаны быть atomic.
                                                                                                Скажем, рестартовать загрузку/выгрузку может быть непросто, если речь идет о прерывании, а не об исключении обработки виртуальной памяти.


                                                                                                По четвертому ничего сказать не могу
                                                                                                пятое не очень понял

                                                                                                Это пример для DEC Alpha.
                                                                                                Там еще везде используются "характерно", "типично", и т.д.
                                                                                                То есть, ни один из этих признаков не является обязательным.


                                                                                                TLB должна быть реализована полностью софтварно?

                                                                                                Это ж аппаратный буфер. Вот обработчик исключений может быть реализован не закрытым микрокодом, а открытым кодом, использующим дефолтный набор команд.


                                                                                                Англовики немного более точна:


                                                                                                • Uniform instruction format, using single word with the opcode in the same bit positions for simpler decoding
                                                                                                  Регулярный формат машинного слова
                                                                                                • All general purpose registers can be used equally as source/destination in all instructions, simplifying compiler design (floating point registers are often kept separate)
                                                                                                  Все GPR доступны любой команде.
                                                                                                • Simple addressing modes with complex addressing performed by instruction sequences
                                                                                                  Тут не совсем понятно, насколько простые режимы имеются ввиду. Возможно base + disp, без множителя и без двойной косвенной адресации.
                                                                                                  В любом случае, это проблема компилятора, программист даже на C не будет видеть тонкостей адресации.
                                                                                                • Few data types in hardware (no byte string or BCD, for example)
                                                                                                  AAA, AAD, AAM, REPSB и прочий зверинец.

                                                                                                Как-то так.

                                                                                                  +3

                                                                                                  Блин, да чего вы спорите-то? Разделение RISC/CISC во многом политическое, оно придумано авторами RISC, чтобы позиционировать себя отдельно (и выше), дескать, вот у нас какая продуманная архитектура, идеализированная, из первых принципов и поэтому лучше вашей переусложнённой традиционной.


                                                                                                  Но это разделение было актуально 35 лет назад и практически сразу же начало трещать по швам. С тех пор и от строго одинакового размера инструкций отказались (тот самый Thumb) и от "радикально" упрощённого набора инструкций (сколько там сотен мнемоник? Меньше 500 или больше? Как насчёт инструкций по выполнению раунда AES или SHA? So much reducing) и прямой доступ к памяти давно забыт, а команды внезапно транслируются в микрооперации, с другой стороны CISC обзавёлся упрощёнными ядрами под капотом, реализующими часть из принципов RISC.


                                                                                                  В дополнение, сабжевый процессор Apple вообще оснащён и целым спектром собственных инструкций (для ускорения МЛ например) и GPU и DSP и нейросетевыми ускорителями и без них теряет значительную часть своей привлекательности. Так близко к дизайн-философии рисков :)


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

                                                                                                    0

                                                                                                    Ну так, об этом каджит сказал уже пару раз, только другими словами )


                                                                                                    UPD:
                                                                                                    Не совсем.


                                                                                                    С тех пор и от строго одинакового размера инструкций отказались

                                                                                                    В спецификации Thumb — одинаковые регулярные инструкции. Ткните пальцем, где там по вашему что-то не так.


                                                                                                    от "радикально" упрощённого набора инструкций

                                                                                                    Это OISC, вырожденный случай.


                                                                                                    So much reducing)

                                                                                                    А теперь читаем определение в вики. Ссылки были выше.


                                                                                                    В остальном да, вы примерно правы.

                                                                    0
                                                                    Использование RISC архитектуры набора команд процессора раздувает код программы до совершенно избыточных размеров

                                                                    Не до совершенно избыточных, а лишь незначительно, и не раздувает, а сокращает.
                                                                      0

                                                                      Ну, там все сложно, но скорее да, чем нет.

                                                          +4

                                                          ARM ядра продаёт, но почему-то эти ядра не побеждают процессоры Интел направо и налево, а используются во всяких "энергоэффективных" (читай медленных) устройствах.


                                                          5нм АМД конечно купит в следующем году, но производить там будет совсем не арм-процессоры. Потому что в быстрых процессорах Apple от ARM'a только система команд (да и то с собственными расширениями), а всё остальное придумано на месте и повторить это — тоже самое, что самому процессор с нуля разработать, готовые ядра арма там не конкурируют или расскажите почему другие 5нм процессоры не такие быстрые :)

                                                            0
                                                            тоже самое, что самому процессор с нуля разработать

                                                            А зачем тогда ARM вообще?

                                                            почему другие 5нм процессоры не такие быстрые

                                                            Это какие?
                                                              +5
                                                              А зачем тогда ARM вообще?

                                                              У арма можно купить:


                                                              • право на использование их системы команд (зачем? Если вдруг хочется иметь возможность запускать программы для арма, коих огромное количество и не хочется кроме процессора ещё и писать свои компиляторы и всех уговаривать на это перейти).
                                                              • куски ядер — готовые блоки с разными функциями
                                                              • полные дизайны ядер и готовых процессоров — бери и выпускай
                                                              • услуги по разработке и интеграции всего этого и помощи с выпуском и т.д.

                                                              Это какие?

                                                              Snapdragon 875, Exynos 1080

                                                            +12
                                                            У Apple лицензия на ARM почти безграничная, они там все переделать могут. Не забывайте что это apple соучредила с acorn на двоих саму ARM
                                                  +3
                                                  Там показаны мобильные, в том числе очень близкие к десктопным, так ещё и XEON в случае iMac, которые уже в буквальном смысле десктопные. А на многих сайтах уже были сравнения, в том числе с Ryzen 5600X, который потребляет 65W, а мощности даёт в лучшем случае на 40% больше.
                                                    0
                                                    с каких єто пор XEON стал десктопным?
                                                      +1
                                                      Ну, это серверный X86, однако, их часто даже под игры собирают. В рамках контекста это именно десктопный чип.
                                                        0
                                                        их часто даже под игры собирают

                                                        Разве что сильно Б/У, когда денег нет.
                                                          +1
                                                          Нет, я в своё время «с нуля» под игры собирал систему на новом e1230 v2 т.к. он был чуть ли не в 2 раза дешевле i7 3770 при аналогичных характеристиках
                                                            0
                                                            И в каком году это было?
                                                              0
                                                              В 2015м дело было.
                                                              Знаю что с тех пор intel «закрутили гайки» и запретили тем же E3-12** v5 работать на desktop чипсетах, однако выпускают и «игровые» материнки под эти процессоры, так что собирают и современные системы на новых Xeon.
                                                                0
                                                                Тогда уже 3770 не был актуальным процессором.
                                                                «игровые» материнки под эти процессоры

                                                                Это не имеет особого смысла. В играх себя лучше показывают процы на 6 ядер, для игр NUMA это смертный приговор.
                                                                  0
                                                                  Это я всё к тому, что собирают же, на новом железе, я в том числе, насколько это целесообразно — другой вопрос :)

                                                                  для игр NUMA это смертный приговор.

                                                                  А речь про «двуголовые» материнки и не идет, обычные, с одним сокетом, так что как минимум чисто экономически определенный смысл есть.

                                                                    +1
                                                                    e5-2620v3 — 6ядер/12 потоков, 3.2ггц стоит сейчас 15-20$, новая материнка к нему 65-80$. Единственный минус это что память ddr4 работает на 1866, зато можно брать любые самые дешевые плашки по 22-25$ за 8гб и ставить в 4х канал для компенсации низкой частоты. Производительности этой системы за глаза для 1080р гейминга на видюхах уровня 1070.
                                                          +2
                                                          Он ещё и мобильный есть.
                                                            +2
                                                            с каких єто пор XEON стал десктопным?
                                                            Эм, рабочие станции (считай рабочий декстоп) на ксеонах вообще-то всегда вроде нормой были.
                                                              +2
                                                              С тех пор как китайцы наладили массовую продажу бу зеонов и производство дешевых материнок к ним. Сейчас в плане цена/производительность у платформы 2011v3 просто нет конкурентов.

                                                              Но речь естественно была о архитектуре.
                                                                0
                                                                Как с качеством у этих материнок?
                                                                  0
                                                                  У «топовых» хуананов на уровне основных брендовых среднего ценового диапазона, ну а модели попроще на уровне нижнего ценового. Во времена x79(lga2011) сначала было довольно много болячек, но их быстро правили и у текущих x99(lga2011-3) почти все хорошо. Из неприятных багов пожалуй остался только баг с датчиком температуры на некоторых платах. Но в любом случае эти комплекты того стоят, например 12ядерный/24поточный проц e5-2678v3 покупается за 80-90$, материнка тоже в районе 100. Может работать и с копеечной серверной ддр3 и с обычной ддр4 в четырехканале. Также есть двухпроцессорные мамки — в общем для рабочих задач можно собрать монстра за дешево.

                                                                  Если тема интересует то могу посоветовать изучить тему на overclockers и пару ютуб каналов 1, 2

                                                                    0
                                                                    Спасибо!
                                                                    0
                                                                    Топовые камни только не ставьте. =)
                                                                      0

                                                                      почему?

                                                                        0
                                                                        Подсистема питания там весьма паршивая и из паршивых (есть у меня весьма серьёзные подозрения, что даже поддельные там мосфеты стоят) комплектующих стоит. Может в 20 году что-то они и поменяли, но раньше там питание было на грани.
                                                                          0
                                                                          В общем и целом эти материнские платы собираются из говна и палок, никакой реальной гарантии на них нет и быть не может, а значит сильно заморачиваться с надежностью китайцам не интересно. Там, как правило, нет никакого намеренного обмана, но и QA хромает на обе ноги.
                                                                          С другой стороны, если уделить достаточно времени на исследование рынка этих материнских плат, то можно найти что-то подходящее и для топовых камней. Лично у меня 2680v2 на 10 ядер и 20 потоков уже два с половиной года работает на китайской материнской плате без каких-либо нареканий. Но это, конечно, не гарантирует, что у вас через год работы из области VRM не повалит дым. Впрочем, никто не застрахован, косяки вполне бывают и у классических десктопных производителей.

                                                                          Нужно понимать, что любая затея с китайскими xeon-ами — это про соотношение цена\производительность, не цена\качество. Чем-то в итоге придется жертвовать.
                                                                          Лично я планирую собирать переносную машинку для хранения и конвертации видео, и вполне буду снова рассматривать китайские железки для этих целей.
                                                                            0

                                                                            Я хочу собрать отцу рабочию станцию для фотошопа/нас/медиа сервак. Плюс удаленный докер сервер для себя. Никакого разгона, может даже наоборот понижения вольтажа. Сможет ли оно потянуть e5 2678 v3? Для меня 24 потока — главное достоинство в этой цене.

                                                                              0
                                                                              e5 2678 v3
                                                                              Надеюсь, что мой ответ не посчитают рекламой сайта. Посмотрите вот здесь информацию. Там по материнским платам есть рекомендации, плюс особенности работы.
                                                                              От себя могу добавить, что фотошоп любит быстрые ядра, а не большое их количество, поэтому в зависимости от искушенности пользователя могут быть проблемы. И играться с вольтажом вроде как нельзя на китайских платах, ни в какую сторону.
                                                                                +1
                                                                                играться с вольтажом вроде как нельзя

                                                                                Можно, но только не напрямую из биоса, а через его модификацию(весьма простую). Я например юзаю андервольтинг на -70mV на 2620v3, причем вместе с анлоком турбобуста, что позволяет процу постоянно под нагрузкой держать 3.2ггц по всем ядрам.
                                                                                0

                                                                                Стоит ли оно того, если какой-нибудь ryzen 7 2700 при 16 потоках будет быстрее вашего процессора, при этом доступен локально и с гарантией? Да, оно слегка дороже будет — но при этом экономичнее и тише в повседневной жизни.

                                                                                  0
                                                                                  Разница в цене минимум в 2 раза. Производительность на ядро у райзена выше, а в мультипотоке зависит от задач, tdp близкий и обоим процам с головой бесшумного и дешевого snowman mt6
                                                                              0
                                                                              Для топовых камней просто нужно брать не самые дешевые материнки, иначе будет перегреваться зона VRM и придется либо колхозить доп. обдув, либо довольствоваться стоковой производительностью проца и повышенным шансом смерти материнки. Посмотрите ютуб каналы с моего коммента выше, там есть тесты практически всех комбинацый процов-мамок.
                                                                    0
                                                                    del
                                                                      +2
                                                                      А вы относитесь к меньшинству, которое успешно утилизирует >90% ресурсов десктопного x86, или просто любите в душевой терафлопсами меряться?
                                                                        0
                                                                        Намекаете на то, что большинству пользователей десктоп не нужен? Тут я согласен, но речь вроде бы о том, насколько процессор от Apple подобрался близко к продукции Intel и AMD.
                                                                        И да, для моих задач высокая производительность весьма желательна.
                                                                          +1
                                                                          Судя по текущим данным, в энергоэффективном сегменте m1 обошел и intel и amd, а в десктопном сегменте (imac, imac pro, mac pro) он еще не представлен.
                                                                          По задачам, требующим высокой производительности — лично мне выгоднее переносить их в облака. Это снижает как саму стоимость вычислений так и временные затраты на администрирование.
                                                                            +3
                                                                            Mac Mini вы в из десктопов выписали?
                                                                            0
                                                                            Тут я согласен, но речь вроде бы о том, насколько процессор от Apple подобрался близко к продукции Intel и AMD.

                                                                            Я бы сказал что их «слабенький» начальный процессор на 15W очень так не слабо подобрался к продукции двух гигантов. И это начальный процессор, а обещали еще полноценный процессор, для тех, кому не только видео в браузере смотреть с ультрабука. Если они запихнут туда 12-16 своих мощных ядер вместо 4 в текущем чипе, и сделают нормальное количество оперативки, вот это будет мощно.
                                                                          0
                                                                          Невозможно сделать процессор одновременно и с высокой производительностью, и с малым энергопотреблением. Физику не обманешь.
                                                                          А теперь факты: процессор сравнительно легко наращивается вширь, до тех пор пока он не начинает превосходить свой тепловой бюджет. Процессор также можно разгонять, хоть это и менее эффективно (дает нелинейный прирост). Т.е. имея быстрое и энергоэффективное ядро мы точно можем сделать быстрый процессор с множеством таких ядер. Собственно, в M1 как раз то самое быстрое энергоэффективное ядро.
                                                                            +1
                                                                            Это хорошо, только транзисторный бюджет текущего 4бига+4смала уже сравним с 8/16 + крутой видик в комплекте. Это означает, что нарастить ядра то можно, но чип получится ещё крупнее и дороже, плюс проблемы оптимизации доступа к кешу и т.д., и т.п.
                                                                            Вон, интелы уже тоже согласились, что чиплеты сейчас самое оптимальное и готовят свои серверные чиплеты.
                                                                              +3
                                                                              Текущий транзисторный бюджет тратится на: 4 big/4 little ядра, 8 GPU ядер, neural engine, и то, что раньше выносилось в T1 (secure enclave, encryption, вот это вот всё). Little ядра имеют смысл только в носимой электронике (кажется, их добавили в mac mini просто чтобы не делать два разных чипа), дублировать T1 смысла нет, хз насчет NE. С GPU не понятно — либо apple будут прикручивать AMD-шные дискретки (тогда транзисторный бюджет они не тратят; плюс бонусом eGPU), либо будут масштабировать свою видюху. Видюхи, кстати, тоже масштабируются линейно, пока не упираются в тот же TDP или шину/кеш. Думаю, что если apple выберут вариант масштабировать свою видюху, им рано или поздно придется выносить её в отдельную микросхему, даже если внутри того же SoC. Думаю, до чиплетов дойдет уже ближе к mac pro-ншым процам, которые вероятно будут представлены последними.
                                                                                0
                                                                                Little ядра имеют смысл только в носимой электронике (кажется, их добавили в mac mini просто чтобы не делать два разных чипа),
                                                                                Скорее для простоя в минимальном состоянии, когда смысла нет крутить биги.
                                                                                Текущий транзисторный бюджет тратится на:
                                                                                или на 8 больших ядер с потоками, контроллер памяти и 45% на видик в коробке, из основных.
                                                                                Ничего не замечаете? Да, энергопотребление скорей всего там выше, но и производительность видика — не сравнима.
                                                                                И это уже в продаже и дешевле есть, жаль не в качестве ПК — я б взял.
                                                                                Хотя сливы про «Windows Mode» для коробки ходили, это был бы сильный ответный ход от МС)
                                                                                Видюхи, кстати, тоже масштабируются линейно, пока не упираются в тот же TDP или шину/кеш.
                                                                                Так у амд основная проблема уже давно в оперативке для видика, в коробке они скоростную и рядом распаяли не просто так. Если б можно было легко продать производителям распайку дорогих чипов у проца с заметным удорожанием всех чипов — они б так и сделали. Но ведь не купят. Хотя может Эпл изменит тренд, ведь скорость до памяти сейчас одно из узких мест и за счёт этого считай прирост нехилый можно получить.
                                                                                  0
                                                                                  Скорее для простоя в минимальном состоянии, когда смысла нет крутить биги.
                                                                                  ну это mac mini же, то, что в нём крутятся big ядра потребляя на целых пару ватт больше, это вообще не проблема для стационарного компьютера.
                                                                                  И это (xbox) уже в продаже и дешевле есть, жаль не в качестве ПК — я б взял.
                                                                                  еще раз — консоли продаются в минус и окупаются за счет подписок и наценок, суммарная стоимость для среднего пользователя получается порядка $1000, если не больше. По крайней мере сравнимый ПК вы даже за $1000 не соберете
                                                                                  Ничего не замечаете? Да, энергопотребление скорей всего там выше, но и производительность видика — не сравнима.
                                                                                  в M1 графика 2.6 tflops с 8 ядрами, в коробке — 12 tflops на 52 ядрах.
                                                                                  Если б можно было легко продать производителям распайку дорогих чипов у проца с заметным удорожанием всех чипов — они б так и сделали
                                                                                  Кстати вот здесь видно как они интересно спаковали чип. Кажется, проблем расширения памяти быть не должно.
                                                                                    0
                                                                                    в M1 графика 2.6 tflops с 8 ядрами, в коробке — 12 tflops на 52 ядрах.
                                                                                    ещё раз, 15,5 млрд против 16 млрд.
                                                                                    Увеличьте количество бигядер в 2 раза и нарастите видик до уровня амд.
                                                                                    выше 20 млрд только ради видика, выше 25 — если ещё 4 бигядра?
                                                                                    Почти в два раза кристалл больше размером, больше брака, больше цены.
                                                                                    процессор сравнительно легко наращивается вширь? Ну да, только вот у интелов не получается, у амд за несколько заходов получилось. Там же мелочь, всего лишь примитивная шина общения всего этого между собой...
                                                                                    и окупаются за счет подписок и наценок,
                                                                                    То есть под все эпловские девайсы подписки будут стоить 0 и наценки в эплсторе будут 0%? )))
                                                                                    Кстати вот здесь видно как они интересно спаковали чип. Кажется, проблем расширения памяти быть не должно.
                                                                                    тут проблема не в расширении, а что производители типа асуса или hp могли не пойти на покупку таких вариантов. сейчас могут пойти повторяя эпл.
                                                                                    в этом плане эпл молодцы
                                                                                      0
                                                                                      Увеличьте количество бигядер в 2 раза и нарастите видик до уровня амд.
                                                                                      а еще уберите little ядра за ненадобностью в стационарных решениях
                                                                                      Почти в два раза кристалл больше размером, больше брака, больше цены.
                                                                                      я же не утверждаю что им не придется перенимать чиплетный подход
                                                                                      процессор сравнительно легко наращивается вширь? Ну да, только вот у интелов не получается
                                                                                      кажется, intel сейчас уперся в TDP а не в число ядер.
                                                                                      у амд за несколько заходов получилось
                                                                                      ну да, в 2017, в сотрудничестве с той же foundry что и apple…
                                                                                        +1
                                                                                        а еще уберите little ядра за ненадобностью в стационарных решениях

                                                                                        Intel с вами не согласен, потому свои будущие десктопные процы пилит с little ядрами.
                                                                                          +1
                                                                                          а еще уберите little ядра за ненадобностью в стационарных решениях
                                                                                          То есть Эпл старались, старались, а вы лучше их понимаете как надо делать?
                                                                                          кажется, intel сейчас уперся в TDP а не в число ядер.
                                                                                          да нет, именно что в ядра на своих 10нм процах. 4/8 могут, а выше — нет. Они могли бы как zen1 склеить декстопы и выкатить, нооооо
                                                                                          ну да, в 2017, в сотрудничестве с той же foundry что и apple…
                                                                                          фандури печёт чипы. а вот разработку оных делают сами. теперь поглядите отличия чипов зен, зен+, зен2 и зен3.

                                                                                          PS. суммарная стоимость консоли Xbox series X — 1400 баксов с подпиской на 5 лет, как вы посчитали.
                                                                                          Макмини с 16 гигами и 1 тб без подписки с играми и мощного видика для игр — 1300$
                                                                                          У вас отлично получается наглядно показывать почему макмини это прорыв )))
                                                                                            0
                                                                                            То есть Эпл старались, старались, а вы лучше их понимаете как надо делать?
                                                                                            little ядра нужны для экономии энергии, которая в стационарных решениях не является камнем преткновения.
                                                                                            да нет, именно что в ядра на своих 10нм процах. 4/8 могут, а выше — нет
                                                                                            даже если они уперлись в ядра, TDP до 265 Вт для десктопного проца это тоже многовато, не находите?
                                                                                            У вас отлично получается наглядно показывать почему макмини это прорыв )))
                                                                                            а я и не говорил что mini — прорыв, лишь M1 как таковой, да и то больше в мобильном сегменте. Более того, это был бы скорее плохой продукт, если бы мобильный чип apple не оказался настолько хорошим (в некоторых типовых задачах), чтобы комплектовать им стационарник. А утверждаю я лишь то, что обладая технологией производства M1 apple вполне способны представить достойные решения и в других сегментах.

                                                                                            А дальше вы цепляетесь абсолютно за всё за что можете. И mini с консолью по цене сравнили, и air с игровым ноутом, и до числа транзисторов докопались, и до нейронки, и терафлопсов в GPU мало, и тип памяти не тот — абсолютно до всего. Только конечно же опустили пару совершенно незначительных нюансов — десятикратная разница в энергопотреблении, фиктивность цены, разный сегмент у продуктов… но это же не важно, верно? Как там быстро коробка видосы монтирует да код компилит?
                                                                                              +1
                                                                                              little ядра нужны для экономии энергии, которая в стационарных решениях не является камнем преткновения.
                                                                                              Ещё раз, вы лучше эпла значете зачем они это делают?
                                                                                              даже если они уперлись в ядра, TDP до 265 Вт для десктопного проца это тоже многовато, не находите?
                                                                                              на 14+++.
                                                                                              А вам про 10 нм, которые у них мобильные. И i7 там — максимум 4/8, а не 8/16, как у конкурентов. Но тдп и скорость отличные.
                                                                                              Только конечно же опустили пару совершенно незначительных нюансов — десятикратная разница в энергопотреблении, фиктивность цены, разный сегмент у продуктов… но это же не важно, верно?
                                                                                              О, вы ж сверху утверждали, что в декстопах это не важно?
                                                                                              Как там быстро коробка видосы монтирует да код компилит?
                                                                                              Я уже вам отвечал, что если будет windows mode (да, даже если это будет через подписку на игры за 15$) — то коробка станет вообще отличным решением и заодно узнаем, как быстро она код компилит и видосы монтирует
                                                                                                0
                                                                                                Ещё раз, вы лучше эпла значете зачем они это делают?
                                                                                                а что, надо быть гением чтобы понять что они просто запихали в мак мини такой же процессор как и в ноутбуки? Я думал это можно предположить из названия проца.
                                                                                                Но тдп и скорость отличные.
                                                                                                не такие уж и отличные, но это и не принципиально. Мы, кажется, по второму кругу идем. Если бы у intel не было проблем с yield'ом на 10nm, мы бы эти 10nm во всей линейке процов увидели еще несколько лет назад.
                                                                                                О, вы ж сверху утверждали, что в декстопах это не важно?
                                                                                                так вас это и применимо к ноутбуку не смутило. Там, правда, «всего» в 5 раз.
                                                                                                Я уже вам отвечал, что если будет windows mode (да, даже если это будет через подписку на игры за 15$) — то коробка станет вообще отличным решением и заодно узнаем, как быстро она код компилит и видосы монтирует
                                                                                                чтобы ввести windows mode майкам придется поменять модель распространения xbox.
                                                                                                  0
                                                                                                  а что, надо быть гением чтобы понять что они просто запихали в мак мини такой же процессор как и в ноутбуки? Я думал это можно предположить из названия проца.

                                                                                                  Что здесь удивительного? Производить несколько разных процессоров дорого.
                                                                                                    0
                                                                                                    а что, надо быть гением чтобы понять что они просто запихали в мак мини такой же процессор как и в ноутбуки?
                                                                                                    Это вы про то, что максимальную энергоэффективность форсят? Например, если для показа видео хватит и 4 малых ядер, на кой чёрт задействовать большие?
                                                                                                    не такие уж и отличные.
                                                                                                    Эм, их 10 нм процы вполне себе на ядро уделывали же свои декстопные, о чем вы? с ноутным тдп.
                                                                                                    так вас это и применимо к ноутбуку не смутило. Там, правда, «всего» в 5 раз.
                                                                                                    правда не в пять, а в два когда коробка при этом свой видик на полную гоняет, а макмини не могёт в подобную видео производительность. Ну то есть 160-165 у xbox series x при игре в Dirt 5 в режиме 120 Гц при 4K. макмини в 33 уложится или у вас опять половина ядер в голове отвалилась?
                                                                                                    Или вы про то, что в процессорах тдп проца в ноуте в 20 ватт в 5 раз ниже тдп 25 или даже 45 ватт?
                                                                                                      0
                                                                                                      Это вы про то, что максимальную энергоэффективность форсят? Например, если для показа видео хватит и 4 малых ядер, на кой чёрт задействовать большие?
                                                                                                      на кой черт вообще делать мелкие ядра в стационарниках? Там не стоит задача вычислить с минимальным энергопотреблением, там надо лишь уложиться в лимит.
                                                                                                      Эм, их 10 нм процы вполне себе на ядро уделывали же свои декстопные, о чем вы? с ноутным тдп.
                                                                                                      1185G7 разгоняется примерно до 50 Вт.
                                                                                                      правда не в пять
                                                                                                      … а в 10, у M1 TDP 10-18W, а у коробки 200 Вт.
                                                                                                      в режиме 120 Гц при 4K
                                                                                                      это маркетинговое название режима «нет ограничения в 60 FPS», на самом деле даже 60 не гарантируется. Спору нет, это всё еще круто, в сравнении с mini, я и не говорю и не говорил что mini так может. Я утверждал лишь что apple могли бы сделать сопоставимый продукт, а сравнивать коробку с air'ом, а потом с mini начали вы.
                                                                                                      Или вы про то, что в процессорах тдп проца в ноуте в 20 ватт в 5 раз ниже тдп 25 или даже 45 ватт?
                                                                                                      18 Вт против 45 в 4800H плюс 50 в 1650. Заметьте: я предлагал сравнивать с ноутами на мобильном 4800U, на 4800H с dgpu переключились вы.

                                                                                                      Как вы там сказали? «Ворота едут»?
                                                                                                        0
                                                                                                        … а в 10, у M1 TDP 10-18W, а у коробки 200 Вт.
                                                                                                        То есть ещё раз, ваш аргумент: у чипа м1 тдп 10 ватт, а у всего иксбокса 165 в реальном тесте, значит в 10 раз?
                                                                                                        Браво. это уже днище аргументов
                                                                                                        это маркетинговое название режима «нет ограничения в 60 FPS», на самом деле даже 60 не гарантируется.
                                                                                                        Люди играли в игру и получили потребление. Тут вы начинаете рассказывать, что они играют не правильно и вообще не могли таких цифр получить?
                                                                                                        Я утверждал лишь что apple могли бы сделать сопоставимый продукт
                                                                                                        Не могли. При цене в 3 коробки продать получится только вам. Правда за цену в 3 коробки будет всего 8 гигов и 256 ссд, но это же не важно!
                                                                                                        Заметьте: я предлагал сравнивать с ноутами на мобильном 4800U, на 4800H с dgpu переключились вы.
                                                                                                        и я вам даже ответил почему, только вы раз за разом отказываетесь читать что вам пишут, что ж с этим поделать.
                                                                                                        Как вы там сказали? «Ворота едут»?
                                                                                                        у вас — постоянно. Вон, чип с всем девайсом сравниваете.
                                                                                                        Или отсылаете на ТДП «Board Design».
                                                                                                        Так «номинальная мощность» нового макмини 150 заявлена. Эпл врут?
                                                                                                          0
                                                                                                          То есть ещё раз, ваш аргумент: у чипа м1 тдп 10 ватт, а у всего иксбокса 165 в реальном тесте, значит в 10 раз?
                                                                                                          вот только M1 это SoC с CPU, GPU и RAM — основными потребителями электроэнергии в коробке.
                                                                                                          Люди играли в игру и получили потребление. Тут вы начинаете рассказывать, что они играют не правильно и вообще не могли таких цифр получить?
                                                                                                          я лишь для вашей просвещенности привел факт, подтверждающий, что консоли в очередной раз делают ровно то же самое, что они делают уже десятилетиями — выдают примерно половину заявленной производительности.
                                                                                                          Не могли. При цене в 3 коробки продать получится только вам.
                                                                                                          это ваши личные спекуляции, основанные на едва релевантных данных. Которые вы пытаетесь выдать за факты, попутно подменяя все понятия, которые вам неудобны в рамках спора.
                                                                                                          и я вам даже ответил почему, только вы раз за разом отказываетесь читать что вам пишут, что ж с этим поделать.

                                                                                                          — давайте сравнивать устройства на мобильных чипах между собой
                                                                                                          — я же написал что я буду сравнивать что хочу и с чем хочу, но вы же не читаете что вам пишут! А коробка дешевле air'а, ололо

                                                                                                          Как с вами аргументированно спорить вообще?
                                                                                                          Так «номинальная мощность» нового макмини 150 заявлена. Эпл врут?
                                                                                                          потому что она у intel версии 150 Вт

                                                                                                            0
                                                                                                            вот только M1 это SoC с CPU, GPU и RAM — основными потребителями электроэнергии в коробке.
                                                                                                            150 ватт у макмини заявленные — это отлично
                                                                                                            я лишь для вашей просвещенности привел факт, подтверждающий, что консоли в очередной раз делают ровно то же самое, что они делают уже десятилетиями — выдают примерно половину заявленной производительности.
                                                                                                            Это вы написали по анализу ТДП?
                                                                                                            Это уже не лопата, вы на дно экскаватор доставили...
                                                                                                            это ваши личные спекуляции, основанные на едва релевантных данных. Которые вы пытаетесь выдать за факты,
                                                                                                            Хм, макмини с текущим чипом и дешевой оперативкой, а так же меньшим объемом этой самой оперативы и четвертью по объему ссдшником — в два раза дороже коробки. Макмини с куртым чипом, опупенным видиком, 16 гигами гддр6x и терабайтным ссд — дешевле коробки будет, по любому, я так и понял
                                                                                                            попутно подменяя все понятия
                                                                                                            Да-да, 90 тысяч дешевле 45. 8 гигов и 256 жесткий лучше 16 и терабайта, видик в 2,4 порвёт 12 терфоповый, и стоить это будет по любому дешевле аналогов-<которых>-нет
                                                                                                              0
                                                                                                              в два раза дороже коробки.

                                                                                                              А какой смысл сравнивать стоимость с устройством, себестоимости стоимость которого даже не известна, но по косвенным данным (правда кое что есть только по соньке, которая +- на том же железе) она практически равна продажной стоимости, а по совокупным расходам консоли вообще в минус продаются (что подтверждает анализ отчетов от той же Sony для предыдущих консолей)?
                                                                                                              Цель продажи консоли — заработать не на ней, а на комиссиях с подписок и продажи игр. Если бы у Apple была такая же структура дохода, то макбук бы стоил 299 долларов, но заставлял вас покупать приложения на каждый чих. И браузер был бы платным, да. И софт сторонний тоже запускать было бы нельзя вот прям совсем. В общем — экономика несколько по другому работает.
                                                                                          +1
                                                                                          суммарная стоимость для среднего пользователя получается порядка $1000, если не больше

                                                                                          Это для кого они столько стоят?
                                                                                            0
                                                                                            это он исходил из 15$ подписки на 5 лет)
                                                                                        0
                                                                                        Или, быть может, они пойдут по пути установки нескольких M1. По крайней мере с экономической точки зрения это выглядит весьма заманчиво.

                                                                                        Да, доступ к памяти соседнего чипа будет медленнее, но вряд ли медленнее, чем доступ к отдельной оперативке v Intel‐маках.
                                                                                          0
                                                                                          Это ужасное решение. Либо надо как у амд — отдельный котроллер общения с оперативкой для двух чиплетов. Но это сожрёт процентов 10 производительности. В вашем варианте сожрутся все 30.
                                                                                          Посмотрите разницу 4800H, у которого чип монолитный, но он задушен по tdp и имеет меньший кэш, и 3700x у которого чип вынесенный при том, что архитектура самих ядер zen2 — десять процентов в пользу декстопного, и то не везде…
                                                                                            0
                                                                                            Как вариант в мощных маках ставить мощный проц «типа M2», где вся поверхность чипа это только процы и ставить «Mg», где только графическая подсистема, даже можно со своей RAM а не общей как в M1…

                                                                                            Но это просто мысли в слух
                                                                                              +1
                                                                                              Ну вариантов много, но в этом и косяк. Когда те же интел или амд выпускают по сути дела одно и тоже, сортируя по «браку» и «качеству» ядер, эпл себя поставила в ситуацию, когда их M2 должен быть совершенно другим продуктом, то есть им нужно всё переделать, чтоб выпустить что-то большее…
                                                                                                0
                                                                                                Ну вроде в Air за 999$ на одно графическое ядро меньше чем в Air pf 1249$.
                                                                                                То есть какое то разнооьразие все же присутствует. Правда в названии чипа у Apple это не как не отражается, может позже добавят типа M1.1 M1.2
                                                                                              +1
                                                                                              Это ужасное решение. Либо надо как у амд — отдельный котроллер общения с оперативкой для двух чиплетов. Но это сожрёт процентов 10 производительности. В вашем варианте сожрутся все 30.

                                                                                              30 % по сравнению с чем и почему?

                                                                                              Но даже если так, то это ж всё равно позволит наращивать производительность, при этом выпуская один и тот же чип, а не делая совершенно другой продукт.
                                                                                                0
                                                                                                30 % по сравнению с чем и почему?
                                                                                                От той, что может выдать монолитный чип.
                                                                                                Почему — потому что вы просто делаете по сути двухсокетную мамку, просто распаянную и близко друг от друга. Данные между кэшами и оперативкой как будут бегать между двумя кристаллами? вот нужно процессу не 16, а 20 гигов и?
                                                                                                  0

                                                                                                  Надо лицензировать IF?

                                                                                                    +1
                                                                                                    Так она ж между CCD и контроллером памяти находится. А тут её как без изменения чипов добавить?
                                                                                                    А если переделывать чип, то тогда да, что-то подобное придумывать придётся для увеличения всего.
                                                                                                      0

                                                                                                      Ну да, логично.


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

                                                                                                    –2
                                                                                                    Ну концептуально я это представляю так, что один процессор может обращаться к памяти другого примерно так же, как если бы процессор обращался просто к чипу памяти. При этом чип сразу сможет и актуальные данные из кеша отправить.

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

                                                                                                    А тут её как без изменения чипов добавить?
                                                                                                    А если переделывать чип, то тогда да, что-то подобное придумывать придётся для увеличения всего.

                                                                                                    И тут же дело в том, что всё необходимое вполне может быть уже добавлено в чип.
                                                                                                      +1
                                                                                                      Это так не работает. Тут будет что-то типа NUMA, то есть обращение к соседней памяти через другой процессор. Там мноо подводных камней, как с задержками, так и с общей пропускной способностью связующей шины.
                                                                                                      И я не думаю, что у M1 вообще есть шина для межпроцессорного взаимодействия.
                                                                                                        –1
                                                                                                        Тут будет что-то типа NUMA, то есть обращение к соседней памяти через другой процессор.

                                                                                                        Вот именно это я и имел в виду. Вот прям неизбежно будет медленнее, чем обращение просто к чипу памяти на таком же расстоянии? Или от реализации зависит?

                                                                                                        И я не думаю, что у M1 вообще есть шина для межпроцессорного взаимодействия.

                                                                                                        Может нет, а может и есть. Документации к M1 у нас то нет.
                                                                                                          0
                                                                                                          Вот прям неизбежно будет медленнее, чем обращение просто к чипу памяти на таком же расстоянии?

                                                                                                          Конечно. Встаёт вопрос о синхронизации, так как у нас теперь есть два контроллера памяти.
                                                                                                          Может нет, а может и есть. Документации к M1 у нас то нет.

                                                                                                          Такая шина это куча неиспользуемых на текущих устройствах контактов, потраченный впустую транзисторный бюджет. Никто такое не делает «про запас».
                                                                                                            0
                                                                                                            Такая шина это куча неиспользуемых на текущих устройствах контактов, потраченный впустую транзисторный бюджет. Никто такое не делает «про запас».

                                                                                                            А куча разных процессоров — это потраченный долларовый бюджет. Когда бракованное ядро отключается, то тоже вроде как впустую потраченный транзисторный бюджет выходит, но так дешевле получается.
                                                                                                              0
                                                                                                              Отключение бракованных ядер как раз в плюс, иначе пришлось бы кристалл выкидывать вообще. А тут фигня, которая вообще не будет использоваться ближайшие пару лет.
                                                                                                                0
                                                                                                                Почему через пару лет? Следующие компьютеры или весной, или осенью покажут.
                                                                                                                  0
                                                                                                                  Выкатят небось средний сегмент, топы и рабочие станции выйдут нескоро, там ещё софт адаптировать нужно.
                                                                                                                    +1
                                                                                                                    Ну так и средний сегмент должен быть более производительный и с бо́льшим объёмом оперативной памяти, чтобы он мог конкурировать с младшим сегментом.
                                                                                                                      0
                                                                                                                      Ну так там и будет M2 какой-нибудь, или M1+. Уверен на 100% в отсутствии интерфейса для межпроцессорного взаимодействия у M1.
                                                                                                                        0
                                                                                                                        Может быть. Не так долго осталось ждать, чтобы узнать как там у Apple задумано.
                                                                                                                          +1

                                                                                                                          А он и не нужен. M1 для того, чтобы объединить платформы и запустить процесс переползания на новую платформу пользователей буков и десктопов.


                                                                                                                          Как появится интерес менее массовых пользователей — так будет повод выкатить новое.

                                                                                                        0
                                                                                                        вот нужно процессу не 16, а 20 гигов и?

                                                                                                        И автор процесса пишет NUMA-aware-код. Процессоры с разными латентностями доступа к памяти в зависимости от ядра доступны на рынке уже лет 10 для десктопа и лет 20 (если не больше — смотря как считать) для серверов.

                                                                                          +3
                                                                                          Что-то я реальной задачи не увидел ни одной кроме времени компиляции, которая тестировалась непонятно как.
                                                                                          Где кодирование видео? Производительность на ватт в различных задачах? Тепловыделение реальное? Да хотя бы игры в конце концов?
                                                                                            +1
                                                                                            С кодированием видео слишком печально будет для десктопов. Оно же там у Apple аппаратное.
                                                                                            Тут даже айфон может обгонять десктопы
                                                                                              +2
                                                                                              Так и на декстопах в видках кодирование давно есть. Не устраивает качество, кодируют на процах.
                                                                                              Декодировать то на встроенных понятно, что лучше.
                                                                                                0
                                                                                                не только у Apple, у меня не новый телефон на эксинос, пробовал монтировать видео 4k 60fps HDR10 на нем, и был впечатлен как он легко с этим справляется, в том числе с конвертацией в другое разрешение и формат, с эффектами.

                                                                                                Это и понятно, все смартфоны сейчас ориентированы на медиа контент, и процессоры у них соответствующие. В тех же мессенджерах когда видео передаешь оно на лету конвертируется, сжимается. Запись 4к 60FPS HDR тоже надо кодировать на лету чтобы место сэкономить
                                                                                                  0
                                                                                                  У ARM процов колличество регистров больше чем у x86.
                                                                                                  По данным Wiki (Целочисленных регистров/FP регистров):
                                                                                                  x86-64 — 16/16
                                                                                                  ARM 64-bit — 31/32
                                                                                                  Кстате именно по этому эмуляция x86 на ARM проходит более хорошо (быстро) нежели наоборот.
                                                                                                    +2

                                                                                                    А ещё все SSE/AVX регистры посчитайте, да ещё переименование регистров и тому подобное. Если бы было достаточно просто накидать регистров, чтобы увеличить производительность — что мешало бы так сделать интелу и амд? :)

                                                                                                      0

                                                                                                      Переименование регистров не позволяет адресовать больше регистров.
                                                                                                      FPU/MMX/SSE/AVX ∉ GPR
                                                                                                      Все это есть и у ARM.

                                                                                                        +4

                                                                                                        Всё так, но и чего? У x86 меньше регистров и поэтому ARM работает быстрее? Это чрезвычайно упрощённый и потому неверный подход к микроархитектуре :)


                                                                                                        Забавно, как все с умным видом бросились обсуждать (да и всегда это делают в таких разговорах) видимые и поэтому понятные простому программисту аспекты — сколько регистров лучше, какая система команд совершеннее. При этом совершенно игнорируя все важные детали реализации — ни одного упоминания бранч предикторов например (а для широкого ядра и медленной памяти даже 1% промахов может давать десяток процентов производительности разницы), ни префетчеров, ни того, что там там кеша L1 в четыре раза больше, чем у топового интела (а L2 — в 24!) и память быстрее в полтора раза. Но нет, всё дело в том, что в микроархитектуре регистров общего назначения вдвое больше.

                                                                                                          0

                                                                                                          Это вы бросились считать регистры, смешав в кучу коней и людей.

                                                                                                          0

                                                                                                          Тогда для чего же нужно переименование, если не для этого?) Оно как раз заменяет архитектурные регистры на микроархитектурные и позволяет адресовать больше, чем доступно архитектурных. На линейный участок это не повлияет, а вот на независимые вычисления — ещё как.

                                                                                                            +1

                                                                                                            Разница как между линейной ram и переключаемыми банками.


                                                                                                            У вас на современной архитектуре всегда есть регистровый файл. Часть его доступна явно: это архитектурные регистры. Их количество влияет на возможности оптимизации использования памяти компилятором, некоторые вычисления при малом количестве доступных регистров или недостаточной их разрядности потребуют сохранения промежуточных результатов в память. И сохранить, в общем случае, GPR в SIMD вы не можете, потому что SIMD делает свои вычисления, возможно даже завязанные на другой поток — а это penalty.


                                                                                                            Теневые регистры — остаток регистрового файла — менее быстры в обращении, потому как их использование предполагает смену маппинга и, фактически, работает через аппаратный хук.
                                                                                                            То есть, при недостатке регистров в общем случае вы должны еще где-то найти регистр или два свободных, чтобы загрузить в них адрес ячейки памяти для сохранения временного значения, что лишает компилятор уже трех регистров в сумме.
                                                                                                            И даже если запушить регистр в стек (лучше чтобы при этом был отдельный data-stack, но это еще минус один GPR), это обращение к медленной внешней памяти, которое, в общем случае, непредсказуемо по penalty.
                                                                                                            С большим количеством адресуемых регистров эта проблема возникает существенно реже.


                                                                                                            А теперь если еще вспомнить, что половина x86-GPR сохраняет специализацию (у ARM их, на самом деле, примерно столько же) то увеличение адресуемой части в два раза дает компилятору втрое больше регистров для маневра.

                                                                                                    0
                                                                                                    Лишьбы маньячило не захотел >1 прохода, с перекрученными настройками.
                                                                                                    или, спецверсию кодека, типа для аниме :)
                                                                                                      +2

                                                                                                      Да оно у всех уже аппаратное, в типичном десктопе так ещё и с запасом кодеров/декодеров: и в процессоре есть (всякое intel quick sync), и в видеокартах дополнительных (причём и отдельные чипы и на основных ядрах ускорять можно)

                                                                                                        0
                                                                                                        Никто не мешает задействовать тот же NVENC, и оставить аппаратный кодировщик Apple далеко позади. Страдает качество, чего на телефонах, конечно, не видно, но для профессиональной работы аппаратные кодировщики не годятся.
                                                                                                          0
                                                                                                          NVEnc заметно уступает в качестве кодирования обычным процам, было бы весьма интересно увидеть сравнение с яблочным решением.
                                                                                                            0
                                                                                                            NVEnc заметно уступает в качестве кодирования обычным процам
                                                                                                            Как и любой потребительский аппаратный кодировщик. Чуда не случится. Потребительские кодировщики жертвуют точностью в пользу скорости. Есть серьезные аппаратные кодировщики, которые не уступают программным в качестве, а даже их превосходят (см. Main report (Objective comparison, FullHD videos) summary), но я в живую не видел ни одного, и даже не знаю, где и за какие деньги их покупают.
                                                                                                      +1
                                                                                                      Справедливости ради, стоит сказать что одно ядро zen3 ест до 20 ватт при одиночной нагрузке, и ватт 6 в 16 ядернике при многопоточной нагрузке, ну т.е. не сильно большей ядра ARM процессоров.