?

Log in

No account? Create an account

Предыдущий пост | Следующий пост

Сегодня решил проверить скорость работы микрокалькулятора МК-152 по сравнению с другими микрокалькуляторами, которые находились у меня под рукой.
Для сравнения я взял наиболее типичных представителей, своего рода рабочих лошадок среди калькуляторов. Конечно, это тест не полон, хотелось бы продолжить его на других моделях, например, HP-50G (если кому не лень, напишите программу для него в ALG или для других, а я вставлю результат).

Программу я составил такую:
Есть число 1.0000001, и его 27 раз нужно:
- умножать само на себя
- возводить в степень 2.01
И всё это десять раз подряд, чтобы стала заметна разница во времени.
Возведение числа в степень затрагивает многие встроенные математические функции калькулятора, такие как вычисления экспоненты, логарифма, перемножения. Число 2.01 позволяет проверить скорость ввода информации с программы, нормализовать и т. д.
Плюс часто используется оперативная память, и ее скорость также важна.



В тесте использовались калькуляторы:

Электроника МК-152: Сравнение скорости

Casio fx-3650G. Одна из последних моделей компактных программируемых калькуляторов. Она не отличается скоростью, зато работает от солнечных батарей.
Программа:
80.7 сек

10->D:Lbl 2:1.0000001->A:A->B:27->C:Lbl 1:A*A->A:B^2.01->B:C-1->C:C>0=>Goto 1:D-1->D:D>0=>Goto 2

674472.441611  4669240.61511


Электроника МК-152: Сравнение скорости

Casio Algebra fx 2.0 Plus. В свое время был самым мощным среди Casio.
Программа:
16.3 сек

10->D
Lbl 2
1.0000001->A
A->B
27->I
Lbl 1
A*A->A
B^2.01->B
Dsz I:Goto 1
Dsz J:Goto 2
"A=":A,
"B=":B,

674529.109665355  4669409.4889699


Электроника МК-152: Сравнение скорости

Монстры от Texas Instruments, лучшие калькуляторы, которые я держал в руках.
TI-89
17.3 сек
и
TI-89 Titanium
11.2 сек

Программа:
x1000001()
Prgm
For x,1,10
1.0000001->a
a->b
For y,1,27
a*a->a
b^(2.01)->b
EndFor
EndFor
Disp a,b
EndPrgm

674529.41305068 4669412.74506




Ну и, конечно, МК-152.
Программа:
23,0 сек
10 П0
1.0000001 П1 П2 27 П3 ИП1 В^ * П1 2.01 ИП2 FXy П2 
FL3 17
FL0 03
ИП1 ИП2 С/П

674514,86877  4669470,9653


Два числа после программы - это результат, который получается по окончанию вычислений. В принципе, у всех ровненько. Правильные ответы должны быть такими:
674530,470741084559 4669419,98316970777



В результате измерений с отечественными и зарубежными калькуляторами получились две таблицы.
Первая таблица сравнивает скорость работы с калькуляторами, которые производятся в настоящий момент, а вторая таблица сравнивает скорость работы отечественных калькуляторов.

Электроника МК-152: Сравнение скорости

Электроника МК-152: Сравнение скорости

UPD: Тут товарищи подсобили со своими калькуляторами, и я обновил таблицу. На первое место вышла свежая модель от Casio: fx-9860G !
UPD2: Проверил также на МК-61 (около 1680 сек) и МК-85М (около 915 сек в обычном режиме и 166 сек в турбо-режиме). Но я не буду их включать в таблицу, чтобы левая половина не смазалась.
UPD3: Проверил и на МК-90 v1.0 он оказался чуть медленнее МК-152, но точность вычислений ужасная. Ответы 568044.1904 и 9832481.0781
UPD4: Еще два калькулятора: Casio fx-730P и hp-33s в режиме RPN. Последний - довольно необычный калькулятор, который очень любила Hewlett Packard, но все же им пришлось его переделать из-за мизерной запятой.
UPD5: Наконец-то с работы принес запчасть от FRS-100, чтобы запустить машинку. Прогнал тест: сосчитал за 4.2 секунды! Сам не поверил. Результаты: 674530,2792558932 и 4669398,8452019. Я крут.
UPD6: Чтобы не загромождать непрофильными калькуляторами это сообщество, я выложил статью у себя на сайте http://www.leningrad.su/calc/speed.php и буду постоянно дополнять ее другими моделями калькуляторов, для которых удастся померить скорость. Заходите. :)

Комментарии

( 43 комментария — Оставить комментарий )
sifu_li
7 мар, 2008 06:24 (UTC)
rdcalc
Извеняюсь, нет под рукой никакого калькулятора кроме RDCalc 2.7, который я запускал на Pocket PC iPAQ h2210. Выглядит это дело так:



Программа:
10 -> R0
loop R0
1.0000001 -> A
A -> B
27 -> R1
loop R1
AxA -> A
B^2.01 -> B
end loop R1
end loop R0
out A (p)
out B
stop

Время выполнения: до 0.5 сек (точнее сказать невозможно).
Результаты:
A=674530.47552
B=4669419.9826
sifu_li
7 мар, 2008 06:29 (UTC)
Re: rdcalc
Увеличил цикл с 10 до 1000. Теперь время выполнения можно замерить, и оно равно 10 секундам.
Re: rdcalc - sfrolov - 7 мар, 2008 09:33 (UTC) - Развернуть
Re: rdcalc - sifu_li - 9 мар, 2008 09:46 (UTC) - Развернуть
Re: rdcalc - sfrolov - 9 мар, 2008 09:50 (UTC) - Развернуть
Re: rdcalc - alexav1000 - 3 ноя, 2009 00:52 (UTC) - Развернуть
arvi
9 мар, 2008 11:59 (UTC)
HP 50g

Быстродействие HP 50g зависит от температуры окружающей среды. Несколько тестовых пробегов выложенной программы при комнатной температуре заняли (замеры в секундах, с помощью TEVAL):


8.570

8.592

8.614

8.650

8.675

8.616

8.612

8.617
sfrolov
9 мар, 2008 12:11 (UTC)
Re: HP 50g
У меня получилось с TEVAL соответственно
8,4299
8,5239
8,509
8,5105
8,4971
8,4148
В среднем получается 8.5 секунд, что почти сходится с моим часовым секундомером. :)
Так что я немного подправлю таблицы.
Re: HP 50g - arvi - 9 мар, 2008 13:45 (UTC) - Развернуть
(Удалённый комментарий)
sfrolov
12 мар, 2008 20:27 (UTC)
Да, это, конечно, верно, но я хотел проверить на наиболее одинаковых алгоритмах с минимальными оптимизациями.
arvi
15 мар, 2008 12:00 (UTC)
> Чтобы не загромождать непрофильными калькуляторами это

> сообщество, я выложил статью у себя на сайте

> http://www.leningrad.su/calc/speed.php

Большое спасибо. Зарубежные калькуляторы и соревнования с ними здесь действительно оффтопик. Если уже перенёс всю информацию на свой сайт и не возражаешь, я бы удалил этот постинг.


Кстати, проверенный мной калькулятор называется не HP-50g+, а HP 50g. Без минусов и плюсов.

sfrolov
15 мар, 2008 12:57 (UTC)
Нет, постинг удалять не надо, потому что информация касается именно МК-152.
Я могу отредактировать таблицу и оставить лишь те калькуляторы, которые производятся в настоящий момент.
(без темы) - arvi - 15 мар, 2008 13:11 (UTC) - Развернуть
(без темы) - arvi - 15 мар, 2008 13:16 (UTC) - Развернуть
(без темы) - sfrolov - 15 мар, 2008 13:24 (UTC) - Развернуть
(без темы) - arvi - 15 мар, 2008 13:32 (UTC) - Развернуть
(без темы) - sfrolov - 15 мар, 2008 13:36 (UTC) - Развернуть
(без темы) - arvi - 15 мар, 2008 13:40 (UTC) - Развернуть
(без темы) - sfrolov - 15 мар, 2008 13:44 (UTC) - Развернуть
(без темы) - arvi - 15 мар, 2008 14:06 (UTC) - Развернуть
(без темы) - sfrolov - 15 мар, 2008 15:20 (UTC) - Развернуть
(без темы) - sfrolov - 15 мар, 2008 20:04 (UTC) - Развернуть
(без темы) - radar77 - 18 мар, 2008 13:23 (UTC) - Развернуть
(без темы) - sfrolov - 18 мар, 2008 13:27 (UTC) - Развернуть
(без темы) - arvi - 15 мар, 2008 13:30 (UTC) - Развернуть
night_sun_dial
13 янв, 2009 14:53 (UTC)
Извините, но у Вас есть живая "Искра 124"? Или Вы использовали старые данные?
(без темы) - night_sun_dial - 13 янв, 2009 15:59 (UTC) - Развернуть
(без темы) - sfrolov - 13 янв, 2009 17:10 (UTC) - Развернуть
(без темы) - night_sun_dial - 14 янв, 2009 08:14 (UTC) - Развернуть
(без темы) - sfrolov - 14 янв, 2009 08:16 (UTC) - Развернуть
(без темы) - night_sun_dial - 14 янв, 2009 09:00 (UTC) - Развернуть
arvi
13 апр, 2009 14:54 (UTC)
Ошибка, по крайней мере при измерении МК-152.
Предлагаемая программа выдаёт:
674514,868770
4669470,09653

и работает ровно 22,51 секунды (запускал её трижды, измеряя секундомером). Прошивка 1.12

Статья на сайте не видна (по крайней мере от меня).
alexav1000
15 ноя, 2009 13:54 (UTC)
Я извиняюсь, дорогая редакция, но что это за тест такой? По моему, он показывает, как не надо программировать и не более того. На МК-ХХ он дает "никакую" точность и сумасшедшее время работы, но если вспомнить элементарную математику и не заниматься по сто раз перемножением, а просто вычислить соотв. показатели степени для функции X^Y, то получаем, что МК-ХХ считает и точно и быстро.

ответы:
674532.43 4669390.1
Думаю соотв. прогу приводить нет необходимости.

З.Ы. Афтару незачет.
sfrolov
15 ноя, 2009 13:59 (UTC)
Я помню, спросил у одного деда, есть ли у него кристаллический детектор. Тот подумал и предложил мне вместо него поставить диод.

Это я к тому, что этот тест предназначен для проверки скорости встроенного в микрокалькулятор аппарата вычисления элементарных функций. А не для соревнования в упрощении формул.
alexav1000
15 ноя, 2009 15:16 (UTC)
Так а зачем тогда точность приводить? Разве сразу было не понятно, что при 8 разрядах мантисы у МК-ХХ она будет никакая? Кроме того по Вашему умножение и возведение в степень функции одного типа.

Тест должен решать задачу, получать ответ, как можно точнее и быстрее. А этот тест не тест, а глупость.
(без темы) - sfrolov - 15 ноя, 2009 16:17 (UTC) - Развернуть
(без темы) - alexav1000 - 15 ноя, 2009 17:02 (UTC) - Развернуть
(без темы) - sfrolov - 15 ноя, 2009 17:13 (UTC) - Развернуть
(без темы) - alexav1000 - 15 ноя, 2009 18:49 (UTC) - Развернуть
(без темы) - sfrolov - 15 ноя, 2009 19:07 (UTC) - Развернуть
(без темы) - alexav1000 - 15 ноя, 2009 19:28 (UTC) - Развернуть
( 43 комментария — Оставить комментарий )
Разработано LiveJournal.com
Дизайн Tiffany Chow