Флейм
GameDev.ru / Флейм / Форум / CISC-x80: ПРАвәльный 8-битный «ДОМАШНИЙ» (псевдо-совместимый с PC-XT / CP/M-80 / DOS) (15 стр)

CISC-x80: ПРАвәльный 8-битный «ДОМАШНИЙ» (псевдо-совместимый с PC-XT / CP/M-80 / DOS) (15 стр)

Advanced: Тема повышенной сложности или важная.
Страницы: 110 11 12 13 14 15
DelfigamerПостоялецwww13 июня 201814:07#210
=A=L=X=
> https://m.habr.com/post/182002/
Окей, признаю - в некоторых аспектах я ошибся.
Но смотри, твоя схема с буфермзацией будет работать только в том случае, если декодеры работают быстрее OOO-ядра. А так ли это?
Будучи english speaker master race, я открыл оригинал и прочитал его, и там говорится:
The OOO core was so successful at improving processing flow that it was able to process instructions faster than they could be sent to the core. For most users the CPU's OOO core was effectively idle much of the time, even under load.

а в комментах сам автор жалуется:
When I work on optimizing our code bases, I always get discouraged when vtune shows just how much time the CPU is sitting idle. Even when going through tight loops the CPU is mostly just sitting there waiting for the cache.

То есть, в конечном итоге - всё равно ядро оказывается самым быстрым элементом, которому всё равно приходится постоянно ждать инструкций и данных. Широкий конвеер позволяет исполнять больше инструкций в секунду, но для его оперативной заправки всё равно нужен многоуровневый кэш, и даже с его наличием процессор всё равно упирается в скорость обмена данными. Наличие дополнительного буфера так и не спасло процессор от медленной памяти, да и не для этого ROB предназначен.
=A=L=X=Забаненwww13 июня 201814:13#211
Delfigamer
> и там говорится

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

Правка: 13 июня 2018 14:15

=A=L=X=Забаненwww13 июня 201814:19#212
Но вообще - да, мы уже давно в таком месте эволюции процов, что основная проблема - медленная память. Без сомнений. Да я с этого и начал ту свою мысль вообще то, с которой начались последние три страницы - мол так ли уже важно ли будет обмазывать проц обильно конвеерами и всякими предсказателями если у него вся ОЗУ и будет кешем. Просто даже понять бы какая скорость когда всё в кеше лежит у простой старой схемы типа Z80.

Правка: 13 июня 2018 14:20

Страницы: 110 11 12 13 14 15

/ Форум / Флейм / ПроЭкты

2001—2018 © GameDev.ru — Разработка игр