Важная информация

User Tag List

Страница 1 из 11 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 110

Тема: Реальная скорость работы УКНЦ

  1. #1
    Member
    Регистрация
    20.05.2013
    Адрес
    г. Ейск
    Сообщений
    197
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Реальная скорость работы УКНЦ

    Уважаемые владельцы реальных УКНЦ, если будет свободная минута, запустите, пожалуйста на вильнюсском Бейсике такую программу и измерьте время её выполнения:

    Тест ВМ3

    10 J=0
    20 J=J+1
    30 A=J/J*J+J-J
    40 IF J<10000 THEN 20

    Это тест ВМ3 из известного набора бенчмарков Бейсика, использовавшегося в начале 80-х некоторыми иностранными журналами.

    Попробую кратко объяснить, зачем это нужно.
    Как известно, ЦП УКНЦ очень сильно тормозится контроллерами памяти и дисплея, но я так нигде и не нашёл конкретных данных, насколько сильно.
    Давно пытаюсь измерять тестами и сравнивать скорость работы разных советских (и несоветских) ПК, но делаю это исключительно на эмуляторах, поэтому, конечно, есть сомнения в достоверности результатов (хотя до сих пор у меня не было претензий к точности основных эмуляторов). Насчет УКНЦ есть очень противоречивые данные: тесты скорости выполнения машинных команд показывают, что ЦП УКНЦ примерно в 2-2,5 раза быстрее, чем, например, БК-0010. Примерно в том же русле и результаты сравнения тестов на вильнюсском Бейсике (при использовании целых чисел): УКНЦ в 1,5-2,5 раза быстрее классического Бейсика БК-0010-01.
    Однако на БК есть ещё один вариант вильнюсского Бейсика – упрощенный, размером 9 Кбайт, предназначенный для загрузки в ОЗУ БК-0010. Мне известны две его разновидности – 1985 и 1987 года, я использовал только 1987-го. Так вот этот Бейсик-87 не поддерживает вещественные числа двойной точности (а 24-килобайтный Бейсик БК-0010-01, как известно, не просто поддерживает, но и принудительно выполняет все вычисления с плавающей запятой только в режиме двойной точности, поэтому все вещественные вычисления у него работают очень медленно, причем такая особенность была и у его прототипа – Бейсика MSX/MSX2), но зато вычисления с вещественными числами одинарной точности выполняет в разы быстрее, чем 24-килобайтный Бейсик (например, тест ВМ8 (возведение в квадрат, логарифм и синус) – в 10,5 раз быстрее!). Так вот этот 9-килобайтный Бейсик-87 (имеющий, кстати, точно такую же точность вычислений (совершенно одинаковые результаты), что и Бейсик УКНЦ, в том числе и сложных функций, что явно говорит об одинаковости используемых алгоритмов вычислений) работает практически с такой же скоростью, что и Бейсик УКНЦ! Т.е. УКНЦ в среднем чуть быстрее – в разных тестах на 10-30% (до 50% в тесте ВМ8), но не намного. А в этом самом тесте ВМ3 (см. начало поста), УКНЦ даже уступает БК на 10%! При этом преимущество в 30-50% (не говоря уже о 10%) вполне можно списать на наличие у УКНЦ дополнительных команд целочисленного умножения/деления и арифметического сдвига, а также и конвейера команд.
    Соответственно, если эти данные верны, то получается очень странная ситуация: при выполнении программ на Бейсике эффективная тактовая частота ЦП УКНЦ примерно равна эффективной частоте процессора БК – т.е. порядка 2 МГц (а то и меньше, учитывая наличие конвейера и дополнительных команд). А это значит, что ЦП УКНЦ работает примерно в 4 раза (!!!) медленнее, чем мог бы работать на частоте 8 МГц без торможения со стороны контроллеров.
    Не хочется в это верить, но пока получается именно так.
    __________________________________________________ __________________________________________________ __________

    Результаты тестов ВМ1-ВМ8 на ПК 80-х годов:



    Текущий вариант таблицы результатов ВМ1-ВМ8 для ПК 80-х (на 15-11-2015):

    https://docs.google.com/spreadsheets...it?usp=sharing
    Последний раз редактировалось vladtru; 16.11.2015 в 10:35.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Во первых не ВМ3, а ВМ2,
    а во вторых, вам в эту тему: http://zx-pk.ru/showthread.php?t=14702

  4. #3
    Member
    Регистрация
    20.05.2013
    Адрес
    г. Ейск
    Сообщений
    197
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо, ту тему я всю прочитал давно - это интересно, но там всё же речь о другом - о времени выполнения машинных команд. Эти тайминги для ЦП УКНЦ мне хорошо известны - по ним, например, быстродействие ЦП на самых простых командах составляет порядка 666 тыс. оп/с (у БК-0010 - всего 250 тысяч). И это, я думаю, чересчур оптимистично для реальной работы УКНЦ. И тесты на Бейсике, к сожалению, дают очень печальный результат (об этом я уже написал - на сравнимых версиях Бейсика результаты УКНЦ и БК очень близки).

    А ВМ3 - это не тип процессора , это название теста (BenchMark 3).

    Для меня быстродействие УКНЦ - это до сих пор загадка. Похоже, прав был А.Северный в статье "По следам государственных комиссий", критикуя УКНЦ в пух и прах... Впрочем, для недорогого ПК его скорость всё же была хорошей, а вильнюсский Бейсик делал УКНЦ вообще недостижимым по скорости для всех сравнимых по цене ПК.
    Кстати, никак не могу найти точные цены на УКНЦ (вроде бы они продавались в магазине "Электроника", по крайней мере в Москве) - помню, встречал где-то цены (возможно разные в разные годы) 998 руб, 1224 руб и около 1600 руб. А вы случайно не помните?

  5. #4
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от vladtru Посмотреть сообщение
    И это, я думаю, чересчур оптимистично для реальной работы УКНЦ.
    Если вы все же внимательно читали ту тему, то там есть данные с тестов именно с реальных УКНЦ. Причем, с быстрых моделей, с медленных (у них чуть медленнее доступ к памяти из-за другой времязадающей цепочки, AlexK про это лучше расскажет), так и с турбированной модели, которую сделал один из наших форумчан (впрочем, у меня тоже есть подобный экземпляр турбированный ее предыдущем владельцем).

  6. #5
    Master
    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    364
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от vladtru Посмотреть сообщение
    равна эффективной частоте процессора БК – т.е. порядка 2 МГц (а то и меньше, учитывая наличие конвейера и дополнительных команд)
    о каком конвейере идёт речь - насколько знаю конвейер появился в первых пентиумах, но никак не в середине 80-х

  7. #6
    Member
    Регистрация
    20.05.2013
    Адрес
    г. Ейск
    Сообщений
    197
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А причём тут Пентиумы? Конвейеры были и у процессоров 60-х (та же БЭСМ-6) и у Intel 8086/8088, и у 68000 и т.д.

  8. #7
    Master
    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    364
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    да действительно - надо же - не знал )

  9. #8
    Member
    Регистрация
    20.05.2013
    Адрес
    г. Ейск
    Сообщений
    197
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Если вы все же внимательно читали ту тему, то там есть данные с тестов именно с реальных УКНЦ. Причем, с быстрых моделей, с медленных (у них чуть медленнее доступ к памяти из-за другой времязадающей цепочки, AlexK про это лучше расскажет), так и с турбированной модели, которую сделал один из наших форумчан (впрочем, у меня тоже есть подобный экземпляр турбированный ее предыдущем владельцем).
    Отличия в скорости у разных экземпляров или в разных тестах, конечно, есть, но довольно небольшие - примерно до 20%. Например, я встречал два варианта времени выполнения команды типа MOV (R1)+,(R2)+ (а эта команда используется для копирования блоков памяти, и скорость такого копирования - важный показатель быстродействия ПК) - 50 и 60 тактов (т.е. предельная скорость копирования (без учёта организации циклов) 16-битными словами - до 320 и 266 Кбайт/с). На БК-0010 этот показатель примерно вдвое ниже - около 150 Кбайт/с (а у "Спектрума" командой LDIR - около 166 Кбайт/с, у Commodore 64 - всего 77 Кбайт/с). Тем не менее, все данные по скорости выполнения отдельных команд на ЦП УКНЦ сильно противоречат результатам тестов на Бейсике (см. первое сообщение в теме), что и вызывает у меня вопросы о реальном быстродействии УКНЦ.
    Собственно, те же сомнения возникают и при ознакомлении с играми на УКНЦ - подавляющее большинство игр (а их в графическом режиме не так уж и много - на ассемблере всего порядка 100) выглядят явно примитивно, не дотягивая ни по качеству графики, ни по скорости даже до БК-0010.

    Вот я и пытаюсь разобраться.

    Я неплохо знаком с особенностями архитектуры УКНЦ, в том числе с ограничениями доступа к страницам видеопамяти со стороны ЦП, сложностью одновременного задействования ЦП и ПП и т.д. Но мне всё равно трудно понять, почему на УКНЦ нет ни игр, ни демок, хорошо показывающих его графические и вычислительные возможности. А то, что есть - это значительно проще, чем на том же БК-0010, у которого, теоретически, все характеристики в разы слабее.

    Ну это я отвлёкся, главное - убедиться, что скорость работы программ на эмуляторах близка к скорости реального УКНЦ, поэтому и прошу выполнить этот тест на Бейсике в реальном УКНЦ. Знаю, что авторы эмуляторов активно совершенствовали свои программы, в том числе в плане максимального соответствия скоростей - кстати, большое им спасибо за труды, ведь сделать эмуляторы таких "монстров", как УКНЦ, ДВК или ПК-11/16 - это крайне непростая задача. Тем не менее, нигде не видел сравнение скорости выполнения программ на Бейсике на эмуляторах и в реале, а сравнить, мне кажется, было бы полезно.

  10. #9
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от vladtru Посмотреть сообщение
    Тем не менее, все данные по скорости выполнения отдельных команд на ЦП УКНЦ сильно противоречат результатам тестов на Бейсике (см. первое сообщение в теме), что и вызывает у меня вопросы о реальном быстродействии УКНЦ.
    Собственно, те же сомнения возникают и при ознакомлении с играми на УКНЦ - подавляющее большинство игр (а их в графическом режиме не так уж и много - на ассемблере всего порядка 100) выглядят явно примитивно, не дотягивая ни по качеству графики, ни по скорости даже до БК-0010.
    Бейсик тут не показатель. Если есть на ассемблере хороший тест, то ему можно верить. А тест хороший)

    На УКНЦ было значительно меньше программистов, ввиду недомашнести данного компа. Кроме того, архитектура значительно сложнее, чем у БК, что так же усложняло программистам общение с ним. Да и графика весьма нешустрая. Чтобы выводить ее быстро, приходится весьма изголяться.
    Кстати, в некоторых играх (не портах с других платформ) графика весьма ничего. Тот же замок гоблинов, например. Но таких игр маловато.

    На счет скорости - на УКНЦ есть эмулятор БК, игры на котором работают быстрее, чем на БК (если включен чернобелый режим, а не цветной, не требующий перекодировки).

    На счет эмуляторов. UKNCBTL - не очень точные тайминги, но авторы их старались приблизить к реалу. EmuStudio - работает быстрее оригинала, т.к. в момент создания (2006 год) информация о таймингах бралась из ТО по ВМ2, и не подразумевала тормозной памяти. Да и синхронизация эмулятора до сих пор с кадровой разверткой, что убыстряет его на 20%, если у вас монитор 60Гц.

  11. #10
    Guru Аватар для MiX
    Регистрация
    13.12.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,065
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    74
    Поблагодарили
    62 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    информация о таймингах бралась из ТО по ВМ2, и не подразумевала тормозной памяти.
    По м/х памяти тоже есть информация.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	РУ.jpg 
Просмотров:	168 
Размер:	68.6 Кб 
ID:	53543  

Страница 1 из 11 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Реальная кассета -> TAP/TZX
    от CityAceE в разделе Утилиты
    Ответов: 234
    Последнее: 10.04.2016, 18:53
  2. Ответов: 11
    Последнее: 01.05.2012, 19:31
  3. Реальная дискета
    от l0nger в разделе Эмуляторы
    Ответов: 7
    Последнее: 06.01.2009, 16:54

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •