Почему нет 128-битных процессоров Intel или AMD Ryzen?



Почему нет 128-битных процессоров Intel или AMD Ryzen?

Часто существует негласное убеждение, что 64-битная скорость процессоров быстрее. 64-битная производительность на самом деле часто хуже 32-битной. По той же причине, 128-битный компьютер будет еще медленнее. Так почему же 64-битная медленнее? Почему нет 128-битных процессоров? давайте рассмотрим.

Что лучше Intel Core i5-8400 или AMD Ryzen 5-2400G?

Почему нет 128-битных процессоров Intel или AMD Ryzen?

Это целая уйма вещей. Расширение набора инструкций для нового режима адресации (AMODE), вероятно, будет использовать более крупные инструкции. (за исключением случаев, когда длина инструкций постоянна, как архитектура IBM PowerPC). Также более крупные константы и указатели, что приводит к увеличению размера программ.

Что затем приводит к ухудшению производительности памяти, так как появляются более частые пропуски в кеше. И больше трансляций виртуальной памяти в физическую (TLB) … и так далее.

На самом деле, 64-битная производительность вызывает такое беспокойство, что в IBM Java у нас есть 64-битный режим. В котором 64-битные указатели сжимаются до 32-битных ( ).-Xcompressedrefs

Вопрос глобальной переработки всего кода…

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

«Остальные», скорее всего, не просто перекомпилируются, даже в идеальном случае. Так как у программистов есть привычка жестко кодировать константы, которые в один прекрасный день меняются. 

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

По сути, единственная причина увеличения AMODE — возможность доступа ко всей этой памяти в одном адресном пространстве. То есть, представьте, что вы пишете программу или алгоритм, который требует непрерывного доступа всего лишь к 4 ГБ (32-разрядным). 

Огромные объемы данных

4 ГБ — это МНОГО данных для доступа «одновременно». Теперь увеличьте это до 16 эксабайт (64-битных). Это просто невероятное количество данных, к которым нужно обращаться из одной программы. Возможно, какая-то «Распределенная ОС», которая имеет 2 в 128 степени байтов памяти сможет управлять всем этим и делиться?

Так много данных, это действительно трудно осознать. Более вероятно, что мы будем использовать подход «разделяй и властвуй», чтобы сделать это управляемым процессом. (Подумайте о модели быстрой сортировки.То есть рекурсивно обрабатывайте эти «простые для понимания» куски объемом 2 ГБ, а затем объединяйте их в виде потока. Другой пример — просмотр фильма. Каждый загружает несколько МБ данных из хранилища, распаковывает их, отправляет для отображения на экране, затем снова то-же самое).

И для этого можно написать такую ​​программу, как 24-битное приложение! Теперь модно иметь такой «бесполезный»и глючный код подкачки, но альтернативой является «убедить множество людей потратить миллионы на новый AMODE». Почему нет 128-битных процессоров? А нужны ли они…

А справится ли ядро?

Тогда возникает вопрос, может ли одно ядро ​​процессора действительно обрабатывать все эти 128 разрядов байт данных. Сегодня много-поточных программ не так много, даже на 64 разряда. (Обратите внимание, что мы переходим к многоядерности, а однопоточная производительность в значительной степени остановилась).

С другой стороны, AMODE не имеет ничего общего с тем, какие операции можно выполнять или какие регистры размера можно использовать. Хотите сделать 64-битное умножение в 32-битном приложении? Конечно!

 Никто не мешает архитектуре определять инструкции, которые работают с 128-битными регистрами … или 256-битными регистрами … или 512-битными регистрами. Это уже делается сегодня с SIMD (на Intel, SSE, AVX и т. Д.). 

Благодаря поддержке ОС для переключения контекста все эти регистры могут быть доступны из 32-битного приложения.

В заключение. AMODE предназначен исключительно для адресации данных из единого адресного пространства. Так что .. Не просто автоматически компилируйте ваше приложение . Оно не будет быстрее!-m64

Рубрика: Интересное

2 ответа “Почему нет 128-битных процессоров Intel или AMD Ryzen?

  1. Откуда сказочка «сегодня многопоточных программ не так много», слышал её 10 лет назад, когда их уже было довольно много.

  2. Проблема еще в том, что физически транзисторы не могут уменьшаться до бесконечности и повышение частот мало что компенсируют даже на 128 полноценных битах и то это ненадолго. Скоро подойдет лимит по тех процессу(для компьютеров обычных пользователей).
    И есть вероятность, что придется переделывать саму схема технику всех материнских плат, процессоров и т.д. в сторону некоего увеличения площади для размещения компонентов. Если уж так не хочется переписывать весь софт… и на это много денег нужно будет. Так что это бессмысленно.
    И на подходе как раз уже квантовые процессоры, хотя пока не понятно, на скольких «битах» они работают. У Гугл уже есть 53-кубитовый процессор Sycamore.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *