The OpenNET Project / Index page

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



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

Оглавление

Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..., opennews (??), 25-Июн-17, (0) [смотреть все]

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


6. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –15 +/
Сообщение от Аноним (-), 25-Июн-17, 21:58 
> спустя несколько месяцев в списке изменений в очередном обновлении микрокода от Intel было замечено упоминание исправления, которое решало проблему в OCaml

Это что за обновления микрокода процессора? Как давно процессоры стали программируемыми?

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

8. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +6 +/
Сообщение от Anonplus (?), 25-Июн-17, 22:02 
С разморозкой, уже не первый десяток лет процессоры поддерживают обновление микрокода

https://wiki.archlinux.org/index.php/Microcode_(Русский)

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

11. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –1 +/
Сообщение от Аноним (-), 25-Июн-17, 22:09 
Так это что получается, современные процессоры - это интерпретаторы?
Ответить | Правка | Наверх | Cообщить модератору

18. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +2 +/
Сообщение от Аноним (-), 25-Июн-17, 22:22 
какие нафиг современные
"в конце концов из конца в конец" зайди в вику и прочти
https://ru.wikipedia.org/wiki/%D0%9C%D0%...
пп "Причины появления и использования"
предложено было в 1953, реализовано в 1970х
Ответить | Правка | Наверх | Cообщить модератору

31. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –1 +/
Сообщение от Аноним (-), 25-Июн-17, 23:16 
Почитал, спасибо. У меня сложилось впечатление что меня снова обманули. Это даже "не просто резиновые женщины - это китайские резиновые из китайской резины. Печаль :(
Ответить | Правка | Наверх | Cообщить модератору

49. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +4 +/
Сообщение от Orduemail (ok), 26-Июн-17, 03:09 
Вообще любой процессор -- это интерпретатор. В простейшем варианте -- это декодер команд, который инициирует какие-то блоки, типа сумматоров, мультипликаторов, и прочих. Причём иногда это выливается в последовательности действий, типа загрузить значение из памяти на вход сумматора, после чего считать значение с выхода и записать в память. А, ещё флаги надо не забыть расставить в соответствии с.

Но фишка ведь в том, что если есть последовательность действий, то можно организовать конвеер, то есть начинать выполнять следующую команду до того, как завершится предыдущая. Пока выполнение предыдущей команды возиться с сумматором, можно извлекать из памяти данные для следующей команды. И параллельно вычитывать из памяти третью команду, чтобы потом не тратить на это время. При этом, ведь, подчастую команда машинного кода в памяти, требует обширного препроцессинга, прежде чем её можно будет взять и выполнить. Скажем, команда которая добавляет к 64-битному регистру 8-битное значение -- это восьмибитное значение надо расширить до 64 бит, прежде чем загружать в сумматор. Это несложно -- надо же просто нулями забить 56 бит, но тем не менее это тоже требует времени, а процессорные такты не стоят на месте, убегают.

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

И вот тут как раз, напрашивается появления всех этих микроопераций. Они простые, их не так много как в сложном CISC наборе команд x86, можно иметь много блоков для их выполняния и, скажем, выполнять параллельно сразу много сложений в рамках одновременно выполнения разных команд требующих сложения -- типа add, sub, inc, push, jmp... Не надо заводить отдельный сумматор на каждую возможную инструкцию CISC кода, в процессе выполнения которой надо складывать. Отдельных сумматоров, которые чаще будут простаивать, чем работать. Можно иметь один-два сумматора общего назначения на каждый конвеер, и этого вполне хватит.

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

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

9. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +/
Сообщение от Аноним (-), 25-Июн-17, 22:06 
https://books.google.ru/books?id=jKOsdJ8Rk6EC&pg=PA25&#v=one...
https://books.google.ru/books?id=Q1zSIarI8xoC&pg=PA72&dq=mic...
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

17. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +1 +/
Сообщение от Аноним (-), 25-Июн-17, 22:20 
Скорее всего после вот этого бага:
https://en.wikipedia.org/wiki/Pentium_FDIV_bug
Но могу ошибаться, давно читал Архитектуру ЭВМ Таненбаума. Суть: был баг, из-за которого Intel потерпела огромные убытки на заменах процессора. После этого появился микрокод и процессоры уже давно программируемые. Т.е. при старте ОС может загрузить в процессор микрокод определённой версии. Именно так сейчас исправляются ошибки в процессорах (и не только).
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

21. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +2 +/
Сообщение от Аноним (-), 25-Июн-17, 22:28 
'''
Первоначально микрокод был использован в качестве более лёгкого способа разработки контролирующего устройства процессора. Прежде набор инструкций задавался жёстко, каждая машинная инструкция (сложение, сдвиг, копирование) реализовывалась непосредственно в схеме. Это давало высокую скорость, но по мере того, как набор инструкций рос, всё сложнее становилось реализовать в виде схемы и отладить инструкции всё возрастающей сложности. Микрокод смягчил эту проблему тем, что позволил инженерам-проектировщикам при реализации сложной инструкции заменить создание сложной схемы на написание микропрограммы. Более того, микрокод можно было с лёгкостью изменить на поздних этапах проектирования, схему же изменить намного сложнее. Таким образом, микрокод облегчил проектирование процессоров, что привело к усложнению набора команд.
'''
Ответить | Правка | Наверх | Cообщить модератору

29. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –3 +/
Сообщение от Аноним (-), 25-Июн-17, 23:05 
Да, это понятно. Но как оно работает внутри? Получается что в процессоре есть своя память, есть некоторый реализованный аппаратно примитивный набор операции, а все что сложнее - это результат работы "процессора в процессоре" ?
Ответить | Правка | Наверх | Cообщить модератору

33. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –1 +/
Сообщение от Аноним (-), 25-Июн-17, 23:27 
В процессоре давно есть своя собственная память. Называется кэшем и работает с частотой процессора, из-за чего является очень дорогостоящей и по этой причине её в процессоре достаточно мало.

Нашёл более менее понятный пример микрокода (у АМД) в качестве примера (команда MOVS):
https://www.dcddcc.com/docs/2014_paper_microcode.pdf

Listing 1: Implementation for MOVS in AMD processors
LDDF ;load direction flag to latch in functional unit OR ecx, ecx ;test if ECX is zero
JZ end ;terminate string move if ECX is zero loop :
MOVFM+ tmp0, [ esi ] ;move to tmp data from source and inc/dec ESI MOVTM+ [ edi ] , tmp0 ;move the data to destination and inc/dec EDI
DECXJNZ loop ;dec ECX and repeat until zero end :
EXIT

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

64. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +/
Сообщение от Аноним (-), 26-Июн-17, 10:16 
Это не то. Это написали логику работы команды MOVS на асме.

Пример есть на вики:

Подсоединить Регистр 1 ко входу «А» арифметическо-логического устройства (АЛУ)
Подсоединить Регистр 7 ко входу «Б» АЛУ
Настроить АЛУ на выполнение операции сложения
Установить разряд переноса АЛУ в ноль
Сохранить результат операции в Регистр 8
Обновить «коды состояния» из флагов АЛУ
Установить указатель микрокоманд на микроинструкцию номер nnn

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

132. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +/
Сообщение от Аноним (-), 26-Июн-17, 18:39 
Могли бы зайти и почитать. Там чёрным по белому написано, что это реализация MOVS в микрокоде.

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

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

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

182. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –2 +/
Сообщение от Аноним (-), 27-Июн-17, 11:21 
Ты так и не понял что такое микрокод.
Ответить | Правка | Наверх | Cообщить модератору

81. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +2 +/
Сообщение от КО (?), 26-Июн-17, 12:07 
До. Как раз хвастались, что теперь можем править баги в проце на лету. :)
Ну и первый же баг, ставший широко известным, не смог быть поправлен микрокодом. :)
Ответить | Правка | К родителю #17 | Наверх | Cообщить модератору

159. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +3 +/
Сообщение от freehckemail (ok), 26-Июн-17, 23:12 
> Ну и первый же баг, ставший широко известным, не смог быть поправлен микрокодом. :)

Не наоборот ли? Первый же баг, который не смог быть поправлен микрокодом, стал широко известным? :)

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

209. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  –2 +/
Сообщение от Клыкастый (ok), 28-Июн-17, 16:35 
два чая и плюсик этому господину!
Ответить | Правка | Наверх | Cообщить модератору

120. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +5 +/
Сообщение от KonstantinB (ok), 26-Июн-17, 16:46 
Если совсем в первом приближении и на пальцах для первоклассника: современные CISC-процессоры семейства intel*86 на самом деле RISC внутри, а интерпретацией CISC-команд и их конвейеризацией занимается микрокод.
Ответить | Правка | К родителю #17 | Наверх | Cообщить модератору

135. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +/
Сообщение от Аноним (-), 26-Июн-17, 19:04 
Да откуда ж вы такие знатоки лезете-то ?
Хоть бы почитали когда процессоры с микропрограммным управлением появились.
Ответить | Правка | Наверх | Cообщить модератору

147. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +3 +/
Сообщение от KonstantinB (ok), 26-Июн-17, 20:55 
Речь о конкретном семействе x86, какая разница, где что появилось, когда еще Сталин был жив?

Я ж говорю - на пальцах, в первом приближении. Домохозяйке достаточно. А интересующиеся более глубоко могут ознакомиться, для начала, c Intel  Software Developer's Manual, и далее, например, с The microarchitecture of Intel, AMD and VIA CPUs [1].

[1] http://www.agner.org/optimize/microarchitecture.pdf

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

167. "Проект Debian уведомил о проблемах с CPU Intel Skylake и Kab..."  +/
Сообщение от Anonymo (?), 26-Июн-17, 23:55 
Раньше мне попадалось определение как RISC/CISC архитектура и на давно уже не современных процессорах. Вот нашел по теме http://userpages.umbc.edu/~vijay/mashey.on.risc.html
Ответить | Правка | К родителю #120 | Наверх | Cообщить модератору

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

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




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

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