Pull to refresh

Comments 550

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

0. Интегрированные видяшки на x86 тоже UMA (unified memory architecture).
1. Intel/AMD — тоже SoC. Южные мосты вроде как в прошлом (т.е. в чипе).
2. Почти всё начало статьи подаётся как будто в x86 нет out-of-order-execution.
3. Ничего не сказано про просуперскалярность — тут было бы к месту.
4. Ничего не сказано про branch prediction — тоже было бы к месту.
5. Ощущение, что местами hyper-threading перепутан с out-of-order-execution.
6. Но главное, что добило:
Если мы запишем результат 03 перед тем, как начнет выполняться операция 02, то вторая операция получит неверные входные данные
Есть такое понятие как 'registry file' — r1 в первых двух командах и r1 в третьей технически будут разными 'r1' (этих «слотов» в современных процессорах как бы не 128-1024, точных цифр не знаю).

По итогу — кроме fixed-instruction-length на декодерах разницы вроде и не видно.
Интегрированные видяшки на x86 тоже UMA (unified memory architecture).

Только AMD и только на консолях (но там тоже свои особенности с разными шинами к памяти и без общих кэшей). В ноутбуках/десктопах GPU просто выделяется отдельный пул памяти, в который CPU копирует данные, чтобы GPU мог с ними работать.


По итогу — кроме fixed-instruction-length на декодерах разницы вроде и не видно.

Кроме того, что из-за этого стало возможно сделать 8 параллельных декодеров и быстро заполнять reorder buffer в 600+ команд. У anandtech есть технический разбор микроархитектуры процессоров Apple.


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

Только AMD и только на консолях
Вроде не только
docs.microsoft.com/en-us/windows/win32/direct3d12/memory-management-strategies
Технически, по идее, не должно быть препятствий, чтобы писать в ту память хоть прямо из user-space (окромя concurrency с другими приложениями). Ну и если не из user-space, то в любом случае это будет kernel memcpy, а не проброс по PCI-E.
Вроде не только
docs.microsoft.com/en-us/windows/win32/direct3d12/memory-management-strategies

Это как раз для XBox и сделано, где особенная архитектура APU и свои драйвера.


Насколько я знаю, поддержка HSA и HMM в Linux была реализована в каком-то виде под Kaveri, для специализированных задач, но статус в настоящее время непонятен.
До windows-PC и полноценных драйверов вообще дело не дошло.

На XBox One, на сколько помню, диалект DirectX 11.1 (Durango) с некоторыми доп-фишками на Map/UpdateResource для UMA. На PS4 примерно та же песня на свой ляд (забыл название API). На Win10 DirectX12 давно уже работает что на встроенных в проц, что на внешних видяшках.
Интегрированные видяшки на x86 тоже UMA (unified memory architecture).
но сама память то вне чипа ) Вообще в M1 LPDDR4X на 4266 МГц, это достаточно быстрая память. Она вшита в чип, что слегка уменьшает задержки. Помимо этого в M1 двухуровневый, а не трехуровневый кеш, но большего размера. Кажется, всё вместе дает прирост.
Интересно тогда, почему nVidia/AMD не встраивают GDDR видеопамять в чип. Нагрев?
intel например представили пару lakefield SoC, правда это скорее продукты начального уровня. Но вообще мне кажется здесь и проявляется разница между «делать чипы для своих устройств» от apple и «делать чипы для устройств других производителей» от intel — вторые должны быть более универсальными и модульными.
Интересно тогда, почему nVidia/AMD не встраивают GDDR видеопамять в чип. Нагрев?

Кто бы первым это не начал делать у вас всегда была бы возможность задать вопрос:
а «почему кто-то другой этого не делает? нагрев?»

Кто то же должен быть первым.

Остальные подтянутся. Вангую: через пару лет такие чипы с памятью и у других производителей будут не экзотикой.
Кто бы первым это не начал делать у вас всегда была бы возможность задать вопрос:
а «почему кто-то другой этого не делает? нагрев?»
Кто то же должен быть первым.
Почему этот первый не один из двух игроков, а некий пришедший хрен с горы?
Кто бы первым это не начал делать у вас всегда была бы возможность задать вопрос:
а «почему кто-то другой этого не делает? нагрев?»
Кто то же должен быть первым.


Почему этот первый не один из двух игроков, а некий пришедший хрен с горы?


Интерес Apple к ARM древние корни имеет. Компания Advanced RISC Machines (ARM) изначально была основана как совместное предприятие между Acorn Computers, Apple Computer (сегодня — Apple Inc.) и VLSI Technology в 1990 году.

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


Потому что нужен спрос.

Apple может заменять процессор. И сохранить спрос.

Поменяв ПО. Это уже было в истории Apple. У них были платформы различные — Motorola, PowerPC, Intel

Остальные «ведущие игроки» — просто железячники. На рынке ПО они не могут сделать такие вещи как «поменять ОС под новую систему команд».

Прецеденты были — Intel уже пролетала с Itanium.
Основные игроки не увидели спроса на такое, и не смогли его создать или решили не заморачиваться такой суетой.
Такая мысль?
Основные игроки не увидели спроса на такое, и не смогли его создать или решили не заморачиваться такой суетой.
Такая мысль?


Они не могут создать спрос. Они железячники.
А с MS видимо не договорились тогда.

MS вовсю пилит в Windows для ARM инструментарий эмуляции x86 для него для переходного периода — только вот прямо сейчас.

Ноутбуки на ARM уже много лет как выпускались. Только они никому не были нужны. Софта-то не было. Как оказалось, массовому рынку недостаточно Linux, который нужно доводить руками. Нужны системы «сел и работай». А их только 2 — MacOS и Windows. Производство ARM ноутбуков тех — и заглохло.

Я думаю, Intel пролетел с Itanium из-за наличия на рынке Sun SPARC со всем Solaris обвесом. Сейчас история могла бы быть другой. Плюс сейчас докеры, cpp-to-js-to-llvm-to-whatever, opensource-with-cmake, железо всё меньшую роль играет в vendor lock-in.
Вопрос почему ни один из двух основных игроков рынка этого не делал, а некий второстепенный персонаж взял и сделал.

Потому что оба "основных игрока" связаны по рукам и ногам
1) обратной совместимостью
2) многолетним участием в производственных цепочках десятков, если не сотен производителей конечных устройств
3) наличием второго игрока, продукцией которого можно вообще без проблем заменить твою продукцию в случае, если у твоей появляются проблемы с первыми двумя пунктами.


Если бы условный интел заявил, что очередное поколение процессоров будет с памятью на SoC, которую нельзя проапгрейдить, то единственное, чего он достиг бы — это практически полной потери рынка энтузиастов и прочих само-сборщиков (которые, так уж повелось, любят периодически апгрейдиться и иметь возможность это сделать). А так же огромными потерями на OEM рынке. Т.к. хоть условному производителю ноутбуков невозможность апгрейда и не настолько критична (подавляюще большинство ноутов и так с распаянной на материнке памятью), но критична логистика и всякие цепочки поставок. Если с классической схемой он мог из абсолютно одинаковых компонентов собрать 4 разных конфигурации ноута (CPU X 4GB RAM, CPU X 8GB RAM, CPU X 12GB RAM, CPU X 16GB RAM), то с "новыми улучшенными" SoC это будет уже 4 разных компонента. И проблемы с доступностью любого из них автоматически будут означать проблемы с производством и доступностью соотв. ноутбуков. А если сюда еще добавить разные модели CPU, то и вовсе получаем квадратичный рост зависимостей.


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

Я не понимаю почему звучит как «теперь наши процы будут с памятью на SoC».
Речь же о ситуации «а еще у нас теперь будут процессоры с памятью на SoC».
Если процы получаются сказочные то на них постепенно поползут все.
Тогда придётся иметь значительно больше производственных линий, только чтобы «лепить» память на CPU.
А корпоративному рынку всё равно потребуется возможность создания нестандартных конфигураций, но если сейчас это CPU + RAM, то как будет потом? SoC не будут выпускать для корпоративного рынка? Или будет что-то вроде SoC(CPU+16 GB RAM) + RAM снаружи?

В таком случае эти "а еще" будут просто никому не нужны по ровно тем-же причинам. "Сказочность" памяти на SoC не решает ни одну из этих проблем. И сам по себе факт переноса памяти на SoC не делает процессор достаточно "сказочным", чтобы эти проблемы перевесить.

Тогда не понимаю чего такого сказочного сделала Эпл что это перевесило все проблемы и теперь хоры оды поют.

Попробуйте ещё раз перечитать вот этот мой коммент https://m.habr.com/ru/post/538812/comments/#comment_22586742


Эппл не решила эти проблемы, у неё их и не было.


Хоры оды поют M1 в целом, а не памяти на SoC. Помимо памяти на SoC в нем есть ещё огромная куча отличий от процессоров «основных игроков». И часть этих отличий нельзя (или по крайней мере очень трудно) перенести на x86 by design.

Про память это для простоты. Изначально вопрос был почему основные два игрока рынка не сделали то что сделала сейчас Эпл.
Эти игроки в принципе забили на ARM кусок рынка? В этом мысль?
Про память это для простоты. Изначально вопрос был почему основные два игрока рынка не сделали то что сделала сейчас Эпл.
Эти игроки в принципе забили на ARM кусок рынка? В этом мысль?


Потому что этого рынка не было.

Его только-только создает Apple. Как производитель полного цикла — процессоры, компьютеры, софт — она может это сделать.

Основные два игрока — это железячники, обслуживающие имеющиеся на рынке потребности.

Чтобы AMD/Intel стали делать под ARM нужно было чтобы сподобилась сделать полноценное решение под ARM Microsoft. А чтобы Microsoft начала делать это решение — нужно чтобы AMD/Intel сделали. Заколдованный круг.

И только производитель полного цикла не имеет тут заколдованного круга.
Чтобы AMD/Intel стали делать под ARM нужно было чтобы сподобилась сделать полноценное решение под ARM Microsoft. А чтобы Microsoft начала делать это решение — нужно чтобы AMD/Intel сделали.

Но Microsoft сделала своё решение уже 3 года назад...

Но Microsoft сделала своё решение уже 3 года назад...

Какие три года?
Эмуляции Win64 еще нет
Эмуляция Win32 только допиливается.

Если вы про голый Windows чисто под ARM — он не нужен никому такой без эмуляции. Переходный период будет длинный.
Потому что этого рынка не было.
qualcomm 8cx?
Потому что этого рынка не было.


qualcomm 8cx?


Назовите кто из производителей железа его покупал? Какие модели ноутбуков с этим процессором.

Рынок это наличие и спроса тоже.
А не наличие лишь только предложения.

Samsung Galaxy Book S
Lenovo Flex 5G
Surface Pro X
Более новое или только анонсировано или отменено в связи с отсутствием спроса.


Ага. Спроса нет. Спасибо.
И за ссылки тоже спасибо.
Назовите кто из производителей железа его покупал? Какие модели ноутбуков с этим процессором.
это же легко гуглится… Да, моделей не так много, это ведь ARM ноуты, считай тестовая продукция. Есть еще microsoft SQ1 на базе 8cx, ARM чип который идет в microsoft surface ноуты. Первые ARM MS surface кстати очень давно появились, вместе с релизом win8.

Я не спорю, что без нормальной софтовой поддержки от MS windows продукты на основе ARM процов достаточно нишевые и мало кому нужные. Я лишь отрицаю утверждение про «рынка не было».
это же легко гуглится… Да, моделей не так много, это ведь ARM ноуты, считай тестовая продукция. Есть еще microsoft SQ1 на базе 8cx, ARM чип который идет в microsoft surface ноуты. Первые ARM MS surface кстати очень давно появились, вместе с релизом win8.


Именно. Аналоги новых ноутов Apple тех что на M1 у других производителей — фактически тестовые.

И да, на ARM ноуты выпускаются давно.
Но старые модели смысла не имели, ибо были тормозными, а жрали столько же сколько классические x86.

На ARM свежих, тех, что достаточно быстры для работы — в свободной продаже есть только устройства производства Apple.

Все прочие — заявлены на сайтах производителей. Но вот в наличии их нигде нет.

Буду признателен, если вы покажите, где их реально можно купить.
Что такое полноценное решение? В контексте например хостера? Который масштабирует один-два сервиса на миллионные инстансы?
Мне кажется что мы по разному понимаем потребителя продукции производителя процессоров.
ИМХО, потому что разработка процессоров очень сложное дело с большим количеством компромиссов. В АМД для райзенов например сделали чиплеты, где отдельно ядра, отдельно остальное, что позволило значительно улучшить выход годных кристаллов.

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

Так же при сравнениях надо учитывать, что у М1 уже 5 нм процесс, что даёт им преимущество. Посмотрим, что будет, когда нанометры будут одинаковые.

Они не забили. Не было никакого ARM рынка. Его нужно было создать. Эппл создала.


Им это было сделать на порядок проще, потому что они контролируют свою экосистему. Им достаточно сказать "ребят, через 2 года интел не нужон" и все эта экосистема дружно перейдет на ARM. Начиная с самих процессоров, продолжая прочим железом их компьютеров, поддержкой ОС, библиотек и фреймворков. И заканчивая прикладным софтом сторонних производителей, у которых во-первых есть все инструменты для поддержки ARM, а во-вторых — банально нет выбора, т.к. через 2 года их приложения превратятся в тыкву, если не обновятся.


Intel и AMD чтобы провернуть подобный трюк нужно было бы договориться с кучей производителей промежуточных звеньев на пути от CPU к потребителю. Если любое из этих звеньев откажется участвовать в затее или не справится со своей задачей — конечный потребитель продолжит пользоваться старыми привычными x86 продуктами, в которых все работает.


Посмотрите на скорость отказа от WinXP и Win7. А это ведь намного менее радикальное изменение, чем переход на абсолютно новую архитектуру CPU. Экосистема PC очень отличается от Mac.


Поэтому переход PC мира (с Intel и AMD включительно) на ARM если и произойдет, то только в случае огромного пинка в виде намного более производительных ARM маков (и M1 — это еще недостаточно сильный пинок). И даже в таком случае этот переход для PC будет значительно труднее, болезненнее и дольше, чем для маков.

Я не пойму почему вы упорно говорите о переходе PC мира на ARM?
Речь о том почему основные игроки не сделали ранее свой вариант того что сделала Эпл. На любой продукт есть свой покупатель. Если продукт на голову выше того что вокруг (даже в какой-то узкой области) заинтересованные люди быстро придумают как использовать себе на пользу. Вплоть до сборки своей оси.
Возникает предположение что либо выгода не так сильна как заявляют митингующие, либо есть какие-то нюансы (например масштабирование или тупиковость идеи в проекции будущего), ну или игроки мощно протупили.
Вплоть до сборки своей оси.
Напомните, сколько сейчас процентов линуксоидов(не тех кто установил убунту по картинкам из интернета) и прочих систем? При этом способных портировать софт и переписать компилятор?
Откуда мне такое знать, и для чего?
Когда была необходимость портировали. Без особенных эмоций, какая разница программисту что писать в рабочее время?
Про компиляторы ничего не скажу, последний раз доводилось писать оное в качестве курсовой достаточно много лет назад. А по роду деятельности не сталкиваюсь.
Без особенных эмоций, какая разница программисту что писать в рабочее время?
Гугл свои патчи в апстрим отправляет, а вы про самостоятельную разработку говорите.
UFO just landed and posted this here
UFO just landed and posted this here
А зачем каждому линуксоиду это уметь?
Это сказано в контексте портирования.
UFO just landed and posted this here
На любой продукт есть свой покупатель

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


Если продукт на голову выше того что вокруг (даже в какой-то узкой области)

… то во всяких узких областях ARM уже давным давно активно используется. Просто десктоп в эти узкие области не входит.


либо есть какие-то нюансы

Да, есть. Я про них многократно написал уже. Нюанс в необходимости привлечения множества независимых производителей и их слаженной работы в случае с PC и в отсутствии такой необходимости в случае с mac.

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

Вы опять за свое. Причем тут десктоп? Речь за процессоры.
Да, есть. Я про них многократно написал уже. Нюанс в необходимости привлечения множества независимых производителей и их слаженной работы в случае с PC и в отсутствии такой необходимости в случае с mac.

Производителей чего? Цпу дали, референсный чипсет. Что еще нужно? Сейчас как-то иначе разве?
Причем тут десктоп? Речь за процессоры.

Так ARM процессоры давным-давно используются в своих нишах. Десктоп в эти ниши не входил. Благодаря Apple теперь вошел. Вероятно скоро и pc мир подтянется. Вон MS активизировались, стали активнее допиливать трансляцию x64.


Я перестаю понимать, в чем ваш вопрос. Почему Intel и AMD не делают ARM процессоры? Потому что целятся в массовый рынок, а не в нишевый, где каждый процессор в силу малого тиража будет стоить как крыло от самолета.


Производителей чего? Цпу дали, референсный чипсет. Что еще нужно? Сейчас как-то иначе разве?

И что дальше? Зачем мне инвестировать кучу бабла в производство, скажем, материнок под этот процессор, для которого нет софта, если я могу потратить эти деньги на приклеивание еще 2 RGB лампочек к материнке, на которую точно будет огромный спрос?

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

В чем и был вопрос. Они забили на этот сегмент рынка. Теперь понятно.
И что дальше? Зачем мне инвестировать кучу бабла в производство, скажем, материнок под этот процессор, для которого нет софта

Почему нет софта если это ARM? Использование фич нового процессора потребует не просто обновленного компилятора а новых алгоритмов?
Использование фич нового процессора потребует не просто обновленного компилятора а новых алгоритмов?
Как минимум тут нужно наличие оптимизирующего компилятора и отсутствие ассемблерных вставок.
Почему нет софта если это ARM? Использование фич нового процессора потребует не просто обновленного компилятора а новых алгоритмов?

Ну возьмите какой-нибудь девайс на Windows 10 ARM и посмотрите какое там обилие софта.


Даже если для сборки ARM версии достаточно поменять один флаг компиляции (а это далеко не всегда так просто) — нужно чтобы кто-то это сделал. И потом эту версию тестировал и поддерживал. А это никому не нужно из-за размера ниши ARM десктопов.

Опять вы за свое. Причем тут десктопы. Речь за процессоры.
Я может чего не понимаю и этот процессор от Эпл имеет смысл исключительно в контексте десктопа?
Тогда я вообще не вижу смысла во всем этом диалоге.

facepalm.jpg
То есть весь сыр-бор из-за непонимания, что процессор, созданный исключительно для десктопа (при чем мобильного) имеет смысл исключительно в контексте десктопа?


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

Интелу и АМД достаточно сделать как Apple и заявить "через N лет х86 — всё, будем производить только ARM" не оставив выбора, и сразу и производители материнок подтянутся (ибо раз х86 процев не будет — под них уже не по-клепаешь) и производители софта (ибо иначе их софт будет лишь на компах N-летней давности).


Единственная сложность — это то что intel и amd должны провернуть это относительно синхронно.

Единственная сложность — это то что intel и amd должны провернуть это относительно синхронно.

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

Даже если на секундочку подумать, что Intel и AMD не против… То тут есть пара нюансов:


  • у интел-амд дохрена патентов на х86 платформе и они принадлежат им
  • в арме у них патентов или нет, или практически нет (понятно, что некоторые удастся переиспользовать — но далеко не все).

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

Что делать с полувеком legacy кода, который никто не знает как переписать?
UFO just landed and posted this here
Грубо говоря если завтра Intel захочет выпустить процессор не на x86_64, а на ARM — они будут вынуждены делать его аппаратно совместимым с существующими процессорами — только потому что помимо CPU в компьютеры обычно добавляют RAM, накопители, зоопарк PCI-карт и т.д. и т.п. И даже если они сделают такой процессор (или договорятся со всеми соответствующими производителями о выпуске новых версий железа, специально для чудо-процессора) — программы сами себя не портируют.
Откровенно говоря не вижу такой необходимости.
Есть старая линейка. А появляется дополнительно новая с килер фичей.
Ну а программы портируют разумеется потребители, был бы выхлоп.
Это сработает только если новая линейка будет ощутимо превосходить существующую, с учётом более дорогой обвязки (потому что новая и пока что малотиражируемая) и недостатка ПО. Если новый ARM-процессор будет (условно) на 10% мощнее нового x86_64, то большинство обычных пользователей даже не подумает переходить на него в ближайшие пару лет. Корпоративные — возможно, но опять таки после портирования всего нужного ПО.
Новый ARM от Эпл разве не преподносится как ощутимо превосходящий? Это разве не подтверждение правильности подхода?
Какое ПО нужно тому же хостеру или производителю систем видеонаблюдения, или систем хранения данных и тд? В чем там особенность сборки под новую целевую платформу?
Преподносится — да, фактически — не очень понятно (полно противоречивых комментариев). То, что Apple решила перейти на ARM говорит только то, что Apple решила. Через год они и вовсе могу решить перейти на какую-нибудь собственную iArch — могут позволить в рамках 100% своей экосистемы.
Какое ПО нужно тому же хостеру
Я не смотрел исходные коды, но вдруг условный Nginx использует ассемблерные вставки для особо критичных мест? Их портировать не очень приятно будет.
или производителю систем видеонаблюдения
а вот в видеокодеках повсеместно используют ассемблер, который точно придётся переписывать (ну или в железо выносить).
Я не смотрел исходные коды, но вдруг условный Nginx использует ассемблерные вставки для особо критичных мест? Их портировать не очень приятно будет.

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

А какие процессоры стоят сейчас зачастую во всех этих системах? ARM и стоит. Вопрос насколько обсуждаемый кентавр совместим с ними. И стоит ли адаптация суеты.
Через год они и вовсе могу решить перейти на какую-нибудь собственную iArch — могут позволить в рамках 100% своей экосистемы.

Справедливости ради ARM и так есть тот самый собственный iArch. Apple — один из родоначальников ARM и один из основных владельцев.
Откровенно говоря не вижу такой необходимости.
Есть старая линейка. А появляется дополнительно новая с килер фичей.
Ну а программы портируют разумеется потребители, был бы выхлоп.


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

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

Замкнутый круг.

Кроме Apple:

Apple, имея полный цикл производства и железа и софта и обладая внушительной властью над сторонними разработчиками — может менять платформу и уже делала это Motorola => PowerPC => Intel.

Фирма Apple может сказать и рынку (на котором она по сути монополист) и разработчикам — «или делай что я сказала, или иди в нецензурную сторону».

Кроме процессоров фирма Apple в приказном порядке это делала для многого. Хоть судьбу OpenGL и Vulkan посмотрите.

Потому что конкурентов в своей ниши у Apple нет.
И потому что Apple производит полный цикл — процессор, девайсы, софт, а также диктует свою политику разработчикам.

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

Есть старая линейка. А появляется дополнительно новая с килер фичей.


В том то и дело, что киллер-фичи у M1 нет.
Это довольно хороший продукт. Но не более.

Однако у потребителей, предпочитающих Apple — нет выбора. Это не киллер-фича, это просто принуждение.

В принципе, все согласны, поскольку их пересаживают не на говно, а на процессор сопоставимый с AMD/Intel.

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

Что до opengl/vulkan — без их поддержки в консолях теряется весь смысл пытаться тянуть универсальный графический api.
Мы в курсе что Аппл уже 3 раза кидала своих поклонников на покупку нового софта на каждую платформу.
Я не пойму почему вы упорно говорите о переходе PC мира на ARM?
Речь о том почему основные игроки не сделали ранее свой вариант того что сделала Эпл. На любой продукт есть свой покупатель. Если продукт на голову выше того что вокруг (даже в какой-то узкой области) заинтересованные люди быстро придумают как использовать себе на пользу. Вплоть до сборки своей оси.


Разработка современного процессора чрезвычайно дорогостоящая.

Ради 3,14 энтузиастов это бессмысленно.

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

Если продукт на голову выше того что вокруг (даже в какой-то узкой области) заинтересованные люди быстро придумают как использовать себе на пользу. Вплоть до сборки своей оси.


То есть вы предлагаете произвести миллионы процессоров (а иначе это экономически не рентабельно).

Выпустить на их базе миллионы ноутбуков.

Выложить эти миллионы ноутбуки без софта на полки магазинов.

Как вы думаете, сколько экземляров из этих миллионов без ОС будут проданы? 200 шт.?

Кто будет оплачивать весь этот банкет, все те годы, пока энтузиасты не запилят свою ОС?

Магазины? Производители процессоров или производители ноутбуков?

Речь то не о копеечных убытка. А о миллиардах.

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

То есть без желания MS подключиться к проекту или кого-то тоже мощного в софтостроении — продукта не выйдет.

Условно говоря:

AMD + Asus + MS = должны договориться, чтобы сделать новый продукт.

Причем для всех трех компаний это миллиардные риски.
Зачем они им?
Какие ноутбуки, о чем вы? Речь за процессоры.
Если у нового процессора будет серьезное преимущество его моментально пристроят к делу. И будут это совсем не пользователи ноутбуков и прочие игруны.

Повторюсь, "совсем не пользователи ноутбуков и прочие игруны" уже давно пользуются ARM процессорами

Я это прекрасно знаю, но не теми прекрасными ARM о которых мы говорим. И которые, якобы, на голову выше того что есть и среди ARM и вообще.
Или ARM от Эпл это как раз для ноутов, игр и прочей бытовухи, для серьезных задач не предназначены?
UFO just landed and posted this here

Да, именно поэтому для PC процесс перехода будет более болезненным и долгим. Спасибо за наглядную иллюстрацию.

Вспомните сколько срача было с «теперь у нас будет встроенная в процы графика, если вам не надо — не используйте».
UFO just landed and posted this here
Почему не используют? Очень даже используют, правда HBM.
Так у яблок точно такая-же интеграция — чиплеты www.eetasia.com/why-is-apple-m1-processor-passing-on-the-chiplets просто яблоки поставили обычную память, т.к. HBM штука очень быстрая, но дорогая. Собственно AMD HBM использует уже какое-то время в топовых решениях www.amd.com/en/technologies/hbm, как и NVidia images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf
Дело в том, что технологии, по которой делается память, не очень сочетается с той, по которой делается числодробилка. С флешем тоже самое, как и с DAC/ADC. Но если интерконект сделать на кремнии и с минимальными длинами — то получаются довольно вкусные и шустрые решения.

Дорого. В проф сегменте лет 5 минимум HBM для этого используется.

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

Как более дешевую альтернативу большим монолитным чипам AMD в 2015 выпустила графический процессор Fuji ( https://www.ixbt.com/video3/fiji-part1.shtml ) с HBM памятью ( https://www.ixbt.com/video3/amd-hbm.shtml ) которые находится на одной подложке

AMD Fury (Fuji)
AMD Fury (Fuji)
AMD Fury (Fuji)
AMD Fury (Fuji)
Она вшита в чип, что слегка уменьшает задержки

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

Какие задержки это уменьшает и на сколько?
Без цифр ваше утверждение является пустым сотрясанием воздуха.

Помимо этого в M1 двухуровневый, а не трехуровневый кеш, но большего размера.

3-х уровневый.
3-й уровень это SLC кэш размером 16МБ, для связи блоков внутри чипа. Правда до сих пор точно не понятно как ядро с ним работает.

Какие задержки это уменьшает и на сколько?
Без цифр ваше утверждение является пустым сотрясанием воздуха.
да уже то, что память физически ближе к процу на 10+ см, само по себе уменьшает задержки на несколько тактов.
3-х уровневый.
3-й уровень это SLC кэш размером 16МБ, для связи блоков внутри чипа. Правда до сих пор точно не понятно как ядро с ним работает.
«As for SLC cache, that’s for flash, not for the memory subsystem.»
да уже то, что память физически ближе к процу на 10+ см, само по себе уменьшает задержки на несколько тактов.

Чистая спекуляция. Какие конкретно задержки это уменьшает?
Насколько эти несколько тактов значительны на фоне общей латентности памяти?
Если вы встали с утра с кровати, эти несколько сантиметров вас конечно приблизят к поверхности Марса (или отдалят), но не сильно.

Ладно, я понимаю что из вас клещами нужно цифры вытягивать.
У 9900K латентность DDR4 памяти 70 нс.
У Apple M1 с LPDDR4X — 96 нс.
Так что там уменьшается? Кроме расстояния есть и другие, более важные параметры.

«As for SLC cache, that’s for flash, not for the memory subsystem.»

Ну это совсем ржака. Человек просто перепутал SLC (Single Level Cell) область в SSD и SLC (System Level Cache) в SoC.
Apple говорит о System Cache, но ARM называет его SLC.
Вот, например, документации к шине Corelinк:
developer.arm.com/documentation/100180/0103/introduction/product-documentation-and-design-flow
«Configurables include size and device placement and an optional System Level Cache (SLC).»
developer.arm.com/documentation/100180/0103/slc-memory-system/about-the-slc-memory-system
Я конечно криво написал про System Level Cache — cache, но Андрей из Анандтек так же облажался :) «Такова селяви»(с)

Собственно там не только кэш, но и свитч и coherence point. Всё в одном.
Вот патент Apple на системный кэш:
patents.google.com/patent/US20140075125

У 9900K латентность DDR4 памяти 70 нс.
У Apple M1 с LPDDR4X — 96 нс.
вы сравнили in-page latency у 9900K против full random latency у M1. А на графике ниже у 9900k в тесте full random latency порядка 210 нс.

Про кеш теперь еще более непонятно становится. Я в курсе что там L2 уже общий между ядрами, и не понимаю зачем тогда SLC и какую роль он играет.
random latency порядка 210 нс.

Вообще-то там такты (clocks).
210 тактов на 4ГГц это около 52нс. Т.е. даже меньше.
Я хотел использовать другой график (с нс шкалой), но там не было подписано значение.

Согласно 7-cpu www.7-cpu.com/cpu/Skylake.html
«RAM Latency = 42 cycles + 51 ns (i7-6700 Skylake)»
На частоте 4ГГц, 42 такта это 10,5 нс.
Итого получаем 63,5нс для DDR4-2400 памяти.
ЕМНИП, другие измерения что я встречал, доходили до 67-70нс.

Я в курсе что там L2 уже общий между ядрами

Между процессорными ядрами. В каждом кластере L2 свой.
У больших ядер 12МБ, у маленьких 4МБ.

и не понимаю зачем тогда SLC и какую роль он играет.

Связь всех основных блоков чипа — CPU, GPU, NPU, ISP и других.
Для эффективного обмена данными и кэш когерентности.
1. Intel/AMD — тоже SoC. Южные мосты вроде как в прошлом (т.е. в чипе).


Ммм… а не северный?
UFO just landed and posted this here

На EPYC уже даже и южного нет.

Ох уж эти загадочные Entrance/Exit Controllers…
Не согласен с тем что бизнес HP и Dell в опасности. если Интел сделает такой же процессор как М1 они так же продолжат собирать на нем системные блоки и ноутбуки.
И он уже на подходе, только не Intel а Qualcomm.
а тем временем у Интела рекордные прибыли за всю историю и главная проблема — его заводы не поспевают удовлетворить спрос на его процессора ;)

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

Так выбора-то особо нет. Плюс общий дефицит топового компьютерного железа.
И как это относится к потенциальным конкурентам М1?
Нет. Главная проблема Интел в том, что он больше не технологический лидер. И рынок это четко прайсит: Интел -5% за год, АМД +100%

image
Не забывайте, что AMD помимо CPU делает видеокарты.
А ещё именно AMD-компоненты используются в игровых консолях.
> А ещё именно AMD-компоненты используются в игровых консолях.
Вот, почему не Intel то? Вероятно потому и.
В те годы (начало 2010х) Intel под себя захапал почти все «около-ПКшное» (тот же рынок ноутбуков был на 99% голубой), за что неоднократно был показательно порот антимонопольной комиссией, проще было уступить.
И, пришедшая к рулю АМД, Лиза Су уже имела контакты в Сони (подробнее в тематичном ролике Pro HiTech).

Так что дело не только в том что «все в одном», т.к история показывает что и мешать вполне норм:
— xbox original — Pentium III + NVIDIA
— xbox 360 — PowerPC + ATI (тогда еще независимая)
— playstation 3 — Cell + NVIDIA
Интел -5% за год, АМД +100%
Это только отражает рыночные настроения аналитиков и инвесторов. Завтра происходит землетрясение, и фабрика AMD разрушена — цена упадёт. Потеряно ли лидерство? Не факт. Никто не будет разбираться, что это была лишь запасная фабрика, цена упадёт. Лишь потом начнет отрастать, когда все разберутся.
Интел больше не технологический лидер
Вчера Intel начал набирать своих олдов — график сильно вырастет, хотя они (олды) ещё ничего не сделали и не произвели.
Лишь потом начнет отрастать, когда все разберутся.

Но ведь за полгода-то можно разобраться? Вот и по графику если судить — там тоже разобрались и отросли, было ведь не -5%, а все -20%.

Это как раз надежда, что новый СЕО инженер, и вернет былое технологическое лидерство
Технически, М1 — это весь компьютер на одном чипе. Он содержит CPU, графический процессор GPU, память, контроллеры входа/выхода и множество других вещей, делающих компьютер компьютером. Это мы называем системой на чипе (system on the chip, SoC).
Процессоры Intel и AMD как бы тоже содержат все это. Только их чего-то не называют SoC…

В Qualcomm/MTK/Kirin/Exynos/etc. тоже памяти нет. Но они SoC.

там там сплошь замеры транслированного софта. «Почему все обзорщики из США используют одни и те же единственные оптимизированные под ARM бенчмарки?»…
там там сплошь замеры транслированного софта

Подождите, эпл же сказала что розетта всех спасет, получается соврали что ли?
Ну хорошо, ладно, розетта жрет производительность, но у вас же супер М1 который на завтрак ксеоны и эпики жрет, тож не спасает? Делааа…

«Почему все обзорщики из США используют одни и те же единственные оптимизированные под ARM бенчмарки?»

Если между несколькими обзорами прослеживается общая линия то невольно задумаешься, а не проплатили ли, но опять таки, все ж без наездов, просто наблюдения.
Вообще больше хотелось бы услышать чтонибудь по поводу всех этих глюков и ошибок снятых на видео. Или про показательный момент когда клонированная сиситема на супер М1 залогинилась ощутимо медленнее чем двухлетний интел… Про ворд который грузился пол минуты примерно. Очень знаете ли интересно послушать.
Подождите, эпл же сказала что розетта всех спасет, получается соврали что ли?
Ну хорошо, ладно, розетта жрет производительность, но у вас же супер М1 который на завтрак ксеоны и эпики жрет, тож не спасает? Делааа…
А давайте тогда запускать и там и там ARM код? Спойлер: M1 выполняет x86 код через rosetta2 куда быстрее, чем x86 процы выполняют ARM код.
Если между несколькими обзорами прослеживается общая линия то невольно задумаешься, а не проплатили ли, но опять таки, все ж без наездов, просто наблюдения.
у вас есть доказательства что apple хоть раз проплачивали обзоры?
Про ворд который грузился пол минуты примерно. Очень знаете ли интересно послушать.
при первом запуске неоптимизированного приложения происходит трансляция.
Подождите, эпл же сказала что розетта всех спасет, получается соврали что ли?
Ну хорошо, ладно, розетта жрет производительность, но у вас же супер М1 который на завтрак ксеоны и эпики жрет, тож не спасает? Делааа…


И к чему эти язвительные замечания?

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

Или же вы считаете, что планируется жить через трансляцию вечно? У вас для этого предположения есть основания какие-то?

И к чему эти язвительные замечания?

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

Или же вы считаете, что планируется жить через трансляцию вечно? У вас для этого предположения есть основания какие-то?

Я такого не утверждал. Да и речь то не о ней.
Просто я угораю с фанатиков эпл которые на словах и бенчах чуть не сервера рвут своим М1, а когда им скидывают видео реальной работы, когда человек перенес свое окружение и все очень плохо даже по сравнению с интелом 2018 года, начинается игра тысяча и одна отмаза своего яблочного бога.
Первой отмазой пошла розетта, но т.к. видно что М1 работает откровенно хуже, получается либо розетта сожрала всю «супер» производителность либо М1 изначально ничем выдающимся не был. Отсюда мой сарказм.

Antervis

при первом запуске неоптимизированного приложения происходит трансляция.

Человек который снял часовой подробный разбор о таком нюансе бы упомянул, ну или как мининимум запустил бы ворд дважды. Это во-первых.
Во-вторых, ворд работает нативно и уже достаточно давно. Так что аргумент с розетой не прокатывает.
К тому же, а что с логином? Почему так медленно? Тоже через розетту логинимся?
Человек который снял часовой подробный разбор о таком нюансе бы упомянул, ну или как мининимум запустил бы ворд дважды. Это во-первых.
так запустил или запустил бы?
Во-вторых, ворд работает нативно и уже достаточно давно. Так что аргумент с розетой не прокатывает.

когда человек перенес свое окружение и все очень плохо даже по сравнению с интелом 2018 года
человек перенес окружение вместе со всеми x86 приложухами, и внезапно там не нативные версии софта :surprised_pikachu_face:
человек перенес окружение вместе со всеми x86 приложухами, и внезапно там не нативные версии софта :surprised_pikachu_face:
Теперь домохозяйкам с макбуками нужно знать какой архитектуры какое приложения, и будет ли оно когда-то портировано. Того и глядишь, будут как линуксоиды ядро пересобирать и кеды патчить.
Теперь домохозяйкам с макбуками нужно знать какой архитектуры какое приложения, и будет ли оно когда-то портировано
сомневаюсь что домохозяйка будет переносить окружение, ровно как и пользоваться не типовым софтом.
сомневаюсь что домохозяйка будет переносить окружение
Насколько я знаю, это один из основных преимуществ Ap*le. Если в GNU/Linux мне нужно получить идентичное окружение, то я сам должен скопировать документы и настройки, безразлично то ли флешкой, то ли через репозиторий dot-файлов.
ровно как и пользоваться не типовым софтом.
Нужно ещё знать, что типовое, а что нет. virtualbox — не типовой, оказывается.
Ты что ж так грубо выражаешься? Тут же дети могут быть! Надо говорить «маркетинговый би эс».
UFO just landed and posted this here
UFO just landed and posted this here
столько пафоса, что у меня монитор замироточил

На частоте в два раза меньшей 8 декодеров x86 точно влезут. Тем более у M1 и техпроцесс поновее 5нм/TSMC против 7нм/TSMC у Zen3.
С бизнес моделью — вообще чушь какая-то. Ничего не мешает AMD понатыкать в свои чипы CPU/GPU/DSP/ISP/"другие ускорители"/SRAM, а сверху нахлобучить DRAM. Два основных производителя и несколько разных API для работы с этой мишурой. Вот будет радость-то!
В общем, в статье ни одного существенного препятствия для того, чтобы Intel и AMD догнали и перегнали конкретно чип M1, не приведено. Предположу, что просто не ожидали такого поворота событий. Помимо этого Intel с AMD могут не бояться Apple, так как последняя существует в своём закрытом мирке. Только косвенно, из-за возросшего интереса к ARM в целом.

Меня удивило почему samsung (или аналоги, но на него больше всего надежды было) ничего не сделал подобного. Вроде и мобильный чип есть мощный (отсносительно). Свои ноутбуки тоже собирают. Windows давно arm поддерживает (с натяжкой). Менеджеры давно должны были догадываться. Неужели маркетинг просчитал что не взлетит кроме как для пары гиков?
Меня удивило почему samsung (или аналоги, но на него больше всего надежды было) ничего не сделал подобного. Вроде и мобильный чип есть мощный (отсносительно).


Почему Samsung не сделал?
Samsung вполне себе сделал
25 часов автономной работы обеспечит Samsung Galaxy Book S с процессором Snapdragon 8cx

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

на данном этапе имеем то что имеем. потом — будет множество альтернатив.

но MS вполне себе серьезно пилит Windows для ARM и эмуляцию x86 в нем. Win32 уже допилили. Сейчас допиливают эмуляцию Win64

на сегодняшний момент вполне себе производительные ноутбуки на ARM, кроме Apple, уже представили Samsung, Microsoft и еще пара первых брендов.
Спасибо что скинули, пропустил из-за 2020. В общем да — вы правы, остальные подтянутся, побыстрее бы )

Они пытались сделать подобную микроархитектуру, но не преуспели. Это был один из последних производителей, пытавшихся сделать свои мощные ядра, а не лицензировать у ARM.
Возможно, через некоторое время Qualcomm выпустит продукт разработок Nuvia.

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

Ещё как важно, самому самсунгу. Топовые модели он делал одновременно и на своих процессорах и на qualcomm, для разных рынков, так каждый второй обзорщик упоминал, что exynos версия медленнее и горячее, чем snapdragon, и призывал искать версию на втором. Как, думаете, сказывалось это положительно на продажах своих процессоров? Выгодно было инвестировать в разработку и производство?
В целом, у них была ставка рано или поздно обогнать стоковые ARM-ядра и получить статус "быстрейших" android-телефонов, что дало бы им большое маркетинговое преимущество.
Но за много лет не вышло, поэтому проект полностью свёрнут. Теперь модели exynos и snapdragon будут почти как близнецы братья.

На частоте в два раза меньшей 8 декодеров x86 точно влезут
в случае ARM декодер берет i-е 32-битное число из памяти и декодирует независимо от остальных. В случае x86 декодер начинает с i-ого байта, пытается распарсить команду, и попутно думает, попал он в третий байт команды, пятый или четырнадцатый. И если попал не в начало команды, то надо дождаться, пока предыдущий декодер скорректирует конфликтующую команду. И логика такого декодера, сами понимаете, далека от тривиальной. Итого apple будет проще нарастить число декодеров до 16 чем intel/amd до 8.

Можно поставить предварительную стадию, которая разбивает на отдельные инструкции и попутно считая их число. Она будет достаточно простой функционально, но длинной, и всё-равно может влезть. Сомневаюсь, что у Intel/AMD не так сделано, а стоят подряд 4-е полноценных декодера x86. Вообще, кажется, читал, что декодеров там 2-3 разных типов, полный и несколько попроще.
А ещё, 8-м декодеров дадут прирост только в том случае, если конвейер инструкций не успевает за вычислительным. Вероятность, что Intel/AMD упустили это из виду, стремится к 0.
Хотя из статьи есть одна интересная идея. Каждая инструкция x86 переходит в последовательность мелких инструкций, которые зависят друг от друга. Т.е. для параллельного исполнения N инструкций x86 нужно сделать Reorder буфер(ROB) размером N*k, где k — длина x86 инструкций. У ARM, получается, ROB вмещает больше исходных инструкций и эффективнее используется. Но это проценты от общей производительности, если не меньше.

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

Берём 8*16байт шину данных, формируем из неё 8 x86 инструкций и отправляем на 8м декодеров. Исходные 8*16байт данных сдвигаем на число найденных x86 инструкций с учётом их размера и добавляем новую порцию данных. Где здесь появляется боттлнек? Естественно необходимо каждый такт считывать до 8*16 байт данных, в худшем случае. Подкачка последовательных инструкций — не является боттленком уже довольно давно.

Где здесь появляется боттлнек?
там, где вы должны границы каждой инструкции вычислить, то есть проанализировать что там вам на входе пришло, причем по байту. А потом надо это разреженно разложить в вашу «шину данных» (кеш инструкций), чтобы оно было выровнено. А на ARM просто берутся N*4 байт и подаются на N декодеров. И еще учтите что в вашей схеме кеш инструкций требует 16 байт на инструкцию, а на ARM — 4. То есть вам для равной производительности уже нужен кеш в четыре раза больше и в четыре раза быстрее. Собственно, поэтому x86 процы сразу декодируют невыровненные инструкции, настолько быстро, насколько могут

В аппаратуре боттлнек не может появится при вычислении границ инструкций, если последнее выполняется за такт. Если получится сделать логику, выполняющую разбиение куска данных на 8м инструкций и укладывающееся в такт, то получится только дополнительная стадия, логика и лишнее потребление на переключения. Никаких падений производительности здесь не появится.
Шина данных у меня — это строка или несколько строк кэша L1I. Разрежено разложить — это то, что я и написал. Вариантов этого разложение я могу придумать 2-3 уже сходу. Достаточно определить номер бита, с которого начинается конкретная из 8-ми инструкций. Число комбинаций конечное значение. Можно даже вручную их перебрать. Да, отличается от ARM, но особой проблемы нет, а тем более падения производительности.
Кэш не оперирует инструкциями и он не требует значений, зависящих от размера инструкций. Здесь нет большой разницы, учитывая ещё и то, что x86 код поплотнее будет, чем у ARM. Более того, у x86 есть ещё кэш microop, а это уже подобие RISC от ARM. Кстати, этот microop кэш можно трактовать как ещё и декодер инструкций, раз результат его работы такой же, как у декодера.

Достаточно определить номер бита, с которого начинается конкретная из 8-ми инструкций.
ну ну вся идея в том, что на определение этого номера бита нужно времени как на сам декодинг.
Если получится сделать логику, выполняющую разбиение куска данных на 8м инструкций и укладывающееся в такт, то получится только дополнительная стадия, логика и лишнее потребление на переключения
если вы можете реализовать такую логику, смело идите работать в intel на миллионную зарплату.
Да, отличается от ARM, но особой проблемы нет, а тем более падения производительности.
вот в вашей спекуляции проблемы нет, а по факту, в реальных x64 процах, есть.
Здесь нет большой разницы, учитывая ещё и то, что x86 код поплотнее будет, чем у ARM
в теории да, в реальности нет.

Вообще-то нет. Только делать это надо не совсем на чипе. Ну смотрите — да, на запуске х86 вынуждена будет работать по старым принципам, чтобы не ухудшить время запуска… но после запуска процессор чаще всего не настолько нагружен. Блин, ну посмотрите вы на Java (и прочие языки с VM, например тот же PHP, c#) и её JIT. Суть в чём? Есть ветка выполнения? Постоянно выполняется с одними и теми же условиями? Ну так перегоним её в простой код и поставим специальную команду, которая вызовает переход на обычный режим работы, если выйдем за пределы заданных условий. Т.е. 90% времени получаем изрядное ускорение работы. Да, в современных CPU есть что-то похожее. Если правильно помню термин "прогностика выполняемых операций" (атака на этот механизм вскрыла недавно Meltdown и прочие уязвимости iпроцессоров). Но ведь можно прогнозировать не только ветку выполнения, но пока процессор "idle — отдыхает" вполне же можно весь (ну или хотя бы базовый) код приложения загнать в преобразователь, который и сформирует очередь упрощённых команд. Да это потребует взаимодействия как минимум ОСи и процессора… но так они уже этим занимаются, просто придётся углубить синергию.

это называется «спекулятивное исполнение». Софтовая трансляция инструкций всяко будет медленнее чем реализованная в железе.

А в чём проблема, если ОСь знает, что надо протранслировать, а CPU — как? Ну т.е. вот загрузились, упало потребление — и командой загрузить остатки кода в оптимизитор на CPU. Нет, о проблеме, что это всё надо согласовать, ОСи надо догадаться и прочие проблемы — я в курсе, я про то, что как минимум часть бутылочно горлышка можно и обойти. И не самую маленькую, надобно сказать, часть.

Вообще в статье подано, как-будто AMD внезапно спохватились и вот недавно выпустили свои APU… которые подаются как слабое подобие M1. Однакось первые APU увидели свет лет 5 назад. И единственное различие с M1 — там не вшит вендорлок, замаскированный доп. функционалом "шифровального" юнита и L1-L3 поменьше (вроде бы)… Ах да, ещё можеть быть графическое ядро не очень-то имеет доступ к кешу. В общем статья… я даже не знаю, как такую степень безграмотного маркетинга назвать… Но пипл, да, схавает, они же не знают правду.

Раньше, G-Series SoC у красных был в 13 году.

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

У меня один глаз кровоточит, а второй, кажется мироточит. Интересный эффект.

Как же мы жили раньше без него. Или даже жизнью назвать это нельзя
Можно было бы ещё предзаписывать маску с оптимальным ОоОЕ, чтобы процессор не тратил время на угадывание.
Тогда Эльбрус получится же

Зачем я это прочитал? Реклама, в худшем виде.
Причем, идея то хорошая м1 красавчик, но проприетарный.

Я понимаю что это перевод оригинальной статьи, но первый абзац — "Эти чипы быстрые. Очень быстрые. Но почему? В чем магия?"
И далее по тексту…
Мне просто интересно, что там Apple замутил такого магического ;) На сущесвующей ARM

Потому что он не настолько красавчик, насколько тут расписано. У АМД например эта концепция и технологии уже лет так как бы не 10 в апу, интел аналогично. Все современные процессоры — SoC, которым не обязателен южный мост, в которых куча ускорителей, инструкций для ускорения конкретных алгоритмов, относительно универсальных инструкций avx, превращающих их в подобие видеокарты (в плане скорости обработки матриц).


По факту — основное преимущество М1 — закрытая платформа и 5нм техпроцесс, если не сравнивать с процами из древних времён типа 9000-10000 интела, а сравнить с 5000 АМД — разница уже не столь впечатляет.

а сравнить с 5000 АМД — разница уже не столь впечатляет.

А этот 5000 АМД сможет работать в такой коробочке, как мак?

Ну я немного не в курсе, на каком сейчас этапе выпуск 5000u и 5000h, которые туда влезут, но там в общем-то и от 4000u отрыв не такой большой, как в рекламных проспектах — вполне укладывается в прирост от более тонкого техпроцесса.

, но там в общем-то и от 4000u отрыв не такой большой
берем гикбенч: у 4800U 1200 однопоток, у M1 1700. Это разница в более чем 40%! У 5800U порядка 1500. Да, ryzen'ы побыстрее в многопотоке, процентов на 30, потому что там по 8 ядер, но вот загвоздка: с условным восьмиядерным M2X от apple они уже тягаться не смогут. Ну, напрямую. Посредством эксклюзивности экосистемы apple конечно же будут.

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

Ну гикбенч почти целиком ложится на ускорители у эпла

Вы где такое прочитали?
Geekbench полностью исполняется на CPU ядрах. Ни один тест там не использует ускорители, все алгоритмы реализованы в инструкциях CPU.

Да откуда вы это взяли? Берем простое сравнение, листаем вниз страницы, смотрим сколько какой проц набрал в какой отдельной секции гикбенча, видим что M1 отлично себя проявляет в секциях, связанных например с обработкой текста, а они не особо ускоряются сопроцессорами.
А если взять zip/unzip маковский, то оказывается что m1 (из air) примерно в 1.5 раза медленнее, чем 10700 из iMac 2020 на одно ядро.

Пи до миллиона знаков вообще в 2 раза медленнее посчитал, но тут я допускаю что мог что-то не так под m1 скомпилировать.
А если взять zip/unzip маковский, то оказывается что m1 (из air) примерно в 1.5 раза медленнее, чем 10700 из iMac 2020 на одно ядро.
а где мы можем ознакомиться с результатом этого замера?
Я для себя мерял. Просто брал gzip -9 и mkv файл на 2.3 ГБ. iMac управился за 46-47сек, air m1 за более, чем 1:10 (разлет от 12 до 18 сек после минуты).
Повторял несколько раз, процессор в обоих случаях загружен на 100%, накопитель практически гулял.

Макбук я покупал не себе, просто решил прогнать несколько тестов перед тем, как его подарить.

Полезных для себя тестов провести не смог так, как homebrew нативно под m1 на тот момент не было, а руками ставить кучу всего было лениво.
Шутки ради попробовал собрать Кликхаус через rosetta, но это прогнозируемо заняло в десятки раз больше времени, чем на iMac с 64ГБ памяти.
Проблема «специальных блоков» для выполнения конкретных задач — к ним нужно специальное ПО, привязанное именно к конкретным блокам. Через год выйдет процессор Apple M2+ с другим «декодером» или блоком DSP. И вот незадача: все ПО от M1 к нему уже не подходит. Именно по этой причине Intel и AMD не идут по такому пути. У них, кстати, очень большой набор специальных команд на все случаи жизни. Это тоже с натяжкой можно назвать «специализированными блоками», однако никто не заставляет их использовать. Это просто расширение для основного набора команд и от их наличия или отсутствия меняется только производительность в узком классе задач.
А бенчмарки для этих процессоров — вообще маркетинговая ерунда. Да, конвейерный DSP уделает обычный процессор в задачах, под которые заточен. Как и «декодер». Но в первую очередь, они требуют создания специальных условий для правильной работы — подготовленные данные, определенная последовательность действий и формат результата, во вторых — они имеют узкую специализацию. В задачах широкого профиля (а не задачах показывать кинчик очередному адепту яблочного культа) классический процессор будет быстрее и удобнее. Но ничего, я думаю, мессии из самой передовой компании человечества расскажут массам, как оно должно быть на самом деле и массы это схавают, конечно. Эта статья — яркий пример.
Но ничего, я думаю, мессии из самой передовой компании человечества расскажут массам, как оно должно быть на самом деле и массы это схавают, конечно.

Сначала массы анонимно пройдутся минусометом по тем кто пытается мыслить и сравнивать, а не слепо жрать чо дали.
UFO just landed and posted this here
Проблема «специальных блоков» для выполнения конкретных задач — к ним нужно специальное ПО, привязанное именно к конкретным блокам. Через год выйдет процессор Apple M2+ с другим «декодером» или блоком DSP. И вот незадача: все ПО от M1 к нему уже не подходит.

Это не так работает. Разрабатывая приложение под MacOS вы не используете инструкции сопроцессоров напрямую, а вызываете разные фреймворки, которые под капотом сами выбирают, на чём исполнять команды: на CPU, GPU, Neural Engine, ISP… Для нового чипа с новыми ускорителями будет поддержка в фреймворке, и вам вообще ничего не надо в приложении менять.


Именно по этой причине Intel и AMD не идут по такому пути. У них, кстати, очень большой набор специальных команд на все случаи жизни. Это тоже с натяжкой можно назвать «специализированными блоками», однако никто не заставляет их использовать. Это просто расширение для основного набора команд и от их наличия или отсутствия меняется только производительность в узком классе задач.

А вот у Intel и AMD как раз есть эта проблема, из-за чего совместимость приложений регулярно ломается, если программист не предусмотрел фоллбеки с AVX, например (желательно тоже оптимизированные).


А бенчмарки для этих процессоров — вообще маркетинговая ерунда. Да, конвейерный DSP уделает обычный процессор в задачах, под которые заточен. Как и «декодер». Но в первую очередь, они требуют создания специальных условий для правильной работы — подготовленные данные, определенная последовательность действий и формат результата, во вторых — они имеют узкую специализацию. В задачах широкого профиля (а не задачах показывать кинчик очередному адепту яблочного культа) классический процессор будет быстрее и удобнее.

Вы ни в бенчмарках не разбираетесь, ни статью не прочитали внимательно.

UFO just landed and posted this here
Еще есть bitcode. При сборке приложения в итоговый бинарник добавляется кроме машинного кода промежуточный LLVM IR ассемблер.

После выпуска нового процессора можно уже написанные и существующие программы оптимизировать под новые «фишки» из bitcode. ABI при этом не меняется.
Bitcode используется около 4х лет для приложений в AppStore.
к ним нужно специальное ПО, привязанное именно к конкретным блокам.

Что же это за ПО такое? Прям в регистры железу пишет небось? =)
Про операционную систему слышали что-нибудь?

Именно по этой причине Intel и AMD не идут по такому пути.

А по какому?
Давайте ознакомимся с «начинкой» процессора Интел:
Мы тут можем увидеть GPU, программируемый DSP для ускорения кодеков, IPU для обработки изображений с камеры.


В задачах широкого профиля (а не задачах показывать кинчик очередному адепту яблочного культа) классический процессор будет быстрее и удобнее

А в M1 не «классический процессор»? =)
О, сколько нам открытий чудных(с)

Через год выйдет процессор Apple M2+ с другим «декодером» или блоком DSP. И вот незадача: все ПО от M1 к нему уже не подходит.

Пишете нам из будущего?
Странно, ведь ПО написанное под A7, прекрасно работает на A14 и M1. Чудеса.

Ладно, ну вот у меня на руках свеженький MacBook Pro 2020, но на чипе от Intel.
Стоит ли продавать его что бы купить новенький с M1, или ноуты от Apple с чипами Intel теперь стали уже никому не нужным хламом?

UFO just landed and posted this here

Смотря чем вы занимаетесь. Уже достаточно много софта на M1 подвезли, но далеко еще не весь. Docker, например, отсутствует.
Статус "портированности" можно посмотреть тут: https://isapplesiliconready.com/

UFO just landed and posted this here
Я, если хотите, могу с этим помочь. Люблю, знаете ли раритет. Куплю хлам, недорого.
UFO just landed and posted this here
UFO just landed and posted this here
ни в коем случае. м1 сырой и далеко не так всё радужно, как пытаются доказать фанатики и маркетологи

но 13-и дюмовые маки на интеле с 2016-го года ужасны — постоянный перегрев. m1 в этом корпусе просто лучше.

так это претензия к производителю ноутбука, а не к производителю процессора.
что может процессор, какие ему нужны режимы — не секрет на этапе проектирования ноутбука.

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

UFO just landed and posted this here
UFO just landed and posted this here
О каком перегреве речь не понятно. МакБук 13 2019 в средней комплектации, рендеры 4к проектов, включает вентилятор на полную крайне редко.
У вас он есть? В каком месте он сырой? Перешел с макбука с 2020 (который ice lake i5) на m1 и ни секунды не пожалел об этом.
У вас он есть? В каком месте он сырой? Перешел с макбука с 2020 (который ice lake i5) на m1 и ни секунды не пожалел об этом.


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

Как там со временем работы на одной зарядке на вашем устройстве?
Тогда как объясните тот факт, что чип m1 по производительности лучше практически всех мобильных процессоров intel?
UFO just landed and posted this here
Справляется с работой — оставляйте. Не справляется — продавайте.
Какая разница, что внутри?
Стоит. У меня был макбук про 13 с 2020 года с i5-1038ng7, 16gb ram. Покупал прошлой осенью. Вот недавно продал и купил новый с m1. Операционной памяти столько же, SSD такого же размера, а стоил на 30т рублей дешевле, чем тот с процессором intel.

Никаких лагов. Как intel не греется вообще — вентилятор не слышал ни разу. Сама ОС очень отзывчивая, многие программы, запускающиеся через rosetta2 работают быстрее, чем нативно на intel. Батарея вообще на другом уровне, ты наверняка видел разные тесты в инете.

Но все это не только благодаря m1, но также ssd быстрее, чем у всех предыдущих моделей.

Единственный минус — меньше портов usb c, у предыдущего было 4, а тут только 2.

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

Главный пункт забыли: потому что за рекламу было заплачено не меньше чем за разработку.

Реклама это хорошо, но она не ускоряет работу ноутбука и не увеличивает время его работы. Если бы реклама была ложной то ситуация была бы как с Киберпанком. А владельцы М1 буков как раз в восторге (за редкими исключениями).
Главный пункт забыли: потому что за рекламу было заплачено не меньше чем за разработку.

Реклама это хорошо, но она не ускоряет работу ноутбука и не увеличивает время его работы.


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

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

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

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

за рекламу было заплачено не меньше чем за разработку.
Если отмотаться далеко назад — Apple заплатила гораздо гораздо. Она очень долго и усердно к этому шла. Чтобы выжать все соки из своего процессора — им нужно было самим собирать свои ноутбуки. Чтобы программы шли идеально — они несколько раз переписывали ось.
Контроль маркетов — а значит если надо будет перекомпилировать половину всего софта — они заставят всех это сделать.
Контроль над обновлениями ПО и отказ от обратной совместимости — нельзя откатиться на прошлую версию ОС, нельзя установить (найти) прошлую версию софта, итд.
Полный контроль устанавливаемого ПО (в т.ч. постоянная отправка телеметрии — что за ПО установлено) нужно для понимания, не поломают ли они используемое всеми ПО.
Тот же переход на Swift для IOS тоже рассчитан на то, что компания сама будет контролировать компиляцию софта.
Всё сделано для того, чтобы в итоге можно было подавать хорошо оптимизированные программы в свой специально подобранный под частые параметры процессор.
Ну и повторюсь — Apple не создаёт универсальные процессоры, которые будут одинаково хороши в любых задачах — от игр до серверов. Они не поддерживают сотни моделей разнородного железа. Они собирают компьютеры под себя, тестят всё на нескольких моделях, и из-за этого им не надо беспокоиться о миллионах других компьютерах и поддержке старого софта.
А это значит, что когда Apple разрастётся, и пройдет много лет, то рано или поздно Apple придется снова задаться вопросом: Поддерживать ли обратную совместимость, или нет? По всем последним решениям Apple — им проще отказаться от старого железа, чем продолжать это поддерживать. НО в отличии от Intel, у Apple есть контроль над компиляторами, и поэтому они могут на это влиять своим рубильником. А Intel на это влияет гораздо меньше, и сама оказалась в тупике.
Вроде как амд 4000(и тем более 5000) серии быстрее м1 в многопотоке.(имею в виду мобильные 15 ваттные камни). Так что не до конца ясно откуда столько пафоса.

AMD 4800u имеет 8 полноценных ядер и SMT. Apple M1 — 4 производительных ядра и 4 слабеньких энергоэффективных (они дают примерно ту же производительность, что второй SMT поток на ядре). При этом 4800u выигрывает в лучшем случае (в разных ноутбуках производительность может отличаться) на 25% в Cinebench, при двухкратном реальном энергопотреблении (не путайте с TDP).

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

Энергопотребление CPU M1 измерено очень точно, и в тесте Cinebench R23 составляет 15 Вт. Максимальное наблюдаемое потребление — 21 Вт при полной загрузке всех исполняемых блоков синтетической нагрузкой.
4800u при этом может потреблять до 35 Вт в Cinebench даже в профиле на "15 Вт TDP": https://next.lab501.ro/notebook/english-lenovo-ideapad-s540-13are-vs-13iml-amd-ryzen-7-4800u-vs-intel-core-i7-10710u/14

по тестам которые я видел, вроде как до 30 ватт может доходить
это если бенчмарк в полку утилизирует и GPU, и CPU.
А какой смысл из попугаев, если я выше скинул видео в котором четко видно, что при реальном использовании M1 тупо лагает. Какой смысл с ноутбука который умирает при включении пары копий ворда да браузера.

Вы можете сколько угодно смотреть истеричные ролики с YouTube, зарабатывающие на хайпе, и делать вид, что это реальное положение вещей.
У меня этот M1 стоит на столе и не лагает от слова совсем. Даже перекодирование видео на всех ядрах (не на GPU) можно заметить только заглянув в диспетчер задач. Я вообще не знаю, как его заставить тормозить. При первоначальной установке у меня происходила индексация диска, скачивание и распознавание фото-библиотеки, импорт музыкальной библиотеки, установка XCode и ещё десятка приложений, а я при этом браузил вэб в Firefox и Safari и не видел даже намёка на подлагивания.
А то, что он компилирует код в 2 раза быстрее моего VR-ready десктопа и рабочего макбука — это уже приятный бонус.

компилирует код в 2 раза быстрее моего VR-ready десктопа

Странное сравнение, учитывая что VR в первую очередь хочет мощную видеокарту…

Другого десктопа у меня просто нет.
Без более-менее приличного процессора большинство игр не будет укладываться в стабильные 90 fps. Впрочем, у меня старенький i5-6600K, разогнанный до 4.5 ГГц, и он уже далеко не "топ".
Но надо понимать, с чем я сравниваю — M1 это энергоэффективный чип для ультрабуков, самый слабый из всего, что будет выпущено под Apple Silicon.

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

Объективное сравние, тесты, видео работы… зачем нам это, мы просто обзовем это все истеричным хайпом с ютуба и отбросим. Объективность уровня «фанат эпл». Поговорку про глаза и мочеиспускание приводить не буду, но вы поняли. Если что то и «хайпует» то это вот эта статья с ее пафосом и кричащим заголовком.
При первоначальной установке у меня происходила индексация диска, скачивание и распознавание фото-библиотеки, импорт музыкальной библиотеки, установка XCode и ещё десятка приложений, а я при этом браузил вэб в Firefox и Safari

Я уже понял что объективной оценки производительности от вас ждать не стоит, но вы мне расскажите как вы столько всего ужали в свои 6-7Гб оперативы и что бы «НИЛАГАЕТ!!11». С 4Гб просто интерент серфить больновато уже, а тут столько работы.
Объективное сравние, тесты, видео работы… зачем нам это, мы просто обзовем это все истеричным хайпом с ютуба и отбросим. Объективность уровня «фанат эпл». Поговорку про глаза и мочеиспускание приводить не буду, но вы поняли. Если что то и «хайпует» то это вот эта статья с ее пафосом и кричащим заголовком.

Объективными сравнениями завален весь интернет, но вы выбрали самый трешовый источник информации — русскоязычный ютюб. Вылезайте из пузыря.


Я уже понял что объективной оценки производительности от вас ждать не стоит, но вы мне расскажите как вы столько всего ужали в свои 6-7Гб оперативы и что бы «НИЛАГАЕТ!!11». С 4Гб просто интерент серфить больновато уже, а тут столько работы.

У меня 16 Гб модель, и я не могу представить, чем забить всю память сейчас. Вот так выглядит Safari с 25 вкладками, Firefox с 10 видео (youtube + twitch), XCode с небольшим iOS-проектом и запущенным приложением с локальным дебагером, IDEA с немаленьким Rust-проектом, VSCode с другим rust-проектом, торрент-клиент, мессенджеры, почта, и ещё десяток небольших приложений, которые не в топе памяти. Обычно я работаю с одним проектом одновременно, но закрывать приложения я перестал, т.к. это не влияет на работу всего остального.

Простите, что не в тему, но у вас реально целая помойка в ОЗУ сейчас: два браузера с 35 вкладками (Вы же их постоянно все смотрите, не так ли? Закладки ведь дураки придумали, лучше открытую вкладку держать), какофония от одновременно работающих YT + Twitch (Или вы их не смотрите одновременно? А если не смотрите — зачем указываете?), 3 параллельно запущенных IDE с разными проектами (И вы их все 3 параллельно разрабатываете? И не забываете смотреть YT и Twitch при этом? И 33 других вкладки посещать постоянно)…

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


два браузера с 35 вкладками (Вы же их постоянно все смотрите, не так ли? Закладки ведь дураки придумали, лучше открытую вкладку держать)

Да, закладками я перестал пользоваться много лет назад, когда их количество перевалило за 10k. Я просто не возвращался к ним никогда, так уж мой мозг устроен.
А в процессе исследования новой темы у меня и 100-200 вкладок бывает, из которых какое-то количество останется "дочитать завтра" или переедет на iPad, чтобы дочитать за ужином/перед сном.


какофония от одновременно работающих YT + Twitch (Или вы их не смотрите одновременно? А если не смотрите — зачем указываете?)

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


3 параллельно запущенных IDE с разными проектами (И вы их все 3 параллельно разрабатываете?

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


UPD: Выглядит это примерно вот так, если собрать все столы на один монитор.

UFO just landed and posted this here
Простите, что не в тему, но у вас реально целая помойка в ОЗУ сейчас: два браузера с 35 вкладками

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

браузеры уже лет 5 как агрессивно отключают неиспользуемые вкладки.
по моему даже излишне агрессивно.

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

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

слишком агрессивно экономят ресурсы современные браузеры.

но 35 вкладок им не страшны.
3 параллельно запущенных IDE с разными проектами (И вы их все 3 параллельно разрабатываете? И не забываете смотреть YT и Twitch при этом? И 33 других вкладки посещать постоянно)…


вы хотите запретить это делать людям?
ну вот у меня 3 IDE, по сути с одним проектом: frontend, backend, db.
я время от времени правлю код в каждом из них, правки связанные друг с другом.

да Youtube поёт сейчас.
открыт Хабр.
открыто несколько вкладок с документацией.
2 мессенджера.
подключение к серверу по ssh, 2 штуки.
файловый менеджер, 2 штуки.

обычная рабочая обстановка.

что тут такого необычного вы увидели у вашего оппонента?
Ни в коем случае не собираюсь ничего никому запрещать. И я даже понимаю, если кто-то одновременно разрабатывает связанные проекты. Я не понимаю кучи вкладок, особенно если это Chrome, ведь тогда от названий остаются одни иконки и приходится наводить мышь и ждать пока он соизволит показать эту плашку с полным названием.
Я просто с трудом представляю, как люди ухитряются не закрывать программы в течение долгого времени. Возможно, это вызвано тем, что я сам и всё моё окружение пользуется Windows-компьютерами и периодически запускает компьютерные игры, или в силу ряда причин вынуждены периодически перезагружаться — оба эти сценария ставят крест на «вечнооткрытых» IDE как минимум. На рабочем компьютере я тоже порой оставляю IDE на пару дней, но не более того.
Ещё раз повторюсь: я ни в коем случае не осуждаю тех, кто не закрывает программы, и не призываю их менять свои привычки. Я просто оцениваю их со своей колокольни и удивляюсь.
Возможно, это вызвано тем, что я сам и всё моё окружение пользуется Windows-компьютерами и периодически запускает компьютерные игры, или в силу ряда причин вынуждены периодически перезагружаться — оба эти сценария ставят крест на «вечнооткрытых» IDE как минимум.


Не вижу связи.

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

Сервер знаю с Windows года 2 не перезагружался.

Если играть в довольно прожорливые игры, то на время игры либо всё лишнее стоит закрывать (IDE очень уж любят отъедать память как не в себя), либо изначально иметь условно не 16, а 32 ГБ памяти, а это лишние материальные затраты ради сомнительной выгоды (ведь SSD сейчас и так дают IDE быстро запускаться, да проект загружать).
Из-за особенностей удалёнки мне дома приходится перезагружаться между системами каждый рабочий день — тут тоже не до «хранения» открытых программ (по крайней мере дома).
Если играть в довольно прожорливые игры, то на время игры либо всё лишнее стоит закрывать (IDE очень уж любят отъедать память как не в себя), либо изначально иметь условно не 16, а 32 ГБ памяти, а это лишние материальные затраты ради сомнительной выгоды (ведь SSD сейчас и так дают IDE быстро запускаться, да проект загружать).


Мы живем в разных вселенных, видимо.

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

32 Г для разработчика, имхо, вообще не роскошь и стоит копейки.

мы определенно живем в разных вселенных.

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

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

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

Из-за особенностей удалёнки мне дома приходится перезагружаться между системами каждый рабочий день

ни в коем случае не учу вас жить
но просто подмывает напомнить о существовании виртуальных машин.
Зачем? На современном SSD вытеснение и своп работают практически незаметно для пользователя.
Игры упираются в видео практически всегда.
Многие приложения, особенно со всякими «машинами» вроде JVM (привет JetBrains) или нынче модные Electron'ные (VS Code) любят нет-нет, да и сделать что-нибудь эдакое со своей памятью (почему бы не запустить GC просто потому что прошло Х времени с последнего запуска?) Это не съедает много CPU, но заставляет подгружать куски приложения, потенциально выгружая части используемых сейчас (например, текстуры). Это расстраивает и, порой, создаёт внезапные подгрузки там, где их обычно не бывает.
Что-то вы странное рассказываете.
Давайте уточним.
Вы говорите «не хочу ждать пока прогрузится pycharm после запуска игры, потому я его выключу и включу заново?». А что, запуск заново у вас быстрее?
В современных компах 8+ ядер. Даже если запущенный в фоне продукт «что-то странное» сделает — ничего не поменяется по большому счету.
А уж подгрузка текстур из ssd — это сотая доля секунды, кроме случая когда у вас на саму игру памяти не хватает.
Ну кроме обновления винды, оно прекращает игру, да.
Я говорю «не хочу, чтоб во время игры у меня возникали просадки FPS только из-за того, что VS Code внезапно решил обновить плагин или просто GCшнуться, что привело к помещению части игровой памяти в подкачку».
А запустить IDE заново после игры (или даже после работы в другой IDE) мне не сложно, тем более что в это время очень удобно пойти, например, заварить чай.
Так это у вас просто мало памяти. Добавьте чуток.
У меня всего-то 16 и я не помню когда я прошлый раз IDE выключал, чтоб поиграть. Я вообще ее включаю только после очередного обновления ОС и больше не выключаю.
У меня тоже 16ГБ, но ноутбук, так что адекватно расширять не могу, к сожалению (если не заменять плашки на более ёмкие). Вообще, я тоже не всегда закрываю всё подряд, условная Factorio без проблем работает (или просто не заметны проблемы). А вот в время Dark Souls несколько раз бывали неприятные лаги, которые пропали когда я стал закрывать всё ненужное.
Зависит от объёма, нужного игре. Некоторым и 16 будет мало.
Зависит от объёма, нужного игре. Некоторым и 16 будет мало.


Маньяки. На ноутах играть.

Я так подозреваю не на специализированных игровых ноутах за оверхдохрена денег, а на обычных рабочих машинках.
Я не понимаю кучи вкладок, особенно если это Chrome, ведь тогда от названий остаются одни иконки и приходится наводить мышь и ждать пока он соизволит показать эту плашку с полным названием.
В чём проблема распределить их между окнами, в рабочих столах в разных сеансах?
Я знаю слишком мало людей, кому понравились виртуальные рабочие столы в Windows. В macOS ими пользуются поголовно, в Linux — тоже практически все, а вот в Windows как-то нет

Я думаю, они слишком поздно появились, и до сих пор не имеют очевидного интерфейса управления.
Большинство пользователей (включая меня) давно наработали паттерны работы в Windows, которые не задействуют использование рабочих столов.

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Я не понимаю кучи вкладок, особенно если это Chrome, ведь тогда от названий остаются одни иконки и приходится наводить мышь и ждать пока он соизволит показать эту плашку с полным названием.

Вот именно поэтому я всегда буду продолжать пользоваться Файрфоксом. Триста вкладок в 4 окнах сейчас, на прошлом 800 было, и ничего, полёт нормальный. Ну, раз в полмесяца перезапускать приходится, потому что 12 гиг ОЗУ всего...

А вот эти 800 это что? Для себя я понял что больше 2 десятков это уже мертвый груз.
Объективными сравнениями завален весь интернет

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

Исключительно ваше ничем не подтвержденное мнение.
У меня 16 Гб модель

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

Компиляция в Xcode в сравнении с топовым intel Macbook Pro 16. На этом же канале много разных сравнений разных систем сборки (только смотреть надо внимательно, часть компиляторов во время записи видео ещё работала через Rosetta).
Сравнение компиляции Webkit на разных компьютерах.
Горка разных бенчмарков сред исполнения.
По поводу монтирования видео достаточно в Youtube вбить "M1 vs MBP 16", их там тысячи от разных видеоблоггеров.
Просто бенчмарки есть на anandtech, notebookcheck и многих других сайтах.


Купить наугад сырой продукт в максимальной комплектации.

Я его взял на пробу новой архитектуры, с возможностью вернуть в первые 2 недели. Теперь это мой основной компьютер.
Всем бы такие "сырые" продукты.

Из всего что вы привели не бенчмарк только вебкит. И только в нем почему то не видно «впечатляющей производительности». Совпадение? :)

Всем бы такие «сырые» продукты.

А вот не надо, нравится вам — ешьте хоть лопатой. Остальных кормить не надо.
Из всего что вы привели не бенчмарк только вебкит. И только в нем почему то не видно «впечатляющей производительности». Совпадение? :)

Если сборка большого C++ проекта на скорости 12-ядерного Mac Pro не впечатляет, то мне нечего вам больше предложить.


А вот не надо, нравится вам — ешьте хоть лопатой. Остальных кормить не надо.

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

Вы вообще ничего не привели, кроме одного криворукого видеоблоггера

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

Брюзжу и буду брюзжать. А знаете почему? Потому что только так можно чего то добиться. Сломать донаты в батлфронт, перенести принятие новой политики приватности ватсап, удалить игру из каталога сони… можно добиться реально значимых вещей. Зато вот с молчанием можно творить чо угодно, убирать разьем 3.5, зарядку, телефон скоро из комплекта уберут потому что вы молчите. Теперь нормальный производительный процессор поменяли на дешевую арм затычку, а вы опять молчите. С молчаливого согласия теперь нельзя телефоном новым пользоваться если у эпл обед. И это тоже происходит с вашего молчаливого одобрения, но вы продолжайте молчать и ешьте дальше большой лопатой что вам насыпали.
хотя в глаза эти маки не видели

Ага, не хватало мне еще рублем поддерживать этот корпоративный гадюшник.
Не криворукого и не одного, а двух) То что вы их лично ненавидите не делает их етсты неправильными или ошибочными.

А то, что вы их так любите, не делает их обзоры объективным отражением действительности.


Брюзжу и буду брюзжать. А знаете почему? Потому что только так можно чего то добиться.

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


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

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


Про остальное я воздержусь комментировать, это уже просто нерациональный хейт.

которые через год будет невозможно продать

Простите не-мак-пользователя, но зачем продавать компьютер всего через год использования? Они настолько устаревает, что уже не годится для задач? Или это просто ритуал фанатов Apple, как и с айфонами (вышел новый == нужно покупать новый)? Просто я свой вполне бюджетный ноутбук 2012 года выпуска обновил только в 2018.
Спрашиваю не хейта ради, а из-за любопытства.

Потому что через год ноутбуки выйдут настолько лучше, что многие захотят обновиться. Редизайн + следующее поколение CPU и GPU.
Ну и софт начнёт оптимизироваться под ARM в первую очередь, ML-библиотеки поддержат Neural Engine и т.д.


Старые модели не станут электронным мусором, они ещё лет 5 будут поддерживаться, софт будет выходить. Но, на контрасте даже с M1, их привлекательность на рынке упадёт.


Или это просто ритуал фанатов Apple, как и с айфонами

Мне вот интересно, откуда у людей вот такие стереотипы про "фанатов", "ритуалы" и тому подобное?

Что-то сильно оптимистично.
Могу поспорить, что так как описано и через 3-4 года не будет.

Ну через полтора-два года новых маков на Intel больше не будет.
Многие разработчики под macOS уже пересели на M1, т.к. выпускать ARM-версии приложений надо, и производительности хватает с головой.
Разработка под iOS тоже сильно упрощается и ускоряется — симулятор больше не нужен, и это приличный кусок рынка недорогих (и б/y) маков.
Поколение Air перед M1 уже можно продать за более-менее нормальные деньги только тому, кто про M1 ничего не слышал — а таких людей будет всё меньше.

Разработка под iOS тоже сильно упрощается и ускоряется — симулятор больше не нужен

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

Запуск симулятора и заливка в него приложения занимали ненулевое время. А сам симулятор ел ресурсы, которых на слабых машинах и так немного.

Запуск симулятора и заливка в него приложения занимали ненулевое время. А сам симулятор ел ресурсы, которых на слабых машинах и так немного.


дык это только процессор эмулировать не нужно.
а ОС-то нужно.

радикального ускорения не выйдет.

Процессор и раньше не эмулировался, билды собирались под x86, и в симуляторе была недо-iOS, пробрасывающая множество фреймворков в macOS.


А сейчас iOS-приложения вообще нативно запускаются без симуляторов и прослоек.

К сожалению, я лично знаю по меньшей мере 4-х людей (один даже был моим тимлидом), которые именно фанаты — не могут устоять перед новым айфоном, покупают в течение месяца после выхода. Я не утверждаю что все пользователи продукции Apple поступают именно так, но почему-то именно среди пользователей Apple много фанатов-обновляющихся, т.к. среди пользователей Windows/Linux/Android я подобное встречал только когда постоянно обновляют железо чтоб постоянно играть на убермаксимальных настройках (порой даже чаще, чем раз в год выходит)
т.к. среди пользователей Windows/Linux/Android я подобное встречал только когда постоянно обновляют железо чтоб постоянно играть на убермаксимальных настройках (порой даже чаще, чем раз в год выходит)


во что?
что способно утилизировать производительность NVidia 3090?
какая игра?

VR-игры, например. Там всегда можно ещё чуть-чуть добавить supersampling и повысить частоту :)

Так вы только что назвали самую топовую видеокарту Nvidia (почему-то не 2090б хотя она буквально на год старше), конечно её мало что может прямо сейчас в потолок загрузить.
А вот выйдет 4090 с ещё большей памятью, ещё большим количеством вычислительных блоков — глядишь и Cyberpunk в 8к потянет, хотя сейчас на RTX3090 это не очень получается
Любая в 4к+RTX, даже майнкрафт, простигосподи.
Мне вот интересно, откуда у людей вот такие стереотипы про «фанатов», «ритуалы» и тому подобное?
Из новостей, когда за новым устройством люди занимают огромные очереди на улице, даже в мороз.
UFO just landed and posted this here
и нагоняемая искусственно толпа.
А потом эта искусственная толпа рассказывает как правильно держать устройство.
Мне вот интересно, откуда у людей вот такие стереотипы про «фанатов», «ритуалы» и тому подобное?

Из новостей и наблюдения за окружающими. Вышел новый iЭпл, сразу начинается истерика со стояниями в очередях и срочной необходимостью купить. По возможности в первый же день, что вообще уже за гранью.
Человеку который покупает новый комп, когда старый сгорел или когда перестал тянуть текущие задачи, это выглядит, как минимум, подобно смене авто по причине переполнения пепельницы. Поэтому и такие стереотипы.
Из новостей и наблюдения за окружающими. Вышел новый iЭпл, сразу начинается истерика со стояниями в очередях и срочной необходимостью купить. По возможности в первый же день, что вообще уже за гранью.
1. Какой процент пользователей Эппл составляют такие люди?
2. И в чём вообще проблема? Если человека после 25 что-то радует как подростка и он может себе это что-то позволить — почему бы ему и не купить себе эту вещь, чем бы она не была — телефоном, часами или консолью?
что заставит их взять более слабые и горячие Intel-модели, которые через год будет невозможно продать.
Только в младших моделях ставят новомодные чипы, в то время как в остальной технике ещё используется интел, а их уже боятся покупать. Получается, что старшие модели устареют ещё быстрее. Как же хвалёная поддержка? А ещё, злые языки говорят, что туда можно поставить другую операционную систему, врут значит?
Получается, что старшие модели устареют ещё быстрее.

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


Как же хвалёная поддержка?

Она есть. А что с ней?


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

Не врут, можно конечно. Это штатная возможность.

Младшие модели уже устарели и сняты с производства. Сложно будет устареть быстрее.
То, что они сняты с производства, ещё не означает, что ими никто больше не владеет. Если кто-то купил эту модель, например за день до анонса M1, то сколько лет он ещё сможет ею пользоваться?
Не врут, можно конечно. Это штатная возможность.
Тогда почему их нельзя продать просто как x64 ноутбуки?
Если кто-то купил эту модель, например за день до анонса M1, то сколько лет он ещё сможет ею пользоваться?

Примерно 3-5 лет до прекращения обновлений ОС, 6-7 до сокращения сервисной поддержки. Пользоваться можно — пока не помрёт.


Тогда почему их нельзя продать просто как x64 ноутбуки?

Можно, конечно, но выбор "просто x64 ноутбуков" на вторичном рынке огромен, и цены там падают очень быстро.

То есть сейчас купленное изделие будет работать лет 5 с полной поддержкой, и потом ещё несколько лет можно будет пользоваться приложениями не поднявшими системные требования. Не вижу никаких проблем, с учётом того, что в магазинах продаются ноутбуки с eMMC на 16 Гб, которыми проблематично пользоваться уже сейчас.
Представьте, через год нам понадобился ноутбук, конкретно макбук. Денег у нас немного, поэтому смотрим на доски объявлений. А там есть Intel-Air позапрошлого года, и M1-Air прошлого года, с производительностью в 2-3 раза выше, и потенциально более длительной поддержкой. Какой должна быть разница в цене, чтобы предпочесть Intel-версию?
и потенциально более длительной поддержкой
Хорошо сказано, «потенциально». По факту, даже без смены архитектуры, системные требования растут, обновления операционной системы перестают выходить. Что там со смартфонами, сколько поколений назад можно использовать без ограничений? И именно по этой причине пятилетний должен быть дешевле однолетнего. А если учесть вендорлок, то получается, что уже сейчас говорят о прекращении поддержки, когда она ещё не прекращена. Микрософт вполне себе продлевал поддержку операционных систем. Или вы подскажите какое ещё устройство сейчас признанно устаревающим, с гарантированным концом жизни? А дата прекращения поддержки моноблоков будет ещё позже, как минимум нужно ждать следующего поколения, а это ещё дополнительный год.
Хорошо сказано, «потенциально».

"Потенциально" — потому что никто не мешает в свою очередь продать его до окончания поддержки.


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

Никто об этом не говорит, это моя экстраполяция на основе предыдущих лет.


И вообще, я не к тому веду.
Для покупателя на вторичном рынке intel версия будет сильно менее привлекательной, чем arm — разница в производительности и времени автономной работы слишком велика. Поэтому цены будут падать, чтобы компенсировать эту разницу.

«Потенциально» — потому что никто не мешает в свою очередь продать его до окончания поддержки.
В одном месте вы говорите, что продать не получится, сейчас говорите, что получится.
Никто об этом не говорит, это моя экстраполяция на основе предыдущих лет.
Вы не первый человек, говорящий о том, чтобы не покупать на интеле.
Поэтому цены будут падать, чтобы компенсировать эту разницу.
Либо это будут делать люди, боящиеся никому не продать, либо цены на arm варианты будут падать медленнее.
А там есть Intel-Air позапрошлого года, и M1-Air прошлого года, с производительностью в 2-3 раза выше


Вы о каких моделях конкретно говорите, упомянув про разницу в 2-3 раза?

Конкретно про предыдущий Air, выпущенный в начале 2020 года.

M1-Air может быть хоть в два раза дешевле, но я куплю Intel-Air (если решения других производителей в 13" формате будут не очень) в силу того, что нужная ОС и нужный софт у меня x86_64 only. И да, мак рассматривается только как железо, ОС мне не нужна.

Скорее всего, решения других производителей сейчас уже будут лучше почти по всем параметрам — с выходом Tiger Lake, расширением ассортимента ноутбуков на Zen 2, скорым появлением Zen 3.

И да, мак рассматривается только как железо, ОС мне не нужна.
в таком случае air будет плохим выбором.
И да, мак рассматривается только как железо, ОС мне не нужна.

Сила Mac в том что это железо + ОС.

Если вам только железо — то ведущие производители-конкуренты предложат вам свои топовые устройства по той же цене и с тем же функционалом (за очень редким исключением) и с тем же качеством, — что и Apple
Ну так если фанаты яблок потащат свои старые Air-ы на всякие ebay/avito и не будут задирать цену так, что в итоге окажется, что intel-air стоит дешевле, чем к примеру dell xps 13, то почему бы и не взять, ось я снесу, т.к. она мне только «посидеть в интернетах» обеспечить сможет?
UFO just landed and posted this here
производительный процессор поменяли на дешевую арм затычку

ARM не значит медленно. Это просто набор инструкций. Уже сотни раз писали что x86 ISA ограничивает количество декодируемых инструкций за раз.

x86 ISA не меняется и это не предвидится. Да и смысла мало. Маленькие шаги наделают фрагментацию. И так куча разных векторных расширений.
Думаю они правильно сделали.

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

Серьезно? Кто-то передумает из-за вашего мнения?
Я например смотрю тесты и все. Ну норм. Смотрю цены и… возможно беру. Как-то так наверно происходит обьективный выбор. Не?
Иногда очень хочется отследить кто первым вбросил этот тезис про «x86 ограничивает количество декодируемых инструкций за такт» и преимущество ARM. Все его бездумно повторяют, потому что не имеют ни малейшего представления что это значит)

Реальное бутылочное горлышко в OOOE ядрах это не декодер, а Register Renaming. Представьте что нужно переименовать 8 инструкций за такт. Блок переименования видит все 8, ему нужно выяснить зависимости между всеми 8 коммандами, выделить все sources для всех комманд и прочитать таблицы переименования регистров для их всех. Сложность переименования как минимум квадратичная от количества комманд в такт. То есть блок переименования на 8 инструкций будет в 4 раза больше, чем блок переименования на 4 инструкции. И это еще в лучшем случае. Не забываем, что сама процедура переименования должна завершиться на один такт, потому в следующем такте будут новые инструкции.
И все это верно для любого OOOE и вообще не зависит от оригинального instruction set.

AMD сделали renaming шириной в 6 в Ryzen, Intel шириной в 5 в IceLake. Сделать его шириной в 8 и одновременно сохранить заоблачные частоты под 5Hgz физически невозмодно на данный момент. Даже на частотах, на которых работает M1 возникает много вопросов «как они это смогли?» Есть предположение, что Apple использует скрытые предположения в блок register renaming, например что их компилятор гарантирует что в блоке из 8 инструкций никогда не будет 8 взаимно зависимых. Это бы сильно облегчило работу register renaming. Он может даже поддерживать этот случай, но сбрасываться на 4 инструкции в такт, например. Тогда на хорошем коде (а Apple контролирует свой код) все будет хорошо, а у остальных будет просто все работать.

Есть еще несколько вопросов типа «как они это сделали» вроде Data Cache 128KB на 3 такта latency или 8 блоков выполнения комманд. Это конечно все возможно, но тоже может считаться великим технологическим достижением. Но самая богатая в мире кампания может себе позволить набрать самых крутых CPU инженеров и сделать самый крутой в мире процессор на пару поколений обгонящий всех конкурентов.
Но это еще не значит, что они смогут удержать пальму первенства надолго. M1 возможно самое мощной монолитное ядро которое вообще можно построить на нынешних технологиях. Дальше нужно что-то другое, например много-кластерное ядро. Но создать такое, чтобы работало лучше монолитного прошлого поколения пока никто не смог. Посмотрим если гипотетический M3 или M4 сможет. От M2 можно обидать разве что минорных изменений и увеличения частоты, они уже на пределе.
Иногда очень хочется отследить кто первым вбросил этот тезис про «x86 ограничивает количество декодируемых инструкций за такт»

Я не так выразился. Имею ввиду что нужно сделать 3+ операций чтобы выяснить следующее смещение и параллельно начать декодировать следующую инструкцию. Получется конвеер из инструкций с долгой задержкой между.

Но это еще не значит, что они смогут удержать пальму первенства надолго.

Ни разу не собирался такое заявлять.

Насчет ренэйминга отчасти да, O(n^2) это конечно плохо. Но в идеале код может быть построен компилятором так что это не потребуется.
В общем современные компиляторы неплохо с этим справляются, как минимум в простых случаях. И используют небольшое подмножество инструкций что тут(x86) что там(ARM).

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

Я не стал много расписывать, но думаю эта проблема имеет свое место. (Может я и не прав, но идем далее).
Декодеры отрабатывают немного транслируя код внутрь. И там уже программа выполняется. В случай интенсивного кода(какй-нибудь вычислительный цикл) декодеры вообще не играют роли. Расход на них стремится к нулю по мере длительности исполнения этого цикла.

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

Наверно еще не качественный код на скриптовом языке может попадать в этот кейс.

Интересен ваш вариант.

Edit:
Подумал еще про ренэйминг.

То есть блок переименования на 8 инструкций будет в 4 раза больше, чем блок переименования на 4 инструкции. И это еще в лучшем случае.

Не факт что блок этот — жесткий hardware. Может там простой(ые) процессор(ы) с ПЗУ. Хотя я точно не могу говорить как лучше.

Несмотря на такую сложность можно брать 8 micro uops за раз и начинать с нескольких мест… Может таким образом константа подрезается.
Иногда очень хочется отследить кто первым вбросил этот тезис про «x86 ограничивает количество декодируемых инструкций за такт» и преимущество ARM
так статья об этом )
Реальное бутылочное горлышко в OOOE ядрах это не декодер, а Register Renaming. Представьте что нужно переименовать 8 инструкций за такт.
а в ARM 32 регистра общего назначения вместо 16 в x64, это упрощает или усложняет жизнь?
От M2 можно обидать разве что минорных изменений и увеличения частоты, они уже на пределе
ну на сегодня ядро в M1 быстрое. По факту от apple ждут процов с примерно такими же ядрами, но большим их числом.
а в ARM 32 регистра общего назначения вместо 16 в x64, это упрощает или усложняет жизнь?

В ARM это упрощает, но не значительно.

Физических регистров все равно сильно больше.

Хотя некоторые оценили.
superpowered.com/64-bit-arm-optimization-audio-signal-processing

Иногда упоминаются кейсы что возможность явного(руками) доступа к большему числу регистров лучше.
так статья об этом )


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

И Интел и AMD тоже смогут. Подтянуться года через 2-4.

а в ARM 32 регистра общего назначения вместо 16 в x64, это упрощает или усложняет жизнь?


Никак не влияет. У AVX тоже 32 регистра. Имя регистра будет на один бит длиннее, а алгоритмы все те же самые.
Никак не влияет. У AVX тоже 32 регистра. Имя регистра будет на один бит длиннее, а алгоритмы все те же самые.


Хм, быть того не может. Зачем же в процессе увеличили количество явно доступных регистров?

Если для удобства, то, на ассемблере даже в те времена мало кто писал.

И разве это не упрощает переименование регистров в случае когда программисту/компилятору доступно больше регистров?
Хм, быть того не может. Зачем же в процессе увеличили количество явно доступных регистров?


Количество регистров никак не позволяет делать алгоритмы в железе проще. Если есть больше регистров, компилятор сможет ими пользоваться и хранить в них какие-то значения. Скорее всего это позволит сократить количество обращений к памяти потому что больше переменных можно будет просто хранить в регистрах. В результате код может будет немного оптимальнее. Но не факт, потому что существующие ABI требуют сохранять регистры в стек на входе в каждую функцию а потом восстанавливать на выходе, что тоже накладно.
Но да, в среднем количество LOAD и STORE на Arm в программах на Aarch64 процентов на 10 меньше, в основном благодаря 32 регистрам.
Количество регистров никак не позволяет делать алгоритмы в железе проще.
Я этого не говорил. Это бред.

Я как раз про распределение переменных по явно доступным регистрам. Меньше load store и потенциально меньше проблем в renaming. Что вы далее и написали.

Но действительно с тех пор больше не увеличивают. Значит смысла нет.
Я как раз про распределение переменных по явно доступным регистрам. Меньше load store и потенциально меньше проблем в renaming. Что вы далее и написали.


Потенциально это не про hardware. Hardware должен умень кушать worst case который от количества регистров не меняется.