О блоге

Все новые материалы размещаются на Блогосайте alv.me. Старые - в процессе переноса.

17.08.2008

От слота к сокету, или назад в будущее. 1999

1999 г

Это рассказ о той машине, на которой в очередной раз поселился Linux - и теперь уже для того, чтобы впредь не исчезать с моих винтов. Более того, именно с нее была окончательно и бесповоротно стерта Windows - больше на моих машинах этой операционной системы не было никогда. Ну и дальнейшая судьба компьютера была весьма бурной. - Февраль 2004 г.

Причиной появления первой версии настоящего опуса стала весьма оригинальная задача - собрать максимально мощную машину при минимальных финансовых затратах. Мысли, естественно, обратились к Celeron'у. Поскольку к продукции AMD я тогда испытывал некоторую антипатию, как к потенциальному источнику головной боли. Антипатию, как показало дальнейшее, необоснованную, ибо источниками проблемы бывали, как правило, не процессоры, а чипсеты.

Естественно, подумалось о Celeron'е в исполнении Socket 370. С одной стороны, дешевле, с другой - чисто теоретически, исходя из общих соображений, он должен быть быстрее, чем в конструктиве Slot 1.

Поскольку основа машины - системная плата, с этого и следовало начинать выбор. Однако первое, с чем я при этом столкнулся - отсутствие информации о "мамах" под Socket 370. При обилии сведений о "слотовых" платах. Что чуть было не подвигло меня на приобретение последней. Но потом решил рискнуть испытать 370-й конструктив на собственной шкуре, а затем - описать свои впечатления. Что и проделываю.

В пределах досягаемости выбор системных плат под Socket 370 ограничивался ASUSTek'ом. Я хорошо отношусь к этой фирме, однако конкретные модели меня не устраивали - одна была AT-формата (а требовалось вставлять маму в ATX'ный корпус), другая - в формате Micro-ATX (со всеми вытекающими из этого ограничениями).

Изучение Интернета показало, что устраивающие меня платы (на чипсете BX, с достаточным количеством слотов ISA и PCI, не менее чем с тремя слотами для модулей памяти) производились на тот момент двумя фирмами - Chaintech и Abit. Однако первой в продаже в пределах досягаемости не обнаружилось. Оставался Abit.

С продукцией этой фирмы я непосредственно не сталкивался, однако читал много отзывов - от просто положительных до восторженных. Хотя слышал и мнение о высоком проценте отказов. Тем не менее выбирать как бы не из чего. И ведь трус в карты не играет - пошел и купил Abit'овую "маму" модели BM6. К описанию которой и перехожу.

Плата Abit BM6 - в красивого серо-голубого цвета коробке, на которой изображен кибернетизированный культурист, указующий рукой (почти как дедушка Ленин) в светлое информационное будущее. Мощь его мускулатуры, видимо, символизирует могущество информационных технологий (или платы Abit непосредственно). В коробке было: сама плата, комплект необходимых шлейфов (IDE, относительно длинный для ATX'ной платы, FDD, слава богу, только с двумя разъемами, на обоих шлейфах все разъемы снабжены ключами) и CD ROM с программным обеспечением. А также довольно толстое и аккуратно изданное руководство.

Плата - размером 305х210 мм, аккуратно сделанная, имела стандартный по тем временам набор портов (2 COM'а, 1 LPT всех современных режимов, 2 USB, PS/2 для мыши и клавиш), а также разъем для подключения инфракрасного порта. Разъем для питания (ATX, естественно) расположен очень удобно, между процессорным гнездом и портами, ближе к последним. Два питающих разъема для вентиляторов, один рядом с процессором, другой - чуть ниже IrDA; последнее - не очень понятно, чтобы подключить к нему вентилятор на лицевой панели, потребуется очень длинный кабель.

Разъемы IDE и FDD расположены удобно, с правого края платы. Слоты для модулей DIMM (три штуки, поддерживаются модули до 256 мегабайт) - между ними и процессорным гнездом.

Процессорное гнездо внешне очень похоже на Socket 7 (если не пересчитывать дырочки), с таким же рычажком и выступами для крепления кулера. На дне гнезда - датчик для контроля за температурой процессора. Два других датчика рассеяны по плате, один служит для определения общесистемной температуры, второй - для контроля за температурой какого-либо устройства по выбору пользователя (правда, как - я не очень понял).

Один слот AGP (естественно), пять слотов PCI и два слота ISA (для того времени оптимальное соотношение), разъем WOL (для подключения коннектора от сетевой карты - на предмет включения по сигналу из сети) и WOR (то же - для модема), SB-Link (для подключения PCI'ной звуковой карты). Удобно расположенные коннекторы для подключения питающего и индикаторных проводков от корпуса.

На плате - одна-единственная перемычка, служащая для обнуления установок CMOS. Нет даже перемычки, запрещающей перезапись флэш-ПЗУ. Что, ввиду распространения вредоносных вирусов (тогда большой популярностью в народе пользовался Win95-CIH), могло представлять опасность.

Вот и все, что находится на плате. Остальное - в BIOS, к которому и переходим. BIOS - Award, содержит обычные для такового пункты, и плюс к этому - пункт CPU SoftMenu II, служащий для установки частот системной шины и коэффициента умножения. Изобретение этого способа фирма Abit приписывает себе, насколько основательно - не знаю, я встречал противоречивые указания на сей предмет.

Открыв SoftMenu, мы получаем возможность выбрать частоту процессора и шины из списка (от 300 до 433 мегагерц при частоте шины 66 мегагерц и от 400 до 500 мегагерц - при стомегагерцной шине. Если же это нас не устраивает, можно перейти к User Define и определить частоту шины и множитель вручную. На выбор предлагается частоты 66, 75, 83, 100, 105, 110, 112, 115, 120, 124, 133 мегагерца. Для всех из них устанавливается делитель CPUCLK/PCI=1/3 (кроме частот 83 и, конечно, 66 мегагерц, для которых он зафиксирован на ?), а для частот 124 и 133 мегагерца, кроме того, можно установить CPUCLK/PCI=1/4.

Обращает на себя внимание отсутствие частот 68 и 103 мегагерца (т.н. турбо-режим, практически во всех случаях безопасный, но дающий некоторый прирост производительности); видимо, плата расчитана на истинных оверклокеров, которые презирают такие косметические меры.

Множители варьируют от 2 до 8, с шагом 0,5, что дает возможность выставить максимальную частоту в 528 и 800 мегагерц (при 66- и 100-мегагерцной шине, соответственно) - запас, которого, видимо, хватит до конца тысячелетия ("боже, какими мы были наивными" - 2004 г.). Выбор отношения AGPCLK/CPUCLK - 1/1 или 2/3, что приводит к резкому завышению частоты AGP при внешних частотах, например, 83 или 133 мегагерца, являясь потенциальным источником ошибок.

Кроме частот, через SoftMenu можно установить и вольтаж ядра процессора. Возможные значения - от 1,30 до 2,30 V с шагом 0,05. Обращаем внимание на пункт Speed Error Hold: если устанавливать не соответствующие маркировке наличного процессора частоты (например, 4*100 для Celeron 300), следует отключить этот пункт, иначе появится ехидное сообщение, что процессор выбран неправильно, и при перезагрузке частоты процессора и шины будут выставлены на минимальные значения - то есть 300 (66*4,5), вне зависимости от типа процессора. Впрочем, это же произойдет при любых ошибках загрузки на нештатных частотах.

Наконец, в SoftMenu присутствовал пункт, составлявший, как я понимаю, предмет особой гордости фирмы Abit (и, честно говоря, из-за которого она и приобреталась) - SEL100/66 Signal. То есть, насколько я понимаю, возможность убедить процессор с 66-мегагерцной шиной в том, что он 100-мегагерцный, а 100-мегагерцный по шине процессор - в том, что он не имеет фиксированного коэффициента умножения. А ведь уважаемая мной фирма Intel все время пытается внушить нам, что процессор, рожденный 66-мегагерцным - воспарить до 100 не может. Так же как рожденный 100-мегагерцным - умножаться на что-либо другое, нежели предписано от рождения. В общем, расовая теория в кремниевом исполнении. Насколько это соответствовало действительности - скажу ниже.

Все остальные особенности BIOS - более или менее обычны для Award'а. Возможна загрузка с любого из логических дисков (от C до F), со SCSI и CD ROM, а также с ZIP'а или LS-привода. Имеется ставшая уже стандартной защита от вирусов в BIOS (вот только понадобилась ли она хоть кому за все время бытования этой опции - 2004 г.). В установках чипсета можно выбрать CAS latency time (2 или 3). Здесь же - всякие термоконтрольные штуки: температура предупреждения о перегреве (от 30 до 120 градусов Цельсия, изменяются с шагом 1 градус; по умолчанию - 50 градусов; параллельно приведены и значения по Фаренгейту); температура процессора и системы; скорость вращения первого и второго вентилятора; вольтаж на различных компонентах системы).

Естественно, имеется управление энергосбережением (я им никогда не пользуюсь и потому не изучал). Имеется возможность ручной установки прерываний для слотов PCI, поддерживаемые режимы для IDE-контроллеров - PIO до моды 4, DMA до моды 2, поддержка UDMA, и прочие, обычные для всех современных материнских плат особенности. Отмечу только возможность включения без клавиши Power. Здесь возможны варианты - Power Button only (это понятно), включение с клавиатуры для Windows 98 (у меня такой нет, поэтому не знаю, что это такое), включение горячей клавишей, левой или правой клавишей мыши. Иногда может быть удобно.

Следует сказать, что все эти (и многие другие) особенности BIOS'а весьма подробно описаны в руководстве. Кроме того, в нем есть рисунок платы, схема функционирования чипсета BX, подробное описание разных способов крепежа платы в корпусе (с картинками), установки процессора, а также конспективное изложение всех этапов сборки машины на данной системной плате, включая установку различного количества винчестеров в разных сочетаниях с CD ROM'ом. В общем, все, чтобы выполнить десятую заповедь компьютерщика ("если Вы выполнили первые девять заповедей и у Вас ничего не получилось, прочтите инструкцию").

На CD ROM'е, прилагающемся к плате, имелись: драйверы IDE Bus Master и PCI Bridge, всяческая документация и софт для ее чтения (типа Adobe Acrobat), какие-то freeware программы, XStore Pro - программа для оптимизации памяти и жесткого диска, насколько я понял (ко всякого рода оптимизационным программам я отношусь с недоверием, почему не устанавливал и эту), а также Winbond Hardware Doctor - программа для слежения за параметрами системы, такими, как температура процессора и материнской платы, скорость вращения вентиляторов, напряжение на ядре процессора и прочих компонентах; может быть полезна при overclocking'е, хотя все это дублируется и в BIOS'е (характерно, что, скажем, значения температуры процессора и системной платы, полученные из BIOS'а и из программы HW Doctor, хоть и немного, но различаются).

Вот и все, что я хотел написать непосредственно о плате. Что же она собой представляет в работе? Для определения этого плата была вкручена в корпус, в нее вставлены: Celeron 400 (естественно в PPGA-исполнении), 8-нанносекундный DIMM 128 мегабайт (PC-100, вроде бы Micron), видеокарта ATI Rage 128 с 16 мегабайтами (разумеется, GP). Диск - Western Digital AC2840, 8,4 гигабайта, с поддержкой ничем (тогда) не поддерживаемого UDMA-66, CD ROM - старенький 8-скоростной Mitsumi, FDD - кажется, Samsung. Впрочем, последний у меня давно не работает, а покупать новый - ей-богу, жалко 15 долларов; все жду, когда же флоппи прекратит свое существование как класс (жду по сию пору - 2004 г.).

Кроме того, в системе присутствовали: звуковая карта ISA на чипе Yamacha OPL сколько-то, модем Robotics Sportster 56 (внутренний, без voice), плата видеозахвата FlyVideo EZ (это которая без телетюнера). То есть моя обычная рабочая конфигурация.

Несколько слов о процессоре: у меня был Celeron-400 in box, на примере которого можно видеть, что и Intel подвержен вирусу социалистического отношения к труду. В отличие от первых виденных мной боксовых процессоров (Pentium-166MMX), в коробке отсутствовал CD ROM с демонстрашками великих достижений процессоростроения (впрочем, его не было уже и в P-II), вентилятор лежал отдельно, а не смонтированным на процессоре, никакого намека на термопасту. Этикетка с надписью Intel Inside напечатана на тоненькой бумажке и полиграфически посредственна. Последнее, возможно, для того, чтобы уязвить пользователей Celeron'ов по сравнению с обладателями полнокровных Pentium-II?

Операционная система - Windows 98 (русская; было искушение опробовать на голой машине Вынь Две Штуки, но для чистоты эксперимента решил этого не делать), со всеми потребными для указанного оборудования драйверами. И на всем этом великолепии прогонялся WinBench 99 (благо он только что мне достался в виде приложения к какому-то компьютерному журналу). Были опробованы следующие установки:

  1. шина 66, множитель 6, то есть штатный режим 400-го Celeron'а, CAS time latency 3 (установка по умолчанию);
  2. то же, но CAS time latency 2;
  3. шина 66, множитель 6,5, то есть как бы грядущий (на момент написания самого первого варианта заметки) Celeron 466 (CAS latency time - 2);
  4. шина 75, множитель 5,5, то есть 412,5 мегагерц (как можно ближе к законной внутренней частоте, для сравнимости результатов; CAS time latency по прежнему 2);
  5. шина 75, множитель 6 (что дает произведение в 450 мегагерц, с памятью - та же двойка);
  6. шина 83, множитель 5, то есть 415 мегагерц;
  7. шина 100, множитель 4.

Результаты первых пяти экспериментов обескураживали. В вариантах 1-3 (то есть при шине 66 мегагерц) CPUMark колебался от 730 до 756 (при этом первое значение - при трех тактах ожидания памяти), FPUMark - от 2120 до 2130. В вариантах 4-5 (75-мегагерцная шина) значения были соответственно 838-846 и 2370-2400. Конечно, для статистики мало, но колебания явно укладывались в пределы ошибки эксперимента. Из чего следовал вывод - производительность зависела только от частоты шины, но не от множителя.

Тут я и подумал: а может, все это ложь и провокация? И плата только делает вид, что она переключает множители, а на самом деле что прошито в процессоре - то и есть? Ведь упорно ходили слухи, что в старших Celeron'ах (в отличие от 300-333-их) будут зафиксированы и частота, и множитель (в целях борьбы со злодеями, то есть нами, лишающими Intel законных доходов: вот ведь гады, покупают стобаксовый процессор и получают ту же производительность, что и при семисотбаксовом). Глядя на результаты WinBenсh'а, это представляется вполне реальным.

Так что, может, зря ребята из Abit'а думают, что они Intel надули... Да, забыл сказать, что пресловутый переключатель CEL100/66 стоял в положении Low (то есть ка бы 66 мегагерц на шине).

Что я и решил тут же проверить самым тривиальным способом, который раньше мне в голову не приходил: посмотреть, какая же частота обнаруживается на стадии POST'а (в оправдание своей тупости могу сказать только, что машина грузится так быстро, что разглядеть это - задача нетривиальная, а чтобы успеть нажать Pause, требуется неслабая реакция).

И вот что оказалось: какой бы множитель не выставлялся в BIOS'е, при шине 66 мегагерц процессор определяется как 400-мегагерцный, а при шине 75 - как 450-мегагерцный. То есть реально коэффициент умножения всегда равен 6. При этом не имеет значения, какое значение выставлено для параметра SEL100/66 - Signal - high (default для 100-мегагерцных шин) или low (то же для 66-мегагерцных). Ни на что этот параметр не влиял.

То есть разогнать Celeron за счет коэффициента умножения не удалось (не смотря на заявление Abit'а о Real Power Overclocking). Что ж, не очень-то и хотелось. Ведь я-то имею давнюю слабость именно к разгону по шине.

Результат с 75-мегагерцной шиной можно признать удачным: прирост CPUmark в 15% - очень неплохо. А с 83 мегагерцами на шине получилось хуже: машина запускалась, но вмертвую висла при загрузке Windows. Изменение AGPCLK/CPUCLK с 1/1 до 2/3 (то есть при частоте на AGP 55,3 мегагерца) картины не изменило. На черном экране высвечивалась ошибка определения CD ROM (он на этой плате определяется BIOS'ом, если в соответствующем пункте HDD включить автоопределение; если не включить - он в DOS'е не видится вообще, появляясь лишь в Windows). Отключил CD ROM - не помогло. Внимательно прислушавшись при открытом корпусе, обнаружил, что диск прекращает свою жизнедеятельность в момент появления виндовой картинки.

Поскольку "Вестерны" всегда славились стабильной работой при 41,5 мегагерц на PCI-шине, дело, скорее всего, в IDE-контроллере. Что подтверждается и вырубанием CD ROM. То, что здесь не при чем процессор и шина, подтверждается тем, что при перезагрузке выставленные вручную их частоты сохраняются, а не скидываются до минимума (300=66*4,5), как это бывает на Abit'овых "мамах" при заведомо завышенной установке частот (о чем - дальше).

При 100 же мегагерцах на шине система вообще отказалась запускаться - при изменении любых прочих установок отсутствовал сигнал на монитор, система не реагировала ни на резет, ни на выключатель (на лицевой панели). А после выключения питания (из розетки, поскольку выключатель на блоке питания отсутствовал) на экране красовались гордые 300 мегагерц. Впрочем, как уже говорилось, система все равно определялась как Celeron 400 - ведь шина-то 66-мегагерцная, и множитель - шестерка...

Сначала я не мог понять, почему это происходит (вне зависимости от параметра CEL100/66 - а ведь вроде за этим он и придуман, не правда ли?). Потом сообразил - ведь если множитель фиксирован на значении, равном 6, то умножая 6 на 100, получаем ни много ни мало 600, как у какой-нибудь Alpha: для Celeron'а явно многовато. Можно было бы поиграться с напряжением ядра процессора: известно, что плавно повышая таковое, процессор иногда можно запустить на частоте, много выше паспортной. Однако поскольку генеральной задачей партии было все же получение работоспособной машины, а не кучки пепла для посыпания головы, рисковать все же не стал.

Так что слухи о фантастической разгоняемости Abit'овых "мам" вкупе с Celeron'ами оказались несколько преувеличенными. Все же результатами экспериментов в целом я остался доволен. Так что подвожу предварительные (на тот момент) итоги:

Все же Intel всех обманул: в Celeron'е 400 в сокетном исполнении множитель оказался зафиксирован (с тех пор это стало доброй традицией - никого нынче этим не удивишь, 2004 г.). Однако возможность варьировать частоту шины (а хаживали слухи, что и это станет невозможным) сохранилась. Что доказывалось загрузкой машины при 75 мегагерцах и почти загрузкой - при 83; на частоте же 100 мегагерц (и выше) загрузка, видимо, невозможна из-за сильно завышаемой внутренней частоты. Да, должен повторить, что я общался с процессором in box. Возможно, в OEM'ных вариантах дело обстоит по другому (как это отмечалось для слотовых Celeron'ов).

С точки зрения технологической Socket 370 ничуть не хуже Slot 1, а с точки зрения удобства - на мой взгляд, лучше (кстати, никто не задумывался, сколько чисто механически прослужит процессор в слоте, особенно висящий в корпусе башенного типа? Ведь изделие это - веса немалого, а крепежки не производят впечатления вечных).

История с разгоном имела свое продолжение. Однако это - тема следующего мемуара. А пока - попробую завершить историю этой машины, которая к середине 1999 года лишилась Windows и работала исключительно под Linux (о чем - в одной из ближайших заметок). Осенью того же, 99-го, года, началась полоса тотальной смены компьютеров на службе и дома. И моя, тогдашняя, целероновая, сей участи не минула. И, по доброй традиции, перекочевала ко мне на службу. Под винды, разумеется.

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

Сгореть она, правда, не сгорела. Но чуток прижарилась: PS/пополамные порты не выдержали горячего втыкания/вытыкания клавиатуры и мыши, и забарахлили. Да так, что трудящиеся от тачки этой отказались наотрез. И не прошло и пары-тройки лет, как оказалась эта бесхозная тачка на моем служебном столе - разукомплектованная, без винтов и CD, со странным по нынешним временам набором DIMM'ов, но - живая! И живет до сих пор - то под Линуксом, то под Фрей (именно она - и была долгие годы моим шанцевым струментом для скачивания со службы всего и вся, что, хорошо ли, плохо ли, лежит на ftp'ях). Пока, как отслужившая срок эпохи, не была подарена товарищу. Правда, винды с тех пор на нее никто никогда не ставил...