User Tag List

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

Тема: Сравнение скорости копирования ОЗУ разными камнями и ЭВМ

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,246
    Спасибо Благодарностей отдано 
    498
    Спасибо Благодарностей получено 
    557
    Поблагодарили
    436 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Сравнение скорости копирования ОЗУ разными камнями и ЭВМ

    О измерениях быстродействия 1801-й и некотрых 1806 процессоров уже было написано.
    А вот практические задачи по типу как копирование массива ОЗУ ( например, 1 Кбайт ) - пока что-то не было написано.
    Прошу принять участие владельцев всех типов ЭВМ, особенно на Z80 - 3.5 мгц, 580ВМ80-2.5 мгц и некотрых др.
    Допускаются любые способы оптимизации исполняемого кода.
    ( Очень даже вероятно, что БК11М-4 мгц существенно отстанет от Z80-3.5 мгц 48 Кбайт ДОЗУ ).

    Образец текста программы для ДВК/БК , набирать с 1000 адресу :
    001000 : 012700 010000 012701 000200 012702 002000 012703 004000
    001020 : 012223 012223 012223 012223 012223 012223 012223 012223
    001040 : 077111 077020 000000
    Что делает программа ?
    Копирует 4096 раз массив 1 2 Кбайт ( длина 002000 слов / 004000 байтов ) с адреса 002000 в адрес 004000.
    Для особо точного измерения можно потом в адресе 001040 число 077111 заменить на 077101 и замерить время Холостого Хода ( чисто время организации цикла ).
    Результат мумрулятора ДВК-2 МС1201.01 5.3 мгц :
    33 сек, ХХ - 2.5 сек, производительность - 134.3 Кбайт/с ( 1 Кбайт = 1024 байт ).
    Последний раз редактировалось MM; 05.03.2020 в 20:47.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU

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

  3. #2

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    Прошу принять участие владельцев всех типов ЭВМ
    ПЭВМ: АГАТ-9, ЦП: 6502/65802, частота: стандарт 1.021МГц, турбо 3.5 Маха и 5 Махов, операция: копирование блока памяти и заполнение блока памяти константой.
    Нажмите на изображение для увеличения. 

Название:	TestCPU.jpg 
Просмотров:	295 
Размер:	76.4 Кб 
ID:	72499
    Последний раз редактировалось LeoN65816; 04.05.2020 в 23:00.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  4. #3

    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    769
    Спасибо Благодарностей отдано 
    252
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    42 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Жалко мало данных, даже по Z80 нет. Хотя это несложно посчитать, если взять Amstrad CPC/PCW, то там на LDIR/LDDR нужно 24 такта. При эффективной частоте 3.2 МГц получаем 133.33 Kбайт/сек. У Спека при работе с быстрой памятью на LDIR/LDDR - 21 такт при эффективной частоте 3.5 МГц, итого - 166.67 Kбайт/сек. Если развернуть цикл и использовать LDI/LDR, то будет 16 тактов на байт на обоих системах. Для супербыстрого заполнения можно использовать PUSH - 11 тактов на словo на Спеке - 636.36 Kбайт/сек.
    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    ПЭВМ: АГАТ-9, ЦП: 6502/65802, частота: стандарт 1.021МГц, турбо 3.5 Маха и 5 Махов, операция: копирование блока памяти и заполнение блока памяти константой.
    Нажмите на изображение для увеличения. 

Название:	TestCPU.jpg 
Просмотров:	295 
Размер:	76.4 Кб 
ID:	72499
    Немного запутывающая таблица. На 6502 можно копировать байт за примерно 14 тактов, если использовать самомодифицирующийся код. И на 6502 использовать стек для копирования/заполнения ну никак нельзя (хотя на некоторых системах с ММУ используют), адрес стека там фиксированный и его размер 256 байт. Поэтому соответствующиу данные ни о чем. Для 65816 можно копировать самомодифицирующим кодом слово в первом банке за 16 тактов, для произвольных банков 18. И использование стека на 65816, хотя и не так сильно урезано, как на 6502, но урезано - там стек всегда в первом банке.
    Последний раз редактировалось litwr; 19.05.2023 в 12:14.

  5. #4

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,963
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    312
    Поблагодарили
    236 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    если взять Amstrad CPC/PCW, то там на LDIR/LDDR нужно 24 такта. При эффективной частоте 3.2 МГц получаем 133.33 Kбайт/сек
    а в цпц разве тормоза от видюхи не включены уже в подгонку к 4 тактам
    Прихожу без разрешения, сею смерть и разрушение...

  6. #5

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,963
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    312
    Поблагодарили
    236 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    ( Очень даже вероятно, что БК11М-4 мгц существенно отстанет от Z80-3.5 мгц 48 Кбайт ДОЗУ ).
    конечно, отстанет, на z80 даже тупо цепочка ldi даст 16 тактов/байт ~ 213 кб/с, переброска стеком ~ 248 кб/с
    не говоря уже про ~ 325 кб/с ld-push (но там уже оптимизация не только кода, но и формата данных)
    Прихожу без разрешения, сею смерть и разрушение...

  7. #6

    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,246
    Спасибо Благодарностей отдано 
    498
    Спасибо Благодарностей получено 
    557
    Поблагодарили
    436 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Измерил на БК11М - 4 мгц : 52.5 сек, ХХ - 3.5 сек.
    Чистое время выполнения - 49 сек, итого скорость копирования 83.6 Кбайт/с. ( Точно - 171 Кбайт/с )

    - - - Добавлено - - -

    В калькуляторе на Н1806ВМ2-5.5 мгц 0 тактов СОЗУ - 18.5 сек, ХХ - 2.2 сек, итого чистое время - 16.3 сек.
    Быстродействие - 251.3 кбайт/с. ( Точно - 513 Кбайт/с )
    Последний раз редактировалось MM; 05.03.2020 в 20:53.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU

  8. #7

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,963
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    312
    Поблагодарили
    236 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    Cool

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    переброска стеком ~ 248 кб/с
    ...или даже 256 кб/с, если порции не 16 байт

    Цитата Сообщение от MM Посмотреть сообщение
    Измерил на БК11М - 4 мгц : 52.5 сек, ХХ - 3.5 сек.
    Чистое время выполнения - 49 сек, итого скорость копирования 83.6 Кбайт/с.
    в три раза "самый 16-битный компьютер в мире"
    Прихожу без разрешения, сею смерть и разрушение...

  9. #8

    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,246
    Спасибо Благодарностей отдано 
    498
    Спасибо Благодарностей получено 
    557
    Поблагодарили
    436 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    "самый 16-битный компьютер в мире"
    Скорее самый нетрезвый комп в мире.
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU

  10. #9

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MM Посмотреть сообщение
    Для особо точного измерения можно потом в адресе 001040 число 077111 заменить на 077101 и замерить время Холостого Хода ( чисто время организации цикла ).
    077101 - это NOP вместо чтения-записи что ли? Если да, то время на его выполнение все равно же тратится, поэтому данную методу вычисления "чистого времени" выполнения следует считать некорректной... Только полное время!
    Последний раз редактировалось LeoN65816; 06.03.2019 в 23:07.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  11. #10

    Регистрация
    20.04.2013
    Адрес
    г. Павловский Посад
    Сообщений
    4,246
    Спасибо Благодарностей отдано 
    498
    Спасибо Благодарностей получено 
    557
    Поблагодарили
    436 сообщений
    Mentioned
    42 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    077101
    Это SOB - вычитание 1 из регистра ( R1 ) и ветвление назад на ( 1 ) слов.
    *
    012700 010000 - занести в R0 число 010000 ( 4096 - дес. )
    012701 000200 - занести в R1 число 000200 ( 128 - дес. )
    012702 002000 - занести в R2 число 002000 ( 1024 дес. )
    012703 004000 - занести в R3 число 004000 ( 2048 дес. )
    012223 - переслать из адреса, содержащегося в R2 в адрес, содержащийся в R3. После команды увеличить R2 на 2 и R3 на 2 ( автоинкремент ).
    077111 - вычесть из R1 единицу и в случае, если R1 не =0, перейти на 11 ( 8 ) слов назад, к адресу 1020
    077020 - вычесть из R0 единицу и в случае, если R0 не =0, перейти на 20 ( 8 ) слов назад, к адресу 1004
    Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU

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

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

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

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

Похожие темы

  1. Сравнение: AY8930/AY8910/YM2149F
    от newart в разделе Звук
    Ответов: 56
    Последнее: 02.07.2022, 10:27
  2. Как сопрягать микросхемы с разными VCC?
    от dhau в разделе Несортированное железо
    Ответов: 22
    Последнее: 08.06.2012, 16:59
  3. Скорости загрузки в ОЗУ
    от ASDT в разделе ZX Концепции
    Ответов: 56
    Последнее: 07.01.2011, 14:22

Ваши права

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