Были, конечно. Жуткий пример этого в ответе ниже. ClearType, делал чуть лучше, но хинтинг там всё ещё двигал буквы, от чего страдали бежбуквенные расстояния, а в низких размерах ещё искажались очертания символов.
Они выглядели всё-таки лучше, потому что именно в Mojave отключили субпиксельное сглаживание.
И мне такое сглаживание без хинтинга нравилось куда больше, чем скачущие буквы в Windows.
А у Эпла — энергоэффективный проц, но которому до игрового далеко.
Внезапно, конкретно этот процессор предназначен для ультрабуков. И в нём горка сопроцессоров для задач, которые не нужны (сейчас) в играх.
Какой смысл вообще считать транзисторы, а тем более делать какие-то глубокомысленные выводы?
Этот комментарий не стоит ничего без ссылок на измерения. i7-1165G7 бустится до 50 Вт при однопоточной нагрузке, а при ограничении потребления до 15 Вт вообще печален.
Ryzen 4800U при многопоточной нагрузке начинает обходить M1 только при 26 Вт и 12 потоках на 8 ядрах. Напомню, M1 имеет только 4 производительных ядра, и потребляет 15 Вт.
2 Ну если у вас есть процессор, который УЖЕ умеет все это, просто для трех команд в параллель, то как вы думаете, сложно ли переделать его, чтоб он делал то же самое для восьми? Ответ: это просто.
Это становится далеко не так просто, когда команды переменной длины (врождённый недостаток x86 в сравнении с ARMv8). А алгоритмы реордеринга становятся экспоненциально сложнее с ростом буфера и количества исполняемых блоков, если вспомнить, что они должны отрабатывать за единицы тактов.
Сделать так, чтоб при этом он не стал работать медленнее и жрать сильно больше — гораздо сложнее.
Собственно, Apple это и сделала.
3 Подождите, причем здесь смартфоны? Мы говорим про НОУТБУЧНЫЙ проц! Не видел ни одного хипстера в кофейне с самсунговским ноутом
Apple начала делать широкую микроархитектуру на смартфонных чипах, много лет назад. M1 появился как следствие.
4 Разработка дорогая. Один американский инженер стоит им как минимум $120к в год. Думаю, они делали этот чип минимум 2-3 года. Сколько народу работало — 100 или 1000 — я не знаю, но можете прикинуть сами.
Т.е. вы намекаете, что ни у кого в мире нет такой сильной команды инженеров, как у Apple? Да, это вполне вероятно. Именно это я и имел в виду под "никто другой в индустрии такого сделать не может".
Вам осталось только ответить на ваш же вопрос:
AMD серверные процессоры с ARM-овым декодером лет 10 назад стала разрабатывать — и что? Технически это вообще не проблема — тогда вопрос на засыпку: в чем же проблема? :)
Проблема в том, что в среднем в обычном general-purpose коде всего четыре-пять команд между соседними командами ветвлений/переходов. И можно параллельно декодировать хоть 100, но КПД будет как у паровоза (если только это не спецпроцессор для DSP или AI).
Но мы видим на реальном коде, что M1 работает практически со скоростью топовых Zen 3, только потребляет 5 Вт на ядро. Так что КПД получился куда лучше, чем у любых конкурентов.
Да, глубина reorder buffer-а меняется одной строкой в коде
Ахаха. А как заполнять его, менять очерёдность команд и шедулить по исполнительным блокам та же строка кода придумает.
Western Digital, например, скупил у Оракла всю команду разработчиков OpenSPARC для своих новых RISC-V — я уверен, что они могли бы сделать такое. Интел мог бы, АМД мог бы, Самсунг мог бы, Квалкомм мог бы, ХайСиликон мог бы.
Вас послушаешь, так все "могли бы", но не сделали. Samsung пытался некоторое время назад, и свернул направление. А они на своих фабриках печатаются, и смартфонов больше Apple выпускают.
Просто это дорого, и кроме Эппла никто не смог бы такой процессор монетизировать.
Что именно дорого? Можете привести расчёты, насколько именно дороже сделать ядро шире? И почему это не оправдывает конкурентного преимущества: снижения энергопотребления в 3-4 раза?
Если бы AMD выпустил такой процессор, Intel в лаптопах просто перестали бы покупать совсем.
Это не выжимка, а пересказ предисловия к статье-объяснению, где дальше рассказывается, что не всё так просто.
So heterogenous computing is part of the reason but not the sole reason. The fast general purpose CPU cores on the M1, called Firestorm are genuinely fast.
У M1 производительные ядра по площади дай бог 15% занимают. Да, они широкие, с большим количеством исполнительных блоков. Но и производительность соответствующую на ядро дают.
В каком "большом тесте"?
Вот реальные замеры 4800U в Cinebench R23 с измерением потребления.
Если ему реально ограничить потребление до 15 Вт, то он сильно проигрывает M1.
Выигрывать он начинает при 26 Вт и только от 12 тредов на 8 ядрах, когда SMT начинает работать.
И все эти результаты и в однопотоке и в многопотоке далеки от максимальных измеренных, которые приведены в таблице выше.
Через 5 лет и Apple не будет стоять на месте. Но да, только будущее покажет.
Меня раздражает, как некоторые люди отмахиваются от многолетней инженерной работы, которая наконец начала давать существенные плоды, комментариями типа "Ничем принципиально M1 не отличается от других процессоров. Все то, о чем понаписано по ссылке, было изобретено еще в конце 1980-х."
Современные процессоры — фантастически сложные устройства, разрабатываемые в жёстких рамках физических, алгоритмических, финансовых и просто человеческих ограничений.
И тут приходит такой "эксперт" и высказывает своё "ценное мнение", что тут просто техпроцесс получше купили и память разогнали, а так ничего особенного.
Просто рисковая ставка на увеличение процессора в ширину, которое до этого почти всегда приводило к росту энергопотребления. Просто reorder buffer в 3 раза больше конкурентов и алгоритмы, способные выжать из него пользу. Просто лучше branch predictor https://twitter.com/andreif7/status/1307645405883183104
Ничего особенного, просто никто другой в индустрии такого сделать не может.
Вы статью по ссылке открыли вообще? Там простыми словами пытаются донести технологические преимущества микроархитектуры CPU, разработанной Apple. Как именно у них получается выполнять на десятки процентов больше инструкций на такт в сравнении с последними x86.
А вы что находите в ответ? Кривой пересказ предисловия этой же статьи сводящийся к "Ну там сопроцессоры, нечестно."
Он там расположился бы чуть выше A13, если бы эти замеры делали сейчас, а не до выпуска A14 и M1.
Улучшенный тех. процесс + больший результат в Geekbench при примерно том же максимуме потребления.
Да я в курсе :)
Но для современных JIT-компиляторов JS вполне полезная инструкция, дающая аж до 2% ускорения на некоторых примерах, поэтому можно с натяжкой сказать, что это специализация под браузер.
Efika MX Smartbook выходил вообще за 10 лет до этого. И тоже можно было что-то про него сказать.
Но вот с производительностью у него не задалось, да и софт никто портировать не бросился. Как и с Pinebook.
Вы же отлично понимаете, что это не произвольный набор непонятно чего, а именно что отобранные и проверенные целым комитетом куски кода. И SPEC отвечает за результаты своей репутацией.
Были, конечно. Жуткий пример этого в ответе ниже. ClearType, делал чуть лучше, но хинтинг там всё ещё двигал буквы, от чего страдали бежбуквенные расстояния, а в низких размерах ещё искажались очертания символов.
Они выглядели всё-таки лучше, потому что именно в Mojave отключили субпиксельное сглаживание.
И мне такое сглаживание без хинтинга нравилось куда больше, чем скачущие буквы в Windows.
Внезапно, конкретно этот процессор предназначен для ультрабуков. И в нём горка сопроцессоров для задач, которые не нужны (сейчас) в играх.
Какой смысл вообще считать транзисторы, а тем более делать какие-то глубокомысленные выводы?
Там указан TDP из спецификации, который к реальному потреблению энергии имеет мало отношения.
Этот комментарий не стоит ничего без ссылок на измерения.
i7-1165G7 бустится до 50 Вт при однопоточной нагрузке, а при ограничении потребления до 15 Вт вообще печален.
Ryzen 4800U при многопоточной нагрузке начинает обходить M1 только при 26 Вт и 12 потоках на 8 ядрах. Напомню, M1 имеет только 4 производительных ядра, и потребляет 15 Вт.
Это становится далеко не так просто, когда команды переменной длины (врождённый недостаток x86 в сравнении с ARMv8). А алгоритмы реордеринга становятся экспоненциально сложнее с ростом буфера и количества исполняемых блоков, если вспомнить, что они должны отрабатывать за единицы тактов.
Собственно, Apple это и сделала.
Apple начала делать широкую микроархитектуру на смартфонных чипах, много лет назад. M1 появился как следствие.
Т.е. вы намекаете, что ни у кого в мире нет такой сильной команды инженеров, как у Apple? Да, это вполне вероятно. Именно это я и имел в виду под "никто другой в индустрии такого сделать не может".
Вам осталось только ответить на ваш же вопрос:
Но мы видим на реальном коде, что M1 работает практически со скоростью топовых Zen 3, только потребляет 5 Вт на ядро. Так что КПД получился куда лучше, чем у любых конкурентов.
Ахаха. А как заполнять его, менять очерёдность команд и шедулить по исполнительным блокам та же строка кода придумает.
Вас послушаешь, так все "могли бы", но не сделали. Samsung пытался некоторое время назад, и свернул направление. А они на своих фабриках печатаются, и смартфонов больше Apple выпускают.
Что именно дорого? Можете привести расчёты, насколько именно дороже сделать ядро шире? И почему это не оправдывает конкурентного преимущества: снижения энергопотребления в 3-4 раза?
Если бы AMD выпустил такой процессор, Intel в лаптопах просто перестали бы покупать совсем.
Это не выжимка, а пересказ предисловия к статье-объяснению, где дальше рассказывается, что не всё так просто.
У M1 производительные ядра по площади дай бог 15% занимают. Да, они широкие, с большим количеством исполнительных блоков. Но и производительность соответствующую на ядро дают.
В каком "большом тесте"?
Вот реальные замеры 4800U в Cinebench R23 с измерением потребления.
Если ему реально ограничить потребление до 15 Вт, то он сильно проигрывает M1.
Выигрывать он начинает при 26 Вт и только от 12 тредов на 8 ядрах, когда SMT начинает работать.
И все эти результаты и в однопотоке и в многопотоке далеки от максимальных измеренных, которые приведены в таблице выше.
Через 5 лет и Apple не будет стоять на месте. Но да, только будущее покажет.
Меня раздражает, как некоторые люди отмахиваются от многолетней инженерной работы, которая наконец начала давать существенные плоды, комментариями типа "Ничем принципиально M1 не отличается от других процессоров. Все то, о чем понаписано по ссылке, было изобретено еще в конце 1980-х."
Современные процессоры — фантастически сложные устройства, разрабатываемые в жёстких рамках физических, алгоритмических, финансовых и просто человеческих ограничений.
И тут приходит такой "эксперт" и высказывает своё "ценное мнение", что тут просто техпроцесс получше купили и память разогнали, а так ничего особенного.
Просто рисковая ставка на увеличение процессора в ширину, которое до этого почти всегда приводило к росту энергопотребления. Просто reorder buffer в 3 раза больше конкурентов и алгоритмы, способные выжать из него пользу. Просто лучше branch predictor https://twitter.com/andreif7/status/1307645405883183104
Ничего особенного, просто никто другой в индустрии такого сделать не может.
Вы статью по ссылке открыли вообще? Там простыми словами пытаются донести технологические преимущества микроархитектуры CPU, разработанной Apple. Как именно у них получается выполнять на десятки процентов больше инструкций на такт в сравнении с последними x86.
А вы что находите в ответ? Кривой пересказ предисловия этой же статьи сводящийся к "Ну там сопроцессоры, нечестно."
Вот тут в статье очень хорошее объяснение "на пальцах": https://news.ycombinator.com/item?id=25257932
Это был ответ на:
Мне кажется, картинка достаточно хорошо иллюстрирует кардинальный разрыв в этой метрике между ядрами от Apple и Zen 2.
Zen 3 в мобильном исполнении на данный момент не существует, а десктопные версии плохо помещаются на этот график по горизонтальной оси:
https://www.reddit.com/r/hardware/comments/jrt0ay/apple_announces_the_apple_silicon_m1_ditching_x86/gbxiaaf/
Он там расположился бы чуть выше A13, если бы эти замеры делали сейчас, а не до выпуска A14 и M1.
Улучшенный тех. процесс + больший результат в Geekbench при примерно том же максимуме потребления.
Да я в курсе :)
Но для современных JIT-компиляторов JS вполне полезная инструкция, дающая аж до 2% ускорения на некоторых примерах, поэтому можно с натяжкой сказать, что это специализация под браузер.
Я уже показывал вам результаты цивилизации через Rosetta:
https://www.tomsguide.com/news/macbook-pro-m1-benchmarks-are-in-and-they-destroy-intel
https://www.macworld.com/article/3597198/13-inch-macbook-pro-m1-review-amazing-breakthroughs-in-processing-and-battery-performance.html
И нет, это не "при прочих равных" и не про процессор.
У вас есть какие-то конкретные факты, что "более реальные" задачи выполняются на M1 хуже, чем на Intel аналогах, при прочих равных?
Если нет, тогда к чему эти спекуляции про затачивание под тесты?
Efika MX Smartbook выходил вообще за 10 лет до этого. И тоже можно было что-то про него сказать.
Но вот с производительностью у него не задалось, да и софт никто портировать не бросился. Как и с Pinebook.
Вы же отлично понимаете, что это не произвольный набор непонятно чего, а именно что отобранные и проверенные целым комитетом куски кода. И SPEC отвечает за результаты своей репутацией.