The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Уязвимость в процессорах AMD Zen2, позволяющая определить содержимое регистров в других процессах, opennews (??), 24-Июл-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


17. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +5 +/
Сообщение от anonymous (??), 25-Июл-23, 00:34 
со времен пентиума Klamath виртуализировано, 1997.
Ответить | Правка | Наверх | Cообщить модератору

19. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +2 +/
Сообщение от Аноним (19), 25-Июл-23, 00:54 
Микрокод-то был, но инструкции-то не были реализованы в виде эмуляции их во внутреннем софте процессора.
Ответить | Правка | Наверх | Cообщить модератору

25. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от Аноним (-), 25-Июл-23, 05:31 
> Микрокод-то был, но инструкции-то не были реализованы в виде эмуляции их во
> внутреннем софте процессора.

uCode ROM в CISC всегда был именно этим - разбивал инструкции с входного интерфейса на группу микроопераций. И это фича дизайна большинства CISC. Просто в старых моделях он был не апдейтабельный - SRAM для "патчей" приделали вот как раз где-то с того момента.

Ответить | Правка | Наверх | Cообщить модератору

31. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +1 +/
Сообщение от n00by (ok), 25-Июл-23, 08:30 
Если почитать талмуд внимательнее, то окажется, что "uCode ROM" применялось далеко не для всех инструкций. Мне лениво искать старый талмуд, где написано подробнее, вот из актуального:

16.2.1.1 Instruction Decoder
Some IA instructions that perform complex tasks require a lookup in the microcode sequencer ROM
(MSROM) to decode them into a multiple uop flow. To determine which instructions require an MSROM
lookup, see the instruction latency/bandwidth table in Section 16.3.
Fewer instructions require MSROM lookup in the Goldmont Plus and Goldmont microarchitecture than in
the Silvermont microarchitecture, though the Silvermont microarchitecture also improved significantly
over prior generations in this area; Section 16.3 provides more details. It is advisable to avoid ucode
flows where possible. Table 16-9 provides alternate non-MSROM instruction sequences that can replace
an instruction that decodes from MSROM.

Ответить | Правка | Наверх | Cообщить модератору

103. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от Аноним (-), 25-Июл-23, 18:50 
> Если почитать талмуд внимательнее,

Я не молюсь на ваш е...й талмуд и немного обобщил историю развития "CISC вообще". Это так сложно понять?

> то окажется, что "uCode ROM" применялось далеко не для всех инструкций.

Я это где-то рядом писал. Простые команды могли и напрямую выполняться.

> Мне лениво искать старый талмуд, где написано подробнее, вот из актуального:

Старый и не очень надо. Да и интелский талмуд в топике про Zen это такое себе. Насколько я знаю у AMD и Intel есть определенные отличия в микрокоде и том как он обновляется. Если кому реально интересно в интернете ищется разбор структуры микрокода и тех и других, но для Zen вроде все же никто так не делал. Можно предположить что это продолжает предыдущие families, но там могут быть и иные доразвития идеи.

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

Ответить | Правка | Наверх | Cообщить модератору

139. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от n00by (ok), 26-Июл-23, 10:22 
>> Если почитать талмуд внимательнее,
> Я не молюсь на ваш е...й талмуд и немного обобщил историю развития
> "CISC вообще". Это так сложно понять?

Что бы обобщать, надобно иметь совпадения во всех частных случаях -- вот что понять действительно сложно.

>> то окажется, что "uCode ROM" применялось далеко не для всех инструкций.
> Я это где-то рядом писал. Простые команды могли и напрямую выполняться.

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

>> Мне лениво искать старый талмуд, где написано подробнее, вот из актуального:
> Старый и не очень надо.

"___всегда___ был именно этим" (ц).

> Да и интелский талмуд в топике про Zen это такое себе.

Вот уж и правда, "обобщение" оно такое - Интел одно, а АМД совершенно другое. В талмуде АМД (старом) есть даже термины Direct Path и Vector Patch.


Ответить | Правка | Наверх | Cообщить модератору

156. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от Аноним (-), 26-Июл-23, 19:25 
>> "CISC вообще". Это так сложно понять?
> Что бы обобщать, надобно иметь совпадения во всех частных случаях --

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

> вот что понять действительно сложно.

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

> Ого, совершенно внезапно оказывается, что я всего лишь попробовал подтвердить написанные
> где-то рядом слова эксперта, а он привычно принялся спорить.

Я могу оспорить утверждения с которыми не согласен и согласиться с которыми согласен. Даже в 1 сообщении. Что тут не так? :)

> "___всегда___ был именно этим" (ц).

Насколько я смог оттрекать историю развития CISC - microcoded дизайн был с самой зари становления направления. Как таковой, uCode ROM одна из характерных фич дизайна по которым идет деление RISC vs CISC. Если у штуки есть uCode ROM - дизайн сложно считать за RISC. Это характерный паттерн дизайна CISC'ов. А то что со временем доперли его апдейтабельным делать - логично в общем то. Проц с реконфигуряемым набором команд в общем то было бы довольно круто. Но ессно вывесить это для ALL сыкотно по ряду причин.

> Вот уж и правда, "обобщение" оно такое - Интел одно, а АМД
> совершенно другое. В талмуде АМД (старом) есть даже термины Direct Path
> и Vector Patch.

Ну я накопал разбор именно структуры uCode для амд эпохи 10h примерно, где исследователи ответили на вопросы "как это на самом деле" а не "что посчитало возможным AMD написать о своих внутренностях". Более новые вероятно продолжили те тренды, разумеется, доразвив и став сложнее. В частности добавив аутентификацию а потом и шифрование, если я правильно помню. Впрочем где-то к Zen у амд вообще основательно поменялись некоторые вещи, в частности появился "в обязаловку" SMU (system management unit, как я понимаю мелкий сервисный проц) и все стало гибче и заDRMленее, поскольку большие ядра на самом деле так то - secondary а первую скрипку играют маленькие гаденыши и их фирмвари, запускающие этих, больших. Так что там даже знание о том как стартовал x86 теперь не актуально, о как. Теперь большое core просто ждет пока его маленький гаденыш сконфигуряет и запустит его. А заодно и DRAM сразу ему проинитит - так что x86 уже и не надо изгаляться с cache-as-RAM вон там, как я понимаю.

Ответить | Правка | Наверх | Cообщить модератору

47. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +1 +/
Сообщение от anonymous (??), 25-Июл-23, 10:37 
Не, именно с него все началосьб очень хорошо помню. И мотивация была в том что надоело через 1 инструкцию вручную упорядочивать предыдущие пентиумы чтобы оптимально загружать оба параллельных конвейера, он сам переупорядочит микрооперации как надо, не спрашивая разрешения у пользователя. Именно тогда искусство программировать на ассемблере с учетом особенностей и сдулось. А я то как гордился что знал об огромной задержке операции деления(ну это то все знают) и главное смене режима округления (например с ближайшего на обрубание). Вынесешь смену округления за цикл и он в 50 раз быстрее - лепота. А вот после Klamath все эти знания превратились в тыкву. Именно с тех пор программирование стало унылым рутинным отстоем.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

120. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от An2 (?), 25-Июл-23, 21:41 
Разве не с первого out-of-order интеловского Pentium Pro?
Ответить | Правка | Наверх | Cообщить модератору

140. "Уязвимость в процессорах AMD Zen2, позволяющая определить со..."  +/
Сообщение от n00by (ok), 26-Июл-23, 10:29 
Даже сейчас можно получить заметный выигрыш, понимая работу процессора. Другое дело, что зачастую достаточно писать на Си.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру