Архивы: по дате | по разделам | по авторам

Утюги и чайники

Архив
автор : ИГОРЬ КНИЖНЫЙ, АЛЕКСАНДР ПЯТОШИН    16.09.1998

Разогнать можно даже чайник. Нужно ли?

 
"...Компьютер у нас пень-200MMX/48 Mb/HDD 850 Mb/SVGA-SIS 1868 1Mb, мать Iwill P55XPlus. Это результат долгих мучений и блужданий по пути апгрейда (в основном из-за финансовых трудностей). Сейчас мы хотим поменять Intel'овский процессор на Cyrix M2 6x86 P233+ MMX (нам доплатят, и мы купим видеокарту покруче). Объясните, пожалуйста, что мы потеряем после этого обмена (в смысле работы процессора, намного ли Cyrix хуже Intel)?..

С уважением,
Вячеслав Омутков и группа единомышленников
"

Нельзя сказать, что процессоры Cyrix M2 (выпускается также с маркировкой "IBM"), равно как и K6 компании AMD или C6 от Centaur Technology, однозначно лучше или хуже Intel Pentium MMX. На наш взгляд, такая постановка вопроса просто некорректна. Все эти процессоры создавались независимыми группами разработчиков, причем Pentium MMX появился раньше, так что конкуренты Intel имели возможность (по крайней мере - теоретически) учесть ошибки предшественника.

Понятно, что и процессоры получились неодинаковыми. Cyrix M2 (как и AMD K6) несколько превосходит работающий на той же тактовой частоте Pentium MMX при выполнении целочисленных операций, уступая ему - порой значительно - на так называемых операциях с плавающей точкой. Кстати, фигурирующее в названии процессора фирмы Cyrix (но не AMD K6!) обозначение "PR233" характеризует не собственную частоту процессора M2, а его P-rating, то есть частоту процессора Intel Pentium, имеющего ту же производительность, оцениваемую как результат выполнения некоего набора тестов (собственная рабочая частота процессора Cyrix в зависимости от серии составляет 187,5 либо 200 МГц). Превосходство процессоров фирмы Cyrix связано прежде всего с увеличенной до 64 Кбайт (против 32 Кбайт у Intel Pentium MMX) внутренней кэш-памятью процессора, улучшенным алгоритмом предсказания переходов и усовершенствованной конвейеризацией.

Однако результатам любого тестирования не следует доверяться всецело: в конце концов, значительно чаще процессор используется не для запуска тестовых программ, а для реальной работы. И здесь оказывается, что, показывая замечательные результаты в офисных приложениях, Cyrix 6x86MX PR233 значительно уступает своему прототипу, когда программа интенсивно использует блок сопроцессора (FPU). Заметим, что во времена 386-х и 486-х процессоров арифметический сопроцессор рассматривался как некоторая необязательная часть компьютера, и именно в силу этой необязательности его старались не использовать без крайней необходимости при написании программ. Но уже с появлением Intel Pentium ситуация коренным образом изменилась. Pentium-совместимый процессор без FPU пыталась одно время выпускать лишь несуществующая ныне компания NexGen, но ни Intel, ни Cyrix, ни AMD не делали ничего подобного. Неудивительно, что приложений, в той или иной степени использующих возможности FPU, становится все больше. Прежде всего это справедливо для программ, работающих с компьютерной графикой (фильтрация, рендеринг и т. д.). И здесь уже Intel Pentium вне конкуренции.

Таким образом, чтобы решить, стоит ли менять Pentium на M2, необходимо оценить, какие программы будут использоваться чаще. Если это Microsoft Office, OCR, компиляторы, архиваторы, меняйте процессор не раздумывая, если же вы не прочь поиграть в "Quake", "Unreal" и другие ресурсоемкие игры или используете графические пакеты, подобные PhotoShop или 3D Studio, то выбор Cyrix M2, вероятно, будет не лучшим решением. Кстати, по некоторым данным, M2 даже на своей паспортной частоте греется довольно сильно, поэтому при его установке необходимо обеспечить хорошее охлаждение.

 

"...разогнал процессор iP-166 MMX до 208 МГц (83х2,5), теперь некоторые программы, в частности, карта Москвы MCITY, сообщают об ошибке "Runtime error 200" или просто о делении на ноль. В чем дело, неужели это от разгона? В остальном компьютер работает нормально, только быстрее, чем раньше.

А. Маслов"

Зачастую после разгона процессора/шины действительно возникают аппаратные осложнения, однако здесь совсем иной случай. Подобные аварийные завершения программ, написанных на Паскале и откомпилированных с использованием старых версий Turbo и Borland Pascal, известны давно. Суть проблемы состоит в том, что для измерения производительности процессора в этих системах программирования подсчитывается число итераций пустого (или почти пустого) цикла, прокрученных за время одного таймерного тика (примерно 1/55 секунды). Затем полученное число делится на константу 55 (37H в шестнадцатеричной записи). Результат измерения может использоваться системными процедурами программы (например, при генерации звука на встроенный динамик, реализации программной задержки и т. п.). И если в допентиумную эпоху этот способ оценки быстродействия процессора (порочный по сути и с ошибкой реализованный) еще хоть как-то работал, то на современных быстрых процессорах частное от деления превышает разрядность регистра, в который должен быть помещен результат (число итераций оказывается слишком большим). Следствием этого будет генерация прерывания 0 (Divide by zero) и преждевременное завершение программы с выдачей соответствующего сообщения.

Понимание причины появления сообщения "Runtime error 200", вероятно, способно облегчить кому-то жизнь, но открытым остается вопрос: что же все-таки делать в подобной ситуации? Хорошо, если неработающая программа всего лишь забавная безделица, а если нет? Можно, конечно, поискать в Интернете или у знакомых ее более свежую версию, но ведь это не всегда возможно... На этот случай мы приведем здесь некоторые советы по устранению проблемы:

  • если программа не обработана упаковщиком LZEXE, PKLITE и им подобным, то можно "обработать" ее одной из программ-"патчилок" (от английского "patch" - заплатка), в изобилии имеющихся в Интернете, - например, T-PENT2. Напомним, что косвенным признаком того, что исполняемый файл упакован, может служить наличие строки "!PKLITE", "LZ09" или "LZ91" в заголовке файла;
  • если программа все-таки упакована, то предварительно ее следует распаковать (здесь могут быть полезны универсальные распаковщики вроде UNP или "ломалки" наподобие AUTOHACK);
  • если попытки распаковать программу оказались тщетными (упаковщик может быть нестандартным, написанным авторами программы), или программа содержит встроенный механизм контроля целостности файла, или, наконец, нет возможности выйти в Интернет, можно отключить в настройках системного BIOS внутренний кэш процессора L1 (именно L1, не L2!). Это приведет к столь значительному снижению быстродействия компьютера, что сообщение об ошибке не появится. Но, возможно, дождаться окончания загрузки операционной системы (даже DOS, не говоря уже о Windows) будет непросто. Можно попытаться найти в том же Интернете резидентную "тормозилку", обеспечивающую подобный эффект и без выхода в BIOS Setup, но тормозить весь компьютер ради одной, даже чрезвычайно полезной программы как-то... неэлегантно. Вы не находите?

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

8B C2 B7 37 F6 F7

в ассемблере это соответствует последовательности команд

MOV AX,DX
MOV BH,37H
DIV BH

и заменить в этой последовательности "37" на "FF". Если указанную последовательность обнаружить не удалось (а это вполне возможно, поскольку разные версии Borland Pascal использовали различные версии системных библиотек), можно попытаться найти другую последовательность:

F7 D0 F7 D2 B9 37 00 F7 F1

NOT AX
NOT DX
MOV CX,37H
DIV CX

В ней также необходимо заменить "37" на "FF". Сохранив на диске сделанные в файле изменения, можно обеспечить работоспособность программы даже на Pentium II 450.

Заметим, что исключить возможность существования еще каких-то вариантов неверно работающего кода в библиотеках Borland Pascal мы не можем, а потому не гарантируем, что приведенные фрагменты действительно содержатся во всех неверно работающих программах, сообщающих о Runtime error 200. Кроме того, мы настоятельно рекомендуем создать резервную копию редактируемого файла, прежде чем в него будут внесены какие-либо изменения. И, наконец, мы убедительно просим помнить, что все описанные изменения в программах (если дело дойдет до этого) вы делаете исключительно на свой страх и риск. Претензии по поводу возможных последствий не принимаются и не рассматриваются!

Что же до упомянутой вами программы MCITY, то корректируемый байт (число 37H) расположен в ней со смещением 35D50H. При этом полный размер распакованного EXE-файла - 372800 байт.

 

"Я решил перейти на PII-333Mhz, но возник спор насчет разгона этого процессора. Реально ли разогнать PII-333 до 400Mhz на P2B или на Abit BX6?

P. S. И если он гонится только до 350Mhz, может, стоит взять PII-300, который почти на $200 дешевле? Почему такая разница в цене?

Заранее спасибо! "

Честно говоря, когда приходится отвечать на вопросы, касающиеся разгона процессоров, всегда ощущаешь некоторую неловкость. С одной стороны, и пишущий эти строки И. Книжный, и г-н Пятошин, и даже сам Евгений Козловский (!!!) - все работают (и довольно давно) на разогнанных процессорах, не испытывая никаких угрызений совести. Но, согласитесь, есть некоторая разница между разгоном процессора, купленного за свои кровные, и рекомендацией делать это, помещенной на страницах журнала! А ну как сгорит у неопытного юзера процессор, а ну как попортятся на его винчестере бесценные данные, результаты многолетних трудов! Ведь и стыдно будет, и неловко, да и небезопасно: по судам ведь затаскают! А потому (стыдливо потупив глазки): "Мы не можем рекомендовать вам разгонять процессор - производитель не гарантирует функционирование прибора на частоте, превышающей паспортную. Разгон процессора может привести к выходу его из строя и к потере имеющихся в компьютере данных". Вот так!

Тем не менее, известны многочисленные случаи удачного запуска и длительной безотказной работы процессоров на повышенных частотах (это в большей степени относится к процессорам фирмы Intel). Celeron 266, установленный в компьютере, на котором пишется ответ на ваш вопрос, абсолютно устойчиво работает на частоте 448 МГц на материнской плате Chaintech 6BTM (кстати, рекомендую: дешевле асусовской P2B, а работает ничуть не хуже). Но из трех прошедших через мои руки Celeron'ов один не вполне устойчиво работал на 333 МГц, другой гнался до 400, и лишь третий (кстати, из той же партии, что и второй) не просто завелся на 448 МГц, но и выдержал многодневное тщательнейшее тестирование на этой частоте. О чем это говорит? Да о том, что успех при разгоне процессора подобен выигрышу в лотерею. Вот и ответьте себе сами: "реально ли" выиграть разгоняющийся до 400 МГц Pentium II 333?

От чего зависит выигрыш? Не в последнюю очередь от разогрева процессора, и именно это обстоятельство позволяет надеяться, что прибор, рассчитанный на 333 МГц, с большей вероятностью успешно заработает на 350 МГц (возможно - и на 400), чем его 300-мегагерцовый собрат. Дело в том, что Pentium II 333 содержит ядро Deschutes (такое же, как и у процессоров на 350 и 400 МГц), а процессор Pentium II 300 (равно как 233 и 266) собран на ядре Klamath. Разница заключается не в звучных терминах, а в технологических нормах производства кристаллов (0,25 мкм у PII 333 и 0,35 мкм у PII 300), пониженном напряжении питания ядра процессора (2,0 В против 2,8 В) и, следовательно, в разном энергопотреблении и выделении тепла.

Кстати, процессоры Intel Celeron, также построенные на основе ядра Deschutes, при разгоне до 448 МГц остаются чуть теплыми, тогда как Pentium II 300 даже на номинальной частоте греется, как печка. Согласно спецификации Intel, этот процессор потребляет 43 Вт (!), при этом его рабочая температура не должна превышать 72 градусов. Разогнанный до 333 МГц, Pentium II 300 устойчиво работает у нас лишь при интенсивном охлаждении (шутка ли - три мощных вентилятора!). В общем, выводы делайте сами. Впрочем, нам приходилось слышать о процессорах Pentium II 233, работающих на 392 МГц. Правда это или нет, сказать трудно. Но ведь и на бутылку с кока-колой можно выиграть автомобиль...

Мастера:
Игорь Книжный и Александр Пятошин

© ООО "Компьютерра-Онлайн", 1997-2021
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.