stepping процессора что это

Цивилизованный разгон процессоров через понимание их степпинга

Введение

Ходит масса всевозможных разноречивых слухов о степ-кодах AMD и их значении для разгона процессоров. Пришла пора пролить свет на этот злободневный вопрос. Выводы, приведенные в этой статье, сделаны на основании исследований более чем 1000 процессоров AMD, их степ-кодов и достигнутых частот разгона. Статистические выводы на основании наработанной за несколько месяцев базы данных видятся как наиболее достоверный способ сбора информации о кодах, используемых AMD при маркировке процессоров.

Платформа, применявшаяся для тестирования всей базы данных процессоров, примерно одинакова.

Различные коды степпинга могут дать разный — в диапазоне от 50 до 500 МГц — прирост частоты при разгоне. Но не стоит, конечно, забывать, что на качественный разгон помимо степпинга влияют также несколько других факторов. Хорошая материнская плата, добротный кулер, надежный блок питания позволят из любого чипа выжать максимум.

О каких степ-кодах речь?

Маркировка, нанесенная на ядро процессора AMD, выглядит примерно так:

A1000AMS3B
AVIA0109APAW
Y6072390091

Именно буквы, выделенные красным, в большинстве случаев принимаются за код степпинга процессоров AMD Thunderbird.

Первый знак в третьей линии маркировки выделен зеленым. Знаком может быть, как показала практика, как цифра, так и буква. Этот знак — очень важный фактор при определении разгоняемости процессора AMD Thunderbird.

Корреляция первого знака третьей линии

Опытным путем обнаружено. что первый знак третьей линии представляет из себя, как правило, букву или цифру следующего ряда: 9, Y, F и Z. Разницу в качестве разгона следует искать не в различных буквах или различных цифрах, а в том, буквой ли маркирован процессор или цифрой. Поэтому в таблицах не фигурируют различные буквы и цифры. Просто все встретившиеся буквенные знаки помечены как «Y«, а цифры — как «#«.

Содержание таблиц

Таблицы результатов наблюдений сделаны в «дружественном» пользователю виде насколько это было возможно. Знаком «X» помечены все данные, не представляющие никакого интереса. В таблицы также не включена первая линия в маркировке процессора, только вторая и третья :

Степпинг-коды процессоров Thunderbird

Скорее всего, эти данные не охватывают все возможные варианты степпинга; тем не менее представляют достаточно широкий охват процессоров. Как показывает практика, некоторые степпинги работают только на своей «родной» частоте. Результаты базируются на конечном количестве данных и не могут претендовать на 100% охват.

Код степпинга Средний достигнутый разгон (округлено к ближайшим 25 МГц)
750 850 1000 1100 1133 1200 1333 (только 5 чипов)
AXIAXXXXXX
YXXXXXXX
Н/Д Н/Д 1450 1450 1400 1425 1525
AXIAXXXXXX
#XXXXXXX
Н/Д Н/Д 1400 1400 1375 Н/Д Н/Д
AXHAXXXXXX
YXXXXXXX
Н/Д Н/Д 1325 1350 Н/Д 1400 Н/Д
AXHAXXXXXX
#XXXXXXX
Н/Д Н/Д 1225 1300 Н/Д 1375 Н/Д
BXHAXXXXXX
YXXXXXXX
Н/Д Н/Д 1325 1350 Н/Д 1400 Н/Д
BXHAXXXXXX
#XXXXXXX
Н/Д Н/Д 1200 1250 Н/Д 1375 Н/Д
AVIAXXXXXX
YXXXXXXX
Н/Д Н/Д 1450 1450 1425 1425 Н/Д
AVIAXXXXXX
#XXXXXXX
Н/Д Н/Д 1400 1400 1375 Н/Д Н/Д
AVFAXXXXXX
YXXXXXXX
Н/Д Н/Д 1250 Н/Д Н/Д 1400 Н/Д
AVFAXXXXXX
#XXXXXXX
Н/Д Н/Д 1225 Н/Д Н/Д 1375 Н/Д
BVFAXXXXXX
YXXXXXXX
Н/Д Н/Д Н/Д 1350 Н/Д 1400 Н/Д
BVFAXXXXXX
#XXXXXXX
Н/Д Н/Д 1225 Н/Д Н/Д 1375 Н/Д
BVFAXXXXXX
YXXXXXXX
Н/Д Н/Д Н/Д 1350 Н/Д 1400 Н/Д
AHEAXXXXXX
#XXXXXXX
1100 Н/Д 1175 Н/Д Н/Д Н/Д Н/Д
AHEAXXXXXX
YXXXXXXX
1125 Н/Д 1200 Н/Д Н/Д Н/Д Н/Д
AEEAXXXXXX
#XXXXXXX
1075 Н/Д Н/Д Н/Д Н/Д Н/Д Н/Д
AEEAXXXXXX
YXXXXXXX
1100 Н/Д Н/Д Н/Д Н/Д Н/Д Н/Д
ADFAXXXXXX
#XXXXXXX
950 1000 Н/Д Н/Д Н/Д Н/Д Н/Д
AGGAXXXXXX
#XXXXXXX
Н/Д 1050 Н/Д Н/Д Н/Д Н/Д Н/Д

Коды степпинга процессоров AMD Thunderbird: выводы

Результаты, приведенные в таблице, показывают, как вы можете убедиться, преимущество процессоров с первой буквой в третьей строке перед процессорами с цифрой. Однако, более новые степпинги (AXIA, AVIA), похоже, гонятся лучше всех остальных, и разница между первой буквой или цифрой в третьей строке не так заметна, особенно для процессоров с номинальной частотой 1000 МГц, которые «гонятся» порой даже лучше более высокочастотных моделей с тем же кодом.

Степпинг-коды процессоров Duron

Степпингов у процессоров Duron не так уж много, поэтому результаты по ним, похоже, получились более конкретными.

Код степпинга 600 700 800
AKAAXXXXXX
YXXXXXXX
950 975 Н/Д
AKAAXXXXXX
#XXXXXXX
925 900 Н/Д
AKBAXXXXXX
YXXXXXXX
1025 925 Н/Д
AKBAXXXXXX
#XXXXXXX
975 925 Н/Д
AKCAXXXXXX
YXXXXXXX
Н/Д 1000 1075
AKCAXXXXXX
#XXXXXXX
Н/Д 975 1025

Коды степпинга процессоров AMD Duron: выводы

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

Заключение

Несмотря на то, что приведенные выводы сделаны на основании ограниченной информации, думается, что приведенные заключения верны и добавляют еще крупицу знания о рассматриваемых процессорах. Лучший совет оверклокеру: раз уж возникло решение «погонять» процессор, стоит попробовать подобрать перед этим чип с лучшим степпингом, который только удастся обнаружить.

Читайте также:  Что такое липома опасна она или нет

База данных предоставлена SafeShopper

Источник

Не всё то золото, что степпинг C1

И CPU-Z, и Processor Spec Finder подтверждали, что процессор Inel Pentium 4 2.4B, который достался мне на проверку, основан на новой ревизии ядра.

Процессор маркирован SL6EF, как и у всех процессоров на ядре Northwood у него 512 КБ кэш-памяти, он работает на частоте 133 МГц (533 Quad Pumped Bus), о чём говорит индекс «B» в названии модели, с коэффициентом умножения х18. Его номинальное напряжение питания 1.525В.

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

реклама

Проверку я сразу начал с частоты шины 150 МГц – никаких проблем, процессор работал и проходил тесты, причём без повышения напряжения. На частоте 160 Мгц он стартовал, но Windows загрузить не смог. Увеличение напряжения на 0.1В помогло, но не сильно, система загружалась, но в любой момент могла уйти на рестарт. Однако при напряжении 1.725В процессор работал абсолютно стабильно.

Именно при этой частоте были проведены наши привычные тесты в 3DMark 2001SE и UT2003. Память работала синхронно с процессором, тайминги выставлялись по SPD.

Печально, но прироста скорости от разгона почти не заметно :о(. Не у всех в компьютере стоит видеокарта GeForce 4 Ti4600, а как показали результаты тестов даже платы GeForce 3 Ti500 и процессора с частотой почти 3 ГГц недостаточно, чтобы с комфортом играть в UT2003 :о(. Да, напрягают нас производители игр, а ведь Doom3 ещё не вышел и худшее нас ждёт впереди.

Что касается лучшей разгоняемости нового степпинга, то наши надежды почти не оправдались. Никакими способами мне не удалось заставить процессор не то, чтобы работать, а даже просто загрузить операционную систему на частоте шины 166 МГц :о(. С учётом того, что процессоры со степпингом B0 грузили Windows при FSB 162-163 МГц, а стабильно работали при частоте шины 157-158 МГц, наши достижения выглядят очень скромно. Таким образом, можно не забивать себе голову поисками «правильных» степпингов и брать тот процессор, который попадётся.

Источник

Что такое степпинг?

Для определения производственного процесса процессора, на котором он основан, был разработана команда CPUID. С помощью неё можно получить значение Family, Model, Stepping. Это три шестнадцатеричных числа, по которым, в большинстве случаев, и определяется конкретное ядро процессора. А степпингом изначально называли именно последнее число тройки Family, Model, Stepping. Н.

Для определения производственного процесса процессора, на котором он основан, был разработана команда CPUID. С помощью неё можно получить значение Family, Model, Stepping. Это три шестнадцатеричных числа, по которым, в большинстве случаев, и определяется конкретное ядро процессора. А степпингом изначально называли именно последнее число тройки Family, Model, Stepping. На данный момент, эти понятия смешались (не без помощи Intel, называющей в своих документах ревизию степпингом).

Каким образом, зная Family, Model, Stepping определить ревизию (степпинг) ядра? Для начала необходимо найти документацию на процессор. Проще всего это сделать в случае с Intel. К примеру у нас имеется Pentium 641. Заходим на сайт intel.com, находим Intel Pentium 4 Processor 6X1 Sequence specification update. Там есть таблица соответствия CPUID и соотвествующей ревизии (степпинга). К примеру, мой 651 с CPUID 6F5 является Cedarmill D0, как и должно быть. Поскольку на одном ядре может выпускаться несколько моделей процессоров, различающихся, по сути, лишь частотой шины и значением множителя, то и CPUID их будет одинаковым. Потому по одному CPUID определить можно лишь ядро и степпинг, но не конкретный процессор.

Есть и другой способ определения степпинга процессора. Это его маркировка. По ней можно определить однозначно не только степпинг, но и точную модель процессора. У Intel можно определить по так называемой sSpec вида SLXXX или маркировке, например JM80547PH1092MM. Сделать это на их сайте. У AMD определение происходит по первой строчке маркировки, к примеру, ADH2350IAA5DD. У них также есть страница на сайте для определения характеристик.

В связи с распространившимися случаями воровства статей, запрещается использовать этот материал без согласования с автором (мной), ссылки на него и упоминания моего авторства.

Обсудить материал можно в теме на форуме.
18.07.2007 Antinomy.

Источник

Что такое степпинг процессора и как его узнать?

Всем привет! Сегодня обсудим степпинг процессора: это что за характеристика, на что она влияет и где ее можно посмотреть.

Что это такое и для чего

Степпингом (от английского термина stepping, что означает «пошаговое изменение») называется номер версии компонента компьютера или программного обеспечения. Изменения, которые можно определить, в том числе и по маркировке, не являются глобальными. Это — скорее косметические правки и устранение мелких «косяков».

Читайте также:  арп в авиации что это

Применительно к процессору Intel или AMD это значит доработку ядра: правку недочетов, снижение энергопотребления и тепловыделения, увеличение разгонного потенциала и т. д. Фактически, чем выше степпинг, тем больше работоспособных кристаллов сходит с конвейера и тем стабильнее работает ЦП.

При этом и технология производства, и сама архитектура ядра остаются неизменными. В итоге, чем выше степпинг указан в артикуле — тем лучший перед вами CPU.

Обычно при незначительных изменениях степпинга меняется порядковый номер — например, с C0 на C1, а при более существенных его буква. В итоге выходят серии G0, E0, а если процессор производится долго и постоянно совершенствуется разработчиками, то и R0.

Как узнать степпинг ЦП

Определить этот параметр можно с помощью специальной инструкции CPUID — которая помогает узнать семейство «камня», его модель и сам степпинг. Код представляет собой 3 шестнадцатеричных числа, последнее из которых и будет интересующий нас.Определяется такая характеристика еще с помощью любой диагностической утилиты — например, CPU-Z (нужно смотреть пункт Revision (картинка выше)), Speccy (показывает пункт — Revision) или ASTRA32. Однако способ не единственный — узнать интересующую информацию можно по маркировке изделия, которая указана на упаковке, по первой строчке. Для этого нужно перейти на официальный сайт производителя — Интел или АМД.

И в завершение немного информации на отвлеченную тему. Степпинг — специфический параметр, который представляет интерес для узкого круга «посвященных», то есть продвинутых пользователей, хорошо разбирающихся в компьютерных комплектующих.

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

Поэтому, если вы намерены купить конкретную версию «камня», придется не заказывать его в интернете, а посещать оффлайновые магазины и проверять чуть ли не каждый.

Буду признателен, если вы расшарите эту публикацию в социальных сетях. До скорой встречи!

Источник

(Само)идентификация процессоров. Часть вторая. Волосатый CPUID

В первой части я рассказал о необходимости идентификации расширений, присутствующих на конкретном процессоре. Это нужно для того, чтобы исполняющийся код (операционная система, компилятор или пользовательское приложение) смог надёжно определить, какие возможности аппаратуры он может задействовать. Также в предыдущей статье я сравнил несколько популярных архитектур центральных процессоров общего назначения. Возможности по идентификации между ними сильно разнятся: некоторые предоставляют полную информацию о расширениях ISA, тогда как другие ограничиваются парой чисел для различения вендора и ревизии.
В этой части я расскажу об одной инструкции архитектуры Intel IA-32 — CPUID, введённой специально для перечисления декларируемых процессором расширений. Немного о том, что было до её появления, что она умеет сообщать, какие неожиданности могут поджидать и какой софт позволяет интерпретировать её вывод.


Источник изображения: [1]

История

Как я уже утверждал в первой части, присутствует следующая тенденция: чем более «встраиваемая» природа у процессора, тем меньше возможностей для идентификации заложено в его архитектуру. Создатели встраиваемых систем почему-то не волнуются о переносимости двоичного кода.

Не являлся исключением и Intel 8086 — микропроцессор 1970-х годов, выросший из «калькуляторной» серии 8008, 8080, 8085. Изначально в него не было заложено никаких средств идентификации.
Начиная с 808386 сведения о модели, степпинге и семействе стали сообщаться в регистре EDX сразу после перезагрузки (получения сигнала RESET). Инструкция CPUID, кодируемая байтами 0x0f 0xa2, была введена в процессорах 80486. Наличие CPUID можно было распознать по возможности записи в бит 21 регистра флагов. Для поддержки работы на более старых ЦПУ приходилось идти на очень изощрённые методы для того, чтобы различать процессоры серий от 8086 до 80386.

Перечисленные в оригинальной статье техники были опробованы преимущественно на ЦПУ от Intel. В статье автор признаёт, что они не позволяют надёжно классифицировать клоны x86 других производителей.

Интерфейс

Для системного программиста работа по идентификации некоторого расширения обычно заключается в установке входных значений в регистрах EAX (лист, англ. leaf) и ECX (подлист, англ. subleaf), исполнению CPUID и прочтению результата в четырёх регистрах: EAX, EBX, ECX, EDX. Отдельные битовые поля выходных регистров будут содержать информацию о значениях связанных с ними архитектурных параметров конкретного ядра процессора.

Все валидные сочетания входных листов-подлистов и четвёрок регистров на выходе формируют таблицу CPUID. Для современных процессоров она содержит около двух десятков строк по четыре 32-битных столбца.
Я не буду расписывать детально все официально описанные поля этой таблицы. Интересующиеся всегда могут найти их в Intel SDM [1] (рекомендую запастись терпением — около 40 страниц текста только про CPUID). Болеее того, для уже заявленных, но ещё не выпущенных в физических продуктах расширений ISA соответствующие им новые поля CPUID могут быть найдены в [3]. Вместо этого я классифицирую информацию, которую можно извлечь из вывода этой инструкции. Для обозначения битовых полей таблицы я буду использовать принятую для этого нотацию: CPUID.leaf.subleaf.reg[bitstart:bitend]. Например, CPUID.0.EBX[31:0] — это биты с 0 по 31 выходного регистра EBX после исполнения CPUID, которая на вход получила лист 0 (EAX = 0); подлист (входное значение ECX) игнорируется, поэтому он не указан.

Читайте также:  Что такое люмар пленка
Регионы листов

Неподдерживаемые значения входных EAX и ECX не приводят к возникновению исключений, а вместо этого возвращают нули во всех четырёх регистрах, либо «мусор» (значения другого листа согласно спецификации). Допустимые же сочетания листов и подлистов образуют три непрерывных региона.

Brand String

Конечно же, ни один вендор не упустит возможности увековечить своё имя в идентификационных данных своего продукта. Причём желательно сделать это не просто в виде числа, а впечатать ASCII-строку (хорошо хоть, что не Unicode).
В IA-32 CPUID текст можно найти минимум в двух группах листов. CPUID.0.EBX, ECX, EDX содержат 12 байт ASCII-строки, специфичной для каждого вендора. Для Intel это, конечно же, «GenuineIntel». А три листа CPUID.0x80000002–0x80000004 предоставляют аж 48 байт для кодирования в ASCII так называемой Brand String. Именно её видно при распечатке cat /proc/cpuinfo в Linux. И, хотя формат её более-менее стандартизован: «вендор марка серия CPU @ частота», я настоятельно не рекомендую по её содержимому принимать решения в программном коде. Слишком значительно её содержимое может варьироваться: частота может быть указана в МГц или в ГГц (а в реальности быть совсем иной из-за динамической подстройки), пробелы могут менять положение, а симулятор или виртуальная машина могут подставить туда вообще что угодно. Вся информация из brand string может быть найдена программно более надёжными способами.

Информация о кэшах, такая как их тип, количество, ёмкость, геометрия, разделяемость между ядрами полезна для тюнинга высокопроизводительного математического софта, например, библиотек BLAS (basic linear algebra system).
Изначально конфигурацию кэшей описывал лист 2. Спроектировали его не очень дальновидно. Формат кодирования информации в нём был выбран не самый гибкий, он не смог в будущем поддержать постоянные изменения в объёме и конфигурации нескольких уровней кэшей. В настоящее время использование информации из листа 2 не рекомендуется, там могут стоять 0xFF-ки.
Судя по тому, что лист 0x80000006 входит в расширенный диапазон (хотя я не уверен, документальных доказательств пока что не нашёл), он был добавлен не Intel. С помощью него была сделана попытка информацию листа 2 дополнить данными о строении кэшей, которые потребовались разработчикам софта. При этом опять же не было намерения предоставить пространство для роста.
Лист 4 — последнее и пока что наиболее гибкое представление данных о кэшах. Цена этому — добавление концепции подлистов, кодируемых в ECX. Каждый подлист описывает один кэш: данных, кода или совмещённый, определяет его уровень, ёмкость и т.д. Хватит ли четвёртого листа надолго — поживём, увидим.

Топология
Изменяемые поля
Разное

В этой секции я собрал прочие интересные моменты, связанные с историей и работой команды CPUID.

Processor Serial Number

Во времена Pentium III каждый процессор получил уникальный серийный номер, содержавшийся в CPUID.3.ECX и CPUID.3.EDX [7]. Легко представить, насколько такая фича была бы удобна для нужд защиты ПО от копирования. Однако в 1999 году Европейское сообщество запротестовало, разумно опасаясь, что подобная функциональность повредит приватности пользователей таких систем. Уже в Intel Pentium IV серийный номер был убран, сейчас лист 3 возвращает нули.

Вендоры и CPUID

Очень интересная таблица [5] повествует о том, что хранят (или в прошлом хранили) в разных листах CPUID разные вендоры. Например, описывается некий mystery level 0x8fffffff, в котором процессоры AMD K8 возвращали строку IT’S HAMMER TIME.

Agner Fog о войнах ISA

История появления расширений набора инструкций IA-32 в условиях конкурентной борьбы нескольких компаний [4]. Добавление новых инструкций всегда влияло на CPUID, и не всегда все могли договориться о том, как это сделать правильно.

Они испортили CPUID! IA32_BIOS_SIGN_ID

Инструкция CPUID всегда нравилась мне лаконичностью своего интерфейса и отсутствием неожиданностей в работе: один регистр на входе и четыре на выходе. В её работе нет генерации исключений, нет обращений к памяти, нет чтения/модификации регистра флагов, на неё не влияют префиксы, она работает во всех режимах процессора. По сравнению с зоопарком CISC-команд IA-32 это был почти идеал.
… пока не оказалось, что иногда на вход необходимо подать два регистра для кодирования листа и подлиста. Окей, не так всё хорошо. Ну хотя бы выходные регистры заранее известны и всегда изменяются…
И тут оказалось, что иногда CPUID изменяет ещё один регистр — а именно IA32_BIOS_SIGN_ID, — и сохраняет в нём сигнатуру текущей программы микрокода процессора. Происходит это, если до этого было произведено обновление прошивки процессора. По каким-то причинам информация об этой процедуре была раскидана по мануалу [1] на тысячу страниц, и потому она ускользала от меня очень долго.

Источник

Информ портал о технике и не только