Из 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 древние звуковые карты. А пока вот вам еще один спойлер другой темы, изучение которой займет у меня гораздо больше времени.

Комментарии (35)


  1. vesper-bot
    10.10.2019 11:18
    +3

    Скорее всего, на винрарном тесте 386й тупо свапался большую часть времени — все-таки если вдруг словарь у винрара оказался 32МБ, то он просто не помещался в памяти, и операции поиска в словаре должны были задействовать диск.


    1. f15 Автор
      10.10.2019 11:33

      Вполне вероятно. Я привел результаты для расчета 128К знаков, там заметно быстрее получается. Можно конечно нарастить память 386-го до 128 мегабайт, но это будет совсем нереалистичная система.


      1. vesper-bot
        10.10.2019 11:37

        А он может столько адресовать? Последний раз, когда я интересовался, я запомнил цифру в 24 адресных бита у какого-то компа на 386м. Может быть, это лимит материнской платы был, а не процессора — у него все-таки unreal mode все 4ГБ позволяла адресовать. Правда, 24 бита это 16МБ, то есть меньше, чем здесь.


        1. f15 Автор
          10.10.2019 16:05

          Насколько мне известно, каких-то серьезных ограничений на объем памяти у 386-го нет, если не брать в расчет 386SX, у которого внешняя шина данных ограничена. Теоретически я могу найти и поставить 16-мегабайтные SIMM, но практического смысла это не имеет. Наоборот, думаю уменьшить объем памяти до 16МБ.


          1. old_gamer
            10.10.2019 16:10
            +1

            Там еще в чипсете дело. DRAM адресуется как матрица, а не линейно, так что процессор напрямую с ней не взаимодействует и от него зависит только нижний лимит, верхний определяет сам чипет


  1. mistergrim
    10.10.2019 11:22

    80386 DX40: 16 часов 58 минут 31.445 секунды

    Мда. Этот процессор не тормозит, он соблюдает баланс работы и личной жизни. Получается, что процессор 2001 года считает число Pi в 332 раза быстрее 386-го. Xeon быстрее Pentium III в 17.5 раз, и в 5800 раз быстрее 386-го процессора. Неплохой прогресс, согласитесь.
    Если 386 без математического сопроцессора, то результаты не имеют смысла. SuperPI использует FPU.


    1. vesper-bot
      10.10.2019 11:25
      +2

      В комплектации был заявлен NPU 80387.


      компьютер на базе процессора 80386DX с частотой 40 мегагерц, 32 мегабайтами оперативной памяти, сопроцессором 80387


  1. old_gamer
    10.10.2019 12:11

    А вот так DOS-версия игры SimCity 2000 реагирует на 32 мегабайта оперативной памяти:

    Точно 32 МБ? Очень похоже на знаковое 16 битное отображение числа 65535
    Кстати, когда я подобные тесты проводил, у меня бенчмарки Win гораздо лучше масштабировались по скорости, чем ДОС. Начиная где-то с 450 МГц бенчмарки ДОС становились бессмысленными, а Win еще что-то показывали. Особенно это видно было на примере Quake(DOS)/Quake2(Win)


    1. f15 Автор
      10.10.2019 12:38

      Точно 32 мегабайта. А вот инсталлятор SimCity мог что-то своё посчитать.

      Кстати, Quake под Dos на 386 запускается. Бенчмарк показывает 0.8 fps :) Проблему с Win-бенчмарками я показал наглядно: не все запускаются на 386, и есть подозрение, что упираются не в процессор, а в объем памяти. Непростое выходит сравнение при таком разбросе характеристик.


      1. old_gamer
        10.10.2019 13:03

        Да 386 вообще способный. Я на нем и q2 запускал )). Современным бенчмаркам еще может не хватать инструкций более современных, которых не было в 386.


    1. vesper-bot
      10.10.2019 13:00
      +2

      Тогдашние функции обнаружения размеров оперативной памяти были 16-битными и возвращали число КБ. И таки да, знаковыми. И эти показанные -32768 КБ это MAXINT+1 или 0x8000.


      1. old_gamer
        10.10.2019 13:05

        Черт, точно, там же two's compliment, FFFF это -1.


  1. kostik450
    10.10.2019 15:17
    +2

    Провёл собственные исследования на примере ASM.NG файла (кто помнит это? тому респект)

    Заголовок спойлера
    Сусликов пишет:
            Это не есть тестирование архиваторов, просто
    однажды ради спортивного интереса мне захотелось свернуть
    какой-нибудь большой файл всеми архиваторами, какие найду
    под рукой. Большой файл - это ASM.NG (597407 байт).
    Все это делалось на машине с процессором 8088.
    
    -----------+----------+-----+--------+--------+-------
      release    options           size     time     %%
                                  (bytes)   (min)
    -----------+----------+-----+--------+--------+-------
    0.20 beta      ARJ/1    ARJ   176088   20.34    29.5
    0.20 beta      ARJ/2    ARJ   186246   20.34    31.2
    0.20 beta      ARJ/3    ARJ   198319    5.41    33.2
    0.20 beta      ARJ/4    ARJ   213318    5.5     35.7
    2.5            HYPER    HYP   184669    6.8     30
    2.05           ICE      LZH   176018    8.39    29
    3.5            PKARC    ARC   274403    1.5     45
    1.1            ZIP/EX   ZIP   196799    4.10    32
    1.1            ZIP/EI   ZIP   196799    4.9     32
    1.1            ZIP/ES   ZIP   287426    1.44    48
    -----------+----------+-----+--------+--------+-------
    


    С.Чернивецкий отвечает:

         В Софтпанораме 3.4 было помещено сообщение Сусликова
    (\forum\arc-club\suslikov.034) о сравнении архиваторов на большом файле,
    в качестве которого был взят ASM.NG (597407 байт). Хотя, по его словам,
    это сравнение проводилось ради спортивного интереса, и по-видимому файл
    был выбран совершенно случайно, мне показалось интересным расширить
    таблицу Сусликова, включив в нее также и архиватор Charc. К сожалению,
    у меня не оказалось под рукой компьютера с процессором 8088, поэтому
    для сравнения пришлось повторить архивирование и другими архиваторами.
    Был использован процессор 80286. Замечу, что преимущества архиватора
    Charc версии 1.3 в полной мере проявляются только на больших файлах
    (длиной в сотни килобайт, как ASM.NG), на меньших же файлах либо
    преимущества нет, либо даже может быть небольшой проигрыш.
    
    Упаковщик    Время работы    Размер архива    Сжатие
                   (мин.сек)         (байт)         (%)
    ARJ 1.00          2.25           176019       29.46%
    CHARC 1.3         0.55           168405       28.19%
    LHA 2.05          1.04           175950       29.45%
    PKARC 3.5         0.14           274541       45.96%
    PKZIP 1.1         0.31           196733       32.93%
    



    Я нашел этот файл, вот md5 его
    be35ceab78e512da6c9942db58944575 *ASM.NG

    Раскопировал его в 1000 директорий (на SSD диске), используя программу:

    #include <stdio.h>
    #include <stdlib.h>
    #include <dir.h>
    
    void main(void)
    {
    	for(int i=0;i<1000;i++)
    	{
    		char path[100];
    		sprintf(path, "%d", i);
    		mkdir(path);
    		sprintf(path, "copy asm.ng %d", i);
    		system(path);
    	}
    }
    


    И получил на моем процессоре AMD FX-8150 (8 ядер, 3.60 GHz)
    на архиваторе WinRAR 5.71 (64 разряда)

    метод сжатия ZIP максимальный
    1000 файлов — 75 сек
    0,075 сек на файл
    размер после сжатия: 156030 байт

    метод сжатия ZIP скоростной
    1000 файлов — 10 сек
    0,01 сек на файл
    размер после сжатия: 165058 байт

    Размер поражает — даже на скоростном методе сжатия размер меньше, чем древний ZIP 1.1 на максимальном. Ну ладно, сравним скорость с максимальным. Хотя это и неправильно, сравнивать 16-ти битовые программы и 64 битовые.


    1. f15 Автор
      10.10.2019 15:33

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

      Хотя это и неправильно, сравнивать 16-ти битовые программы и 64 битовые.

      Так как задача не меняется, мне кажется это оправдано. Но я бы хотел протестировать тот же WinRAR 3.80. Как вы замеряли время выполнения?


      1. kostik450
        10.10.2019 15:39
        +1

        Время показывает сам WinRAR, суммируем и получаем 75 сек

        image


    1. khim
      10.10.2019 20:09

      PS. Кстати, Софтпанорама 1991 уже не гуглится. Неужели всё погибло?
      Много чего сохранилось (хотя и не всё). Просто надо понимать, что HTML только в 1993м году появился. Ранние выпуски лежат ровно на том сайте, который вы нашли — просто в архивах.


  1. veselovi4
    10.10.2019 15:48
    +1

    В 90-е была такая утилита ДОСовская как Check IT (если не ошибаюсь в правильном написании).Гоняли её на 2\3\486 машинках. Там кроме тестов памяти, видео и HDD был замер производительности процессора в странных «попугаях» под названием dristones кажется :).


    1. old_gamer
      10.10.2019 15:54

      Dry/Wet stones для CPU/FPU, — это, по-моему, Landmark. Но могу ошибаться.


    1. f15 Автор
      10.10.2019 16:03

      Dhrystones и Whetstones, да.
      Она, к сожалению, не заработала на Xeon.


  1. axe_chita
    10.10.2019 21:04
    +1

    Может имеет смысл посмотреть тесты от сюда Dhrystone Benchmark Results On PCs

    Результаты тестов от 386 и выше
    Dhry1 Dhry1 Dhry2 Dhry2
    Opt NoOpt Opt NoOpt
    VAX VAX VAX VAX
    CPU MHz MIPS MIPS MIPS MIPS

    AMD 80386 40 17.5 4.32 13.7 4.53
    IBM 486D2 50 26.6 7.89 22.4 7.89
    80486 DX2 66 45.1 12.0 35.3 12.4
    IBM 486BL 100 53.9 12.0 40.9 11.8
    AMD 5X86 133 84.5 9.37 84.5 9.42
    Pentium 75 112 19.3 87.1 18.9
    Cyrix P150 120 175 27.9 160 28.3
    Pentium 100 169 31.8 122 32.2
    Cyrix PP166 133 219 38.4 180 39.8
    IBM 6x86 150 234 44.1 188 43.9
    Pentium 133 239 38.3 181 39.0
    Pentium 166 270 43.6 189 43.9
    Cyrix PR233 188 286 46.4 232 45.8
    Pentium 200 353 47.4 269 48.1
    Pentium MMX 200 352 51.4 276 51.0
    AMD K6 200 349 43.1 289 43.3
    Pentium Pro 200 373 92.4 312 91.9
    Celeron A 300 553 133 484 136
    Pentium II 300 544 132 477 136
    AMD K62 500 778 77.8 606 76.8
    AMD K63 450 804 76.3 645 77.4
    Pentium II 450 813 199 713 204
    Celeron A 450 828 198 720 202
    Pentium III 450 846 197 722 203
    Pentium III 600 1105 263 959 270
    Athlon 600 1316 321 942 316
    Duron 600 1382 350 999 349
    Pentium III 1000 1858 461 1595 465
    PIII Tualatin 1200 2205 546 1907 571
    Pentium 4 1700 2262 239 1843 242
    Athlon Tbird 1000 2282 634 1659 602
    Duron 1000 2288 576 1674 587
    Celeron M 1295 2440 640 2273 645
    Atom 1600 2462 717 1828 728
    Pentium 4 1900 2593 261 2003 269
    Atom 1666 2600 772 1948 780
    P4 Xeon 2200 3028 300 2265 309
    Atom Z8300 1840 3203 904 2686 927
    Athlon 4 1600 3707 956 2830 1004
    Pentium M 1862 4082 954 3933 975
    Ath4 Barton 1800 4181 1061 3172 1099
    Pentium 4E 3000 4379 566 3553 566
    Athlon XP 2080 4826 1228 3700 1312
    Turion 64 M 1900 4972 1186 3742 1150
    Pentium 4 3066 5052 432 4012 434
    Opteron 1991 5077 1268 3985 1223
    Core 2 Duo M 1830 5379 892 4952 966
    Athlon XP 2338 5433 1400 4160 1482
    Athlon 64 2150 5658 1312 4288 1355
    Pentium 4 3678 5787 511 4227 480
    Athlon 64 2211 5798 1348 4462 1312
    Celeron C2 M 2000 5804 932 5275 1050
    Core 2 Duo 1 CP 2400 7145 1198 6446 1251
    Core i5 2467M @@@@ 8338 1183 4752 1148
    Phenom II 1 CP 3000 9462 2250 7615 2253
    Core i7 930 **** 9826 1662 8684 1661
    Core i7 860 #### 10094 1789 9978 1847
    Core i7 3930K &&&& 13871 1960 11197 1972
    Core i7 4820K $$$1 14136 1958 11867 1981
    Core i7 4820K $$$2 14776 2006 11978 2014
    Core i7 3930K OC 17269 2444 13877 2432

    #### Rated as 2800 MHz but running at up to
    3460 MHz using Turbo Boost
    **** Rated as 2800 MHz but running at up to
    3066 MHz using Turbo Boost
    @@@@ Rated as 1600 MHz running at up to
    2300 MHz using Turbo Boost
    &&&& Rated as 3200 MHz but running at up to
    3800 MHz, OC OverClocked ~4730 MHz
    $$$1 Rated as 3700 MHz but running at up to
    3900 MHz, using Turbo Boost
    $$$2 Performance not Balanced Power Setting
    for 3900 MHz
    M = Mobile CPU

    To Start

    Dhry1 Dhry1 Dhry2 Dhry2
    Opt NoOpt Opt NoOpt
    VAX VAX VAX VAX
    CPU MHz MIPS MIPS MIPS MIPS

    Later Results 32 and 64 Bit MS Compilers

    Pentium 4 32b1 1900 2613 1795

    Athlon 64 32b1 2211 6104 3720
    Athlon 64 64b1 2211 8668 5214
    Athlon 64 64b2 2211 8549 4654

    Core 2 Duo 32b1 2400 8094 5476
    Core 2 Duo 64b1 2400 12600 8550
    Core 2 Duo 64b2 2400 11726 6248

    Core i7 64b1 &&&& 33048 18355
    Core i7 64b2 &&&& 27873 15753

    Core i7 32b1 $$$1 15470 10302
    Core i7 64b1 $$$1 27113 15580
    Core i7 64b2 $$$1 22362 13279
    Core i7 32b1 $$$2 15587 10347
    Core i7 64b1 $$$2 29291 15756
    Core i7 64b2 $$$2 23652 13364

    Phenom II 32b1 3000 9768 6006
    Phenom II 64b1 3000 9862 6878
    Phenom II 64b2 3000 11837 8006

    b1 = 32 bit integers, b2 = 64 bit integers
    &&&& overclocked i7-3930K see above
    $$$1 Turbo Boost < 3900 MHz see above
    $$$2 Turbo Boost at 3900 MHz see above

    Later MS Compilers Version 18.00

    Atom Z8300 32b1 1840 3044
    Atom Z8300 64b1 1840 3201

    Core 2 Mob 32b1 1830 4546

    Core 2 Duo 32b1 2400 6587
    Core 2 Duo 64b1 2400 5946

    Core i7 32b1 $$$1 12090
    Core i7 64b1 $$$1 11686

    Phenom II 32b1 3000 7321
    Phenom II 64b1 3000 8137

    To Start

    ,B.32 Bit and 64 Bit Linux Results from Ubuntu GCC

    Dhry1 Dhry1 Dhry2 Dhry2
    Opt NoOpt Opt NoOpt
    VAX VAX VAX VAX
    CPU OS MHz MIPS MIPS MIPS MIPS

    Atom N455 32b Ub 1666 5485 1198 2055 1194
    Atom N455 64b Ub 1666 5926 1065 2704 1098

    Core 2 Mob 32b Ub 1830 9876 2602 4833 2584
    Core 2 Mob 64b Ub 1830 15382 2265 8241 2502

    Athlon 64 32b Ub 2211 9034 2286 4580 2347
    Athlon 64 64b Ub 2211 14783 2243 6873 2580

    Core 2 Duo 32b Ub 2400 13599 3428 5852 3348
    Core 2 Duo 64b Ub 2400 18738 3643 12265 3288

    Phenom II 32b Ub 3000 13406 3368 6676 3470
    Phenom II 64b Ub 3000 21996 3908 11982 3826
    Phenom II 64b Fe 3000 21841 3882 12000 3798

    Core i7 930 64b Ub **** 24396 5361 16435 5302

    Core i7 4820K 32b Ub $$$1 29277 7108 16356 7478
    Core i7 4820K 64b Ub $$$1 32659 8436 23607 8481

    Ub = Ubuntu Linux, Fe = Fedora Linux
    **** Rated as 2800 MHz but running at up to
    3066 MHz using Turbo Boost
    $$$1 Rated as 3700 MHz but running at up to
    3900 MHz, using Turbo Boost

    To Start

    Android Results Compiled By Native Development Kit
    Also results for Raspberry Pi & Linux

    Opt NoOpt
    System ARM MHz Android Vax Vax
    MIPS MIPS

    T5 MIPS CPU 1000 4.0.1 56 E
    T1 926EJ 800 2.2 356 196
    T2 v7-A9 800 2.3.4 962 458
    P13 v7-A9 1200 4.1.2 1491
    T7 v7-A9 1300a 4.1.2 1610 810
    T4 v7-A9 1500a 4.0.3 1650 786
    P11 v7-A9v3 1400 4.0.4 1937 866
    T11*I v7-A15 2000b 4.2.2 2533
    T11 v7-A15 2000b 4.2.2 3189 1504
    T21*I QU-800 2150 4.4.3 3319
    T21 QU-800 2150 4.4.3 3854 1628

    A1*C Z3745 1866 4.4.2 1840 1310
    A1*I Z3745 1866 4.4.2 2451
    A1*I Z8300 1840 5.1.1 2430

    ARM v8-A53 1300 5.0.2 1683
    ARM*I v8-A53 1300 5.0.2 1423
    ARM*I v8-A53 1300 5.1 1493
    ARM*I v8-A53 1500 6.0.1 1649
    R1=Atom Z8300 1840 6.0.1 2390
    R2 Core i7 3900 6.0.1 10489

    64 Bit Version
    ARM v8-A53*I 1300 5.0.2 2569
    ARM v8-A53*I 1300 5.1 2658
    R1=Atom Z8300 1840 6.0.1 3769
    R2 Core i7 3900 6.0.1 17003

    System — T = Tablet, P = Phone, E = Emulator?
    a running at 1500, b at 1700
    *I Atom Native Intel/ARM version
    *C Atom using Intel to ARM conversion
    QU = Qualcomm CPU
    R1, R2 Android via REMIX for PC

    Raspberry Pi Linux
    ARM 1176 700 3.6.11 847
    ARM 1176 1000 3.6.11 1226

    Raspberry Pi 2
    ARM V7A 900 3.18.5 1538
    ARM v7A 1000 3.18.5 1694
    gcc 4.8
    ARM V7A 900 3.18.5 1667
    ARM V7A 1000 3.18.5 1852

    Raspberry Pi 3, 32 Bit
    ARM v8-A53 1200 4.1.19 2201
    gcc 4.8
    ARM v8-A53 1200 4.1.19 2469

    Raspberry Pi 3, 64 Bit
    OpenSuse
    ARM v8-A53 1200 4.4.36 3536
    Gentoo
    ARM v8-A53 1200 4.10.0 3475

    NOTE: ARM's own results are much faster than these
    — different compiler and optimisation?

    To Start

    16 Bit Results

    Dhry1 Dhry1 Dhry2 Dhry2
    Opt NoOpt Opt NoOpt
    VAX VAX VAX VAX
    CPU MHz MIPS MIPS MIPS MIPS

    80486 DX2 66 29 14 18 8
    Pentium 100 89 41 78 42
    Pentium Pro 200 176 95 164 94
    Celeron M 1295 705
    Pentium 4E 3000 754
    Athlon 4 2080 1256
    Core i7 4820K 3700 1832

    OS/2 Results

    80486 75 37 9 35 9
    IBM 80486BL 100 54 12 41 12
    80486 DX2 66 59 12 48 12
    Cyrix P150 120 175 28 160 28
    Pentium Pro 150 276 53 218 52
    Pentium Pro 166 307 59 242 57
    Pentium Pro 200 362 69 285 67

    To Start


  1. Chugumoto
    10.10.2019 22:44

    а древние это какие звуковые карты? :) из того что сам щупал на ум приходит SB AWE64
    вроде ничего так было в конце 90ых, да и раз иса, то и 386ому пойти должна :)


    1. f15 Автор
      10.10.2019 22:53

      AWE64 (Gold) будет самой новой в подборке :)


    1. old_gamer
      10.10.2019 22:55

      AWE64 это скорее к пентиуму
      Для 386 это наверное SB Pro/SB 16. GUS первый тоже наверное оттуда.


      1. f15 Автор
        10.10.2019 23:02

        О нет, только не гусь :)


        1. old_gamer
          10.10.2019 23:10

          Да, простите, gus это уже глубоко 486е. С памятью уже не очень ))


          1. f15 Автор
            10.10.2019 23:12

            Я ориентируюсь на 1992 год, а это как раз актуальный год для первого GUS. И по спекам он тогда был круче Sound Blaster. Но блин, слишком много переменных получается :)


            1. old_gamer
              10.10.2019 23:14

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


              1. f15 Автор
                10.10.2019 23:21

                Звуковые карты тех времен — зоопарк плохо совместимых между собой технологий. Я планирую ограничиться тремя версиями SB — Pro 2, 16 и AWE 64.


  1. gorodnev
    11.10.2019 03:42

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

    Поразмыслив несколько минут, мне кажется, я знаю в чем дело. Ну или меня поправят системные программисты под Win95/98. Насколько я помню, у этих операционок коооперативная многозадачность, т.е. операционка не может честно исполнять код в каждый конкретный квант времени более, чем на одном процессоре. Честный параллелизм был только у Windows NT (и даже там были какие-то ограничения в лицензиях Pro vs Server). Поэтому я едва ли могу себе представить, как WinRar обходит это ограничение. Потоки-то порождать он может, а вот исполнять параллельно — это вряд ли.


    1. khim
      11.10.2019 05:21

      Судя про скриншоту на Xeon'е таки на Windows 95, а, возможно, XP.

      А к кооперативной многозадачности это всё и тем более не имеет отношения (тем более что в Windows 95 кооператиный доступ к GUI, числодробилки вполне себе в вытесняющем режиме работают).


      1. gorodnev
        11.10.2019 07:55

        А к кооперативной многозадачности это всё и тем более не имеет отношения (тем более что в Windows 95 кооператиный доступ к GUI, числодробилки вполне себе в вытесняющем режиме работают).
        Тем не менее, wiki говорит, что поддержка SMP есть только в Windows, основанных на ядре WinNT. То есть, планировщик операционной системы Win9x ничего не знает ни о каких других процессорах и процессорных ядрах.


        1. old_gamer
          11.10.2019 10:09

          Ну, вытесняющая многозадачность же не обязательно означает поддержку мультипроцессорности. Если я ничего не путаю, даже в NT были разные ядра с поддержкой SMP и без.


          1. gorodnev
            11.10.2019 10:25

            С кооперативной многозадачностью я, пожалуй, погорячился — это времена Win3.1. Про разные ядра в NT я выше упоминал — она разное количество процессоров поддерживала в зависимости от версии (Pro vs Server). Опять же, память меня подводит. Но или количество поддерживаемых процессоров, или Pro в Server можно было легко поменять путем внесения нехитрых изменений в реестр. Умельцы даже reg-файлы писали для упрощения этих метаморфоз. Короче говоря, все дело в Win95 и в отсутствии поддержки многопроцессорности :) Нужны дальнейшие эксперименты!


            1. khim
              11.10.2019 12:01
              +1

              Но или количество поддерживаемых процессоров, или Pro в Server можно было легко поменять путем внесения нехитрых изменений в реестр.
              Всё не так просто. Потому что бывает «один» и «много». Во времена, когда одноядерные процессоры были популярны (а это не так давно и было-то) и Windows NT и Linux имели два, принципиально отличных, ядра (хотя, конечно, компилировались они из одного исходника): UP (UniProcessing) и SMP (Symmetric MultiProcessing). И одно в другое не переделывалось принципиально (хотя современные Linux'ы умеют добавлением NOPов превратить SMP-ядро в UP… но вот в обратную сторону даже Linux не умеет).

              А вот уже если пара процессоров поддерживается — тогда уже не так важно: 2, 10, или 32… хотя кстати в NT 4.0 был забавный факт: NT 4.0 поддерживает максимум 32 ядра на x86, однако до 64х на Alpha… догадайтесь почему.

              Современные системы могут и больше, чем 64 ядра содержать, так что это ограничение убрали.


    1. f15 Автор
      11.10.2019 11:13

      Уточню: в многопоточном режиме WinRAR запускался только на Xeon, и там это происходило под управлением Windows 10.