Древности: Бенчмарк 386-го процессора и лихие девяностые
Из 2019 года кажется, что компьютер начала девяностых не способен ни на что. Видео не играет. Музыку в MP3 не может, или может, но с таким качеством, что вам это не понравится. Crysis will not run. Но после того, как я собрал и запустил винтажную систему из запчастей почти 30-летней давности, мне стало интересно:, а как именно он не способен? В каких единицах это выражается? И как это измерить?
С измерениями все непросто, если пытаться сравнивать древний компьютер с современным: на новых ПК старые бенчмарки запустить если и получится, то результаты будут странные. Более современный софт не взлетит на старом компьютере. Сегодня будет более-менее занудный технический пост, в котором я сравниваю вычислительную мощность 386-го процессора с ноутбуком на базе Pentium III и с десктопом на базе Intel Xeon X5690. Спойлер: производительность в девяностые росла куда быстрее, чем в нулевые.
Все статьи по теме:
0. 1992 год в компьютерной прессе
1. Рассматриваем материнскую плату 386-го компьютера
2. Бенчмарк 386-го процессора и лихие девяностые < — вы находитесь здесь
Дневник коллекционера старых железок я веду в Телеграмме.
Действующие лица
Итак, наш основной подопытный — это компьютер на базе процессора 80386DX с частотой 40 мегагерц, 32 мегабайтами оперативной памяти, сопроцессором 80387 и флешкой вместо жесткого диска. Пока это не компьютер, а собрание плат, установленное на коробку из-под старой видеокарты. Можно условно отнести такую систему к 1991–1992 годам: в те времена существовали компьютеры и помощнее, но такой 386-й был вполне себе разумным выбором.
Добавим ноутбук ThinkPad T22 на базе процессора Intel Pentium III с частотой 900 мегагерц, 256 мегабайтами памяти и жестким диском на 80 гигабайт. Подробнее об этом ноутбуке я рассказывал здесь. Выпущен он в 2001 году, примерно через десять лет после 386-го.
Раз так, то логично будет перемотать время еще на десять лет вперед. Для этого идеально подходит собранный в начале этого года умеренно винтажный десктоп на базе чипсета Intel X58, с процессором Xeon X5690 (штатная частота 3.3Ггц, рабочая — 3.9) и 32 гигабайтами памяти. Несмотря на внушительные характеристики, это представитель «еще той» школы компьютерного строительства. К нему можно нативно подключить дисковод и загрузиться в MS-DOS без плясок с бубном. Материнская плата этого компьютера выпущена в 2009 году, но процессор появился в продаже в 2011-м.
Бенчмарки под DOS
Бенчмарки в современном виде, как отдельные программы для комплексного измерения производительности компьютера, появились не сразу. Журнал PC Magazine почти все восьмидесятые измерял самые базовые параметры быстродействия: выполнение инструкций, скорость обработки данных в памяти и подобное. Чаще всего измерялось время выполнения операций, что представляет проблему: на современном ПК то, что раньше занимало минуты, теперь выполняется за доли секунд.
Одним из ранних универсальных бенчмарков является тест LandMark, разрабатываемый с 1981 года. Так как производительность системы уже тогда зависела не только от частоты процессора, но и, например, от наличия сопроцессора и присутствия кэш-памяти, производители писали в рекламе результаты в LandMark. Метод расчета был странный: производительность сравнивалась с эталонной системой IBM PC/AT на базе 286-го процессора с частотой 6 мегагерц. Результатом теста для вашего компьютера является некое теоретическое значение частоты 286-го процессора, на которой он бы сравнялся с исследуемой системой. Например, мой 386-й процессор работает так же, как работал бы 286-й на частоте 69.45 мегагерц. А ноутбук на Pentium III — это как если бы 286-й работал на частоте 8695 мегагерц. Запускаем тест на Xeon и получаем переполнение счетчика результатов:
Такие ситуации в раннюю эпоху развития персональных компьютеров происходили часто: разработчики не могли себе представить, что частота процессора, вычислительная мощность или объем памяти достигнут таких гигантских значений. Или просто не думали: проблема Y2K имеет похожие корни. Кстати, 386-я матплата ей частично подвержена — после 31 декабря 1999 года наступает 1 января 1900-го. Если напрямую выставить год, то все работает нормально. А вот так DOS-версия игры SimCity 2000 реагирует на 32 мегабайта оперативной памяти:
В общем, для сравнения компьютеров до 1993 года между собой LandMark подходит. Он также проводит расчеты непрерывно, и благодаря ему можно проверить, не понижена ли частота процессора из-за кнопки Turbo: в некоторых системах соответствующий контакт на матплате должен быть замкнут, на других — разомкнут. Но мне пришлось искать что-то еще. На помощь приходит уже упомянутый в предыдущей статьей бенчмарк Speedsys:
Он разрабатывался до середины нулевых, без проблем распознает процессоры той эпохи, и, главное, нормально работает даже на Xeon. Результат на 386 (нас интересует график слева внизу) — 7.07 баллов.
Результат на ноутбуке с PIII-900 — 1039.51 балла.
На Xeon этот бенчмарк можно запустить только нативно. В DosBox, и в виртуальной машине с FreeDos он у меня не заработал. Помогла загрузочная флешка с DOS. Результат — 7540.05 баллов. Иными словами, с 1991 по 2001 год производительность выросла в 147 раз, с 2001 по 2011-й — в 7.2 раза. Да, но этот тест не учитывает, что в Xeon шесть процессорных ядер. Кстати, если задумаете повторить этот странный эксперимент, рекомендую отключить в BIOS все системы энергосбережения, иначе получите разброс в результатах.
Надо бы попробовать какие-то реальные приложения, и здесь лучше всего подойдут игры. Первый Doom был выпущен в конце 1993 года, и на 386-е компьютеры он произвел примерно тот же эффект, что в 2009 году Crysis. В смысле, только что у вас был пусть и не самый новый, но приличный ПК. Но выходит Doom, и вы в него не можете играть. Точнее можете, но изображение будет размером с почтовую марку. Здесь важно точно воспроизводить параметры тестирования: настройки графики, размер изображения, и версию самого Doom.
В свое время ведущий YouTube-канала Phil’s Computer Lab собрал пакет древних бенчмарков для DOS с удобным батником. Doom и другие тесты я запускал именно из его сборки. В пакете есть две версии бенчмарка Doom — с минимальными и максимальными настройками. Последний вариант почти не использовался в реальной игре, так как в нем скрывыается игровое меню. Но для тестов подойдет. Результат бенчмарк пишет в своих единицах, которые нужно сконвертировать в кадры в секунду. 386-й показал 28.7 fps «на минималках» и 7.12 fps с максимальным качеством. Сравним с более современными ПК: 461 и 123 fps на Pentium III, и совершенно несерьезные 426 и 93 fps на Xeon X5690. «Думу» явно что-то не нравится в моей самой мощной системе и он показывает результаты ниже, чем на Pentium III.
Похожая ситуация наблюдается в утилите Norton System Information 8.0. Встроенный бенчмарк процессора показывает 43.2 балла на 386, 344.7 баллов на PIII и 960 баллов на Xeon. Развитие процессоров за последние 15 лет замедлилось, но не настолько.
Windows 95 и SuperPi
Окей, запускать MS-DOS на шестиядерной машине — то еще извращение. Что насчет программ, написанных под 32-битную Windows? Теоретически их можно запустить на всех трех системах. На практике нужно аккуратно подбирать версии софта и бенчмарков: разработчики начали отказываться от поддержки Win9x уже в середине двухтысячных. Какой-то софт нормально работает на Windows 98, но у меня-то компьютер 1991–1992 годов, ему и Windows 95 многовато. Ее и поставим.
Windows 95 в редакции OSR2 выпущена в 1996 году. На 386 она работает не то, чтобы медленно, но и не быстро. Спасает огромный (по меркам тех лет) объем оперативной памяти, но даже стандартную Панель Управления ретрокомпьютер отрисовывает неторопливо. Впрочем, у нее есть одно преимущество: в отличие от современных систем, Windows 95 тормозит предсказуемо. В любом случае PCMark или любой другой комплексный бенчмарк на этой системе не запустится. Нужно что-то очень простое, зависяшее только от вычислительной мощности. Например SuperPi.
На форуме Vogons я нашел версию теста SuperPi, работающую как под Windows 95, так и под Windows 98 и Windows 10. Результаты для вычисления одного миллиона знаков числа Pi после запятой:
- Xeon X5690: 10.531 секунды
- Pentium III 900: 3 минуты 3.786 секунды
- 80386 DX40: 16 часов 58 минут 31.445 секунды
Мда. Этот процессор не тормозит, он соблюдает баланс работы и личной жизни. Получается, что процессор 2001 года считает число Pi в 332 раза быстрее 386-го. Xeon быстрее Pentium III в 17.5 раз, и в 5800 раз быстрее 386-го процессора. Неплохой прогресс, согласитесь.
WinRar и многопоточность
Результаты в SuperPi дают похожий расклад по росту производительности, по сравнению с Speedsys. Но они не способны точно оценить все возможности шестиядерного Intel Xeon, так как являются строго однопоточными. Какой бенчмарк можно запускать и на старом железе, и на новом в несколько потоков одновременно? Предлагайте варианты в комментариях, но один я нашел — это архиватор WinRAR. На Windows 95 и более поздних ПК без проблем заработала версия 3.80 2008 года. Вот результаты для Xeon в однопоточном и многопоточном режимах:
Это результат для Pentium III:
С 386-м процессором сложнее. Встроенный бенчмарк WinRar работает так: он непрерывно архивирует данные, и после получения достаточного объема статистики показывает результат — скорость архивации в килобайтах в секунду. На современном компьютере результат демонстрируется после обработки примерно 25–30 мегабайт данных. Чтобы достичь этой цифры на 386-м процессоре, потребовалось больше суток!
Под конец второго дня теста я сдался: WinRAR упорно не показывал результат, но скриншот выше помогает достаточно точно оценить производительность — около 214 байт в секунду. Это в 1210 раз медленнее, чем на Pentium III. Xeon в однопоточном режиме примерно в 4 раза быстрее третьего Пентиума. В многопоточном режиме он быстрее в 15 раз, хотя разница между одним потоком и несколькими немного не соответствует количеству ядер — возможно это ограничения кода WinRAR.
Выводы
Сначала пройдемся по результатам бенчмарков. Мои измерения по определению неточные: у меня есть ощущение, что в том же WinRAR 386-я система просто не могла переварить большой (для нее) объем данных, и процессор чаще простаивал в ожидании, чем считал. Тем не менее, три разных бенчмарка (Speedsys, SuperPi и WinRAR) показали прирост производительности между компьютером 1991 и 2001 годов выпуска в сотни раз! Следующие десять лет повысили производительность максимум в десятки раз. Опять же, это не совсем честное сравнение: старые бенчмарки могут не использовать новые инструкции свежего железа.
Посмотрим в независимый источник. Здесь приведены результаты универсального бенчмарка вычислительной мощности Linpack для систем начиная с 386-го и вплоть до Core i7 третьего поколения (причем с оптимизацией под архитектуру, с использованием, где возможно, инструкций SSE и AVX). Разница между 386–40 (0.53 Мфлопс), Pentium III-1000 (316.67) и Core i7–3930K (3112.94) показывает похожий расклад. Рост почти в 600 раз в девяностые и всего в 10 раз в нулевые.
В конце прошлого тысячелетия мы наблюдали взрывной рост производительности персональных компьютеров. В новом веке рост тоже был, и значительный, но такого сумасшедшего прогресса больше не было. Причем в восьмидесятые, с самого начала эры PC-совместимых ПК, развитие также не было настолько бурным — 8086 отличается от 80386 (по результатам того самого теста Landmark) примерно в 50 раз, а не в 500. Это делает девяностые уникальным явлением в истории компьютеров: мы начали с текстового редактора Лексикон и Нортон Коммандера, а закончили стримингом аудио по сети, 3D-играми и видео студийного качества.
Несмотря на разницу по производительности между шестиядерным Xeon и 386-м процессором в тысячи раз, половина этой статьи была без проблем набрана именно на старой системе в Microsoft Word 6.0. Какие-то задачи вовсе не требуют мощных современных систем, их производительность съедают скорее «удобства» (вроде синхронизации с облаком) и подход к написанию кода. Два дня стресс-теста в WinRAR показали, что моя 386-я система — может и не самая быстрая, но стабильная и надежная. А значит, будем продолжать исследования.
В следующем материале я планирую исследовать на 386 древние звуковые карты. А пока вот вам еще один спойлер другой темы, изучение которой займет у меня гораздо больше времени.