Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » IBM PC-совместимое. До 2000 года включительно » Pentium P54C тестовые регистры TR12 |
<<Назад Вперед>> | Страницы: 1 * 2 3 4 | Печать |
pahan
Advanced Member
Откуда: Химки, М.О. Всего сообщений: 1070 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 13 мар. 2015 |
Это MSRки, они по определению различны на разных процессорах (даже имеющих одинаковое название). На каких процессорах они есть, на каких уже нету? А документация утверждает, что они там есть, но изменены. А именно: Ниже там пишут, что на обычных MMX Intel уже убрала эти регистры TR12, и они уже не работают. должно работать только на MMXах. CCD - Disable L1 code cache Что на вогонсах и подтверждают. Ключи, отключающие по отдельности кэши инструкций и данных, не работают на P120, но работают на POD200. Так же пробуют эти ключи на Pentium 120 - опять неудача. А вот на P90 - работают. 1) Овердрайвы и мобильные процы - это совсем не тоже самое, что десктопные. Надо смотреть документацию конкретно для них. Наверное на OD как раз и были эти регистры для снижения производительности 2) Они именно для снижения производительности. Для тестирования на стадии разработки и производства чипов и разработки плат под них. Для тестирования самого кэша тоже. Абсолютно нормальные. Отключишь кэши - и поймёшь, что со временём 386го мало что изменилось. Да и результаты какие то странные у комрада. И на ваш вопрос с вогонса: Нет. Собственно биты "отключения кэша" в TR12 запрещают именно cache line fill но не очищают кэш от уже имеющихся данных. PS. I wonder if P1 initiates cache line fill for each IO with disabled L1 cache Пока питание не дернёте. Или обратно в регистр нули не пропишите. Всмысле? Насовсем? В целочисленке - вряд ли. Интересно, обгонит Pentium 486-ую машину без этих своих branch prediction и V Pipeline на одной частоте ) |
doctord
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 596 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 сен. 2014 |
pahan, |
BreakPoint |
NEW! Сообщение отправлено: 13 сентября 2016 16:47
Важна интерпретация результатов, а не сами результаты. Может кэш данных более критичен потому что его долбят 2 очереди префетчера? А у данных префетчера нет.Так что для чистоты эесперимента еще и префетчер отключать надо. Эти результаты говорят о том, что отключение кэша это далеко не то же самое что отсутсвие кэша. |
Сейчас на форуме |
BreakPoint |
NEW! Сообщение отправлено: 13 сентября 2016 16:49 Сообщение отредактировано: 13 сентября 2016 16:52
pahan написал: Ну частота ядра и шины уж точно изменилась что со временём 386го мало что изменилось. По такой логике получатся что если разогнать 386 25МГц до 66МГц то произовдительность все равно будет как у 25МГц |
Сейчас на форуме |
doctord
Advanced Member
Откуда: Санкт-Петербург Всего сообщений: 596 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 22 сен. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 13 сентября 2016 17:10 Сообщение отредактировано: 13 сентября 2016 17:21
Я так понимаю, дело тут в том, что x86-процессоры начиная с 486 (и Pentium, в том числе), очень сильно зависят от кэша L1, из-за своей конвеерной архитектуры. Вот нашел список всех MSR, если вдруг кому надо: https://github.com/cirosantill...1c/MSR.LST Действительно раздельное выключение L1 кода и данных есть только у P-MMX: MSR 0000000Eh - Pentium, K6, C6 - (TR12) NEW FEATURE CONTROL |
pahan
Advanced Member
Откуда: Химки, М.О. Всего сообщений: 1070 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 13 мар. 2015 |
Если источник данных (память) будет работать на частоте 25 МГц, не столь важно, на сколь огромных частотах будет обрабатывать их ядро процессора. Что все давно видели на примере коппермайнов и нортвудов (особенно целеронов), когда рост только частоты ядра давал уменьшающийся почти до нуля рост производительности. Вот именно что важнее интерпретация результатов. Имхо, всё зависит от конкретной задачи (теста). В 3D тестах вычислений много - важнее кэш кода. В speedsys - важнее кэш данных (скорее всего, там какие-то СУБДподобные задачи - типа выбрать определённые строки из большого однотипного массива). Глядите-ка без L1-кэша кода он медленнее, чем без L1-кэша данных )) Код важнее ) |
BreakPoint |
NEW! Сообщение отправлено: 13 сентября 2016 20:16
pahan написал: Теоретически правильно. Но в данном конкретному случае Если источник данных (память) будет работать на частоте 25 МГц... во первых, и память у пенька пошустрее во вторых, шина поширее в третьих, очередь префетчера подлинее так что деградация до уровня 386-25МГц, как по мне, может быть вызвана только какими-то дополнительными расходами, вызванными отключением кэша. Мне кажется, даже при отключенном кэше, любой доступ к памяти начинается с cache lookup который естесвенно ничего не дает. И только после этого проц начинает операцию ввода вывода к памяти. |
Сейчас на форуме |
Fasterpast
Advanced Member
Всего сообщений: 582 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 20 окт. 2013 |
Грубо говоря, скорость кэша в 10 раз выше скорости памяти (особенно по задержкам), вот и производительность падает в 10 раз ) |
pahan
Advanced Member
Откуда: Химки, М.О. Всего сообщений: 1070 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 13 мар. 2015 |
Скорее всего, вы правы. Изначально (при старте процессора) кэш отключен. Но дальше он включается, кэширует какие-то данные, и к тому моменту, когда мы отключаем кэш из тестовой проги, в нём уже что-то есть. А вот дальше самое интересное - даже при отключенном кэше, в случае если нужные данные находятся в нём, они будут взяты из кэша, но в случае промаха кэш обновлён не будет. В случае записи - они могут быть обновлены только в кэше, но не в памяти. Мне кажется, даже при отключенном кэше, любой доступ к памяти начинается с cache lookup который естесвенно ничего не дает. см. Pentium® Processor Family Developer’s Manual 24142805.pdf таблица 2.1 Не так уж и сильно - в 2-2,5 раза. во первых, и память у пенька пошустрее А это вообще мало влияет. Ну протаскивает он за такт в 2 раза больше данных. Только программе (особенно досовской) из 32/64 бит при этом скорее всего надо было только 8 или 16. Остальные будут проигнорированы. Широкая шина как раз актуальна в основном чтобы загонять данные в кэш. во вторых, шина поширее |
BreakPoint |
NEW! Сообщение отправлено: 14 сентября 2016 16:32
pahan написал: Вот именно, то есть при прочих равных у нас получатеся какой то условный 386ДХ-66. А получился 25. Не так уж и сильно - в 2-2,5 раза. pahan написал: Это по сути потдверждает мою теорию. Т.е. не смотя на "отключенный кэш" проц все равно не имеет обходных путей для общения в внешним миром в обход кэша. в случае если нужные данные находятся в нём, они будут взяты из кэша, но в случае промаха кэш обновлён не будет Т.е. при любой ИО операции к памяти проц сначала проверяет есть ли эти данные/код в кэше, и (кто бы мог подумать) их там не находит. Естественно на лукап уходит как минимум 4 цикла (а то и больше). Т.е. кэш становится тормозом системы, а не ускорителем. Поэтому я и говорю, что проц без кэша и проц с отключенным кэшом это не одно и тоже. pahan написал: Тут тоже не все так просто, во первых от широкой шины выиграет префетчер (по крайней мере в теории). Во вторых FPU. А это вообще мало влияет. Ну протаскивает он за такт в 2 раза больше данных. |
Сейчас на форуме |
<<Назад Вперед>> | Страницы: 1 * 2 3 4 | Печать |
Полигон-2 » IBM PC-совместимое. До 2000 года включительно » Pentium P54C тестовые регистры TR12 |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |