You are here
Первый бенчмарк Форта-161, версия 0.1.1a
В альфа-версии Форта 0.1.1a для «Электроники МК-161» заработали циклы. Одновременно, листая старый журнал «Байт» за 1980 год, я обнаружил простейший бенчмарк для Форт-системы, основанный на измерении скорости пустого цикла. Решил применить к Форту-161. Высоких результатов я не ожидал, т.к. этот Форт пришлось делать поверх не машинных команд, а входного языка «Электроники».
Заполнил таблицу значениями из «Байта» и своими измерениями на «Электрониках»:
«Электроника МК 56» | 1000 циклов | за 362,72 с | = 2,76 циклов/с |
Форт-161, v0.1.1a | 10000 циклов | за 380,29 с | = 26,3 циклов/с |
Apple Integer BASIC | 30000 циклов | за 40 с | = 750 циклов/с |
«Электроника МК-161», ЯМК | 30000 циклов | за 12,97 с | = 2313 циклов/с |
Форт для Apple II | 30000 циклов | за менее 4 с | = более 7500 циклов/с |
Программа, измеряющая пустые циклы на входном языке «Электроники МК-161»:
00. Сх
01. 3 ВП 4
04. П0
05. 65535
10. П9
11. РРП 9050
14. FL0 14
16. РРИП 9050
19. ИП9
20. ↔︎
21. -
22. ВП 2 /-/
25. С/П
26. БП 00
Программа для настольной «Электроники МК 56» проще (время измерялось по встроенным часам «Электроники МК-161»):
00.FL0 01.00 02.С/П
Конечно, Форт ещё будем улучшать. Но это возможность сравнить с другими системами (в том числе будущими версиями Форта) и понять, какие задачи имеет смысл выполнять на Форте-161. А какие он пока не потянет. Я бы не ожидал ускорения в десять раз — если не переходить на уровень машинного кода, ускорение даже в 2-3 раза будет чудом.
По этому тесту сейчас Форт-161 медленнее родного языка «Электроники МК-161» в 88 раз и быстрее советской «Электроники МК 56» в 9,5 раза.
- AtH's blog
- Log in or register to post comments
- 7522 reads
Comments
Новый тип теста
Хорошо, таким образом у нас появился новый тип теста производительности впридачу к "Звездному небу" и "8 ферзям".
Замеры быстродействия
Сейчас я вплотную занимаюсь Фортом и его быстродействием. Но если кто-нибудь из владельцев HP, Casio и т.п. умеет и может сделать замеры 30000 пустых циклов на разных входных языках (от RPL до ассемблера) — буду рад включить результаты в общую таблицу.
«Звёздное небо» можно быстро реализовать и на Форте, и на «Электронике МК-161». Кто-нибудь делает сводную таблицу этого теста?
Тесты для HP 50g и HP 35s
Тесты для HP 50g и HP 35s вместе с другими свел в общую таблицу
http://pmk.arbinada.com/node/1203