You are here
Обсуждение МК-152 на форуме HP
пт, 14/12/2007 - 12:47 - st
Все-таки, культурка заметно отличается. Леммингов, которым устройство не нужно в принципе, но готовых с пеной у рта поливать его помоями, не замечено.
Комментарии
Нас уже включили в табличку Calculator Benchmark
Нас уже включили в табличку Calculator Benchmark http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=700 - нас уже включили в табличку Calculator Benchmark
Огорчительно, что лучший из советских ПМК - МК-52 в таблице на 1 месте... как самый тормозной.
Утешительно, что МК-152 показывает вполне достойные результаты, оставляя позади многих "именитых" соперников... Результат, скажем, интересный для практического применения. Понятно, что нас обставляют последние модели, да еще на компилируемых языках. А вот то, что нас делает Psion Netbook на OPL (байткод) и даже Psion Series 3a для меня было сначала неожиданностью.
Калькуляторы с наладонниками
Калькуляторы с наладонниками по скорости даже сравнивать бессмысленно, это просто разного класса устройства. Я попробовал написать ферзей на своем виндовом телефоне (процессор - 400МГц самсунг) на питоне - получил 6 секунд несмотря на то, что для ясности сделал код намеренно НЕоптимальным, а также выдаю не количество перебранных вариантов, а полный список решений:
Да, если кому вдруг интересно, скоро у меня может получиться микрокодовый эмулятор первого в мире ПМК HP-65 на Javascript. По крайней мере инженерный HP-35 в виде одного 9-килобайтного html уже работает. Жаль, что нет полного микрокода МК-52 - для его безумных синхро- и микрокоманд эмулятор написать явно сложнее, но интереснее.
Разница
Разница между оптимальным или неоптимальным на таком переборном алгоритме вряд ли будет ощутимой.
Попробую найти что-нибудь для кассиопеи :)
P.S. Корневое сообщение про "нас включили в бенчмарк" - это ваше?
А, я опять
А, я опять забыл, что надо найти только одно решение. Тогда получается не 6 секунд, а 300 миллисекунд.
Нет, то сообщение не мое.
У меня уже работают второй инженерный HP-45 и финансовый HP-80. Как сделаю HP-65 и HP-55 - выложу куда-нибудь.
Таки все
Таки все. Насколько я понял из кода, перебираются все варианты, на выходе - число узлов дерева.
Я распечатал
Я распечатал все эти 876 узлов - в них во всех первый ферзь стоит на a1 (ну или на a8, в зависимости от алгоритма). Так что, если программа для МК-52 вдруг находит все решения, а не одно, то для бенчмарка ее надо переделать, и результат станет намного лучше.
Аналогично
Аналогично. Проверил на дельфи паскальный код теста, 876 узлов перебирается для получения первой позиции. А позиция в итоге та же, что на ПМК по самой первой программе.
Т.е. результат в 8 секунд корректный. Будем ориентироваться на этот результат.
Удивительно.
Удивительно. Когда я просто тупо перевел взятый из бенчмарка код с Lua на питон, 300 миллисекунд превратились в 42, а на компьютере этот вариант всего на 30% быстрее моего. Видимо, выделение памяти в карманной версии намного менее эффективно.
Так что примерно так:
- 0.042 Glofiish X500+ Python / Bytecode / SC32442 @ 400 MHz
Psion netBook со своими 190 МГц, правда, обгоняет, но и интерпретатор другой.
А каким образом
А каким образом Вы померяли 300 мсек?
Я не силен в Питоне - есть ли там трассировки или логи с системным временем?
Свои 4.5 секунды тупо мерял секундомером, нажимая кнопку.
Как и в тесте на
Как и в тесте на Lua из бенчмарка - стократным запуском. Ну а 42мс - тысячекратным.
Если нигде не
Если нигде не ошибся, то стократный пробег дал 185 мсек
А вот порт с Lua,
А вот порт с Lua, который дает у меня 42мс. У вас, видимо, будет раза в полтора-два быстрее.
Похоже, что
Похоже, что нет:
876 0:01:58.745330
Что дает 136 мсек?
странно
Нет, 119. Делить
Нет, 119. Делить надо на 1000, 876 печатается только для проверки правильности.
Все это очень странно :)
Попробовал
Попробовал данный вариант на Питоне в Нокиа N800. Результат - 4.5 секунды
Калькуляторы с наладонниками
Калькуляторы с наладонниками
Celeron M ULV @630MHz
МК-52 должен
МК-52 должен быть медленнее старых моделей, т.к. в последовательную шину включена ещё одна микроЭВМ, давшая 105 шагов, 15-й регистр и новые команды с клавишей К.
Вот быстродействие МК-52 и МК-61 сравнить не берусь, т.к. не помню, привело ли добавление ППЗУ к включению дополнительной микроЭВМ.
У меня МК-52 медленнее.
У меня МК-52 медленнее. Я имею 2 калькулятора:
1. МК-61 1986 года производства. Интенсивно использовался в 1986-1990 годах.
2. МК-52 1992 года производства. Выпущен уже другим заводом не в Киеве - г. Борзна Черниговская обл. з-д. Квадр.
У меня на руках сейчас схемы обоих калькуляторов. МК-61 имеет по сравнения с МК-54/34 1 добавочную микросхему D6 K745ИК1306-2. Интересно, что ее можно выключить поместив перемычку П1 на П2 и превратить МК-61 в МК-54...
МК-52 имеет еще одну добавочную микросхему в 1-разрядном кольце передачи данных. Это DD7 К745ИК1801-2. Еще есть микросхема для долговременного хранения программ DD8 КР1601РР1, но она не включена в общее кольцо передачи данных. При одинаковых частотах МК-52 должен быть медленнее МК-61, так как дополнительный контроллер вносит задержку в кольце передачи данных. Мой экземпляр, действительно медленнее. Следует учитывать, что в калькуляторах МК-61 имеется большой разброс тактовой частоты. Поэтому на практике, могут быть МК-61 работающие медленнее некоторых экземпляров МК-52. Всё же надо признать, что МК-52 ОЧЕНЬ медленный калькулятор... :-)
Какое время счета?
Какое время счета? Какое время счета получилось?
AtH замерял на своем МК-56.
Читал где-то про разброс частот в районе 10%, что при такой медленной работе все равно будет малозаметно.
Разброс можно
Разброс можно высчитать, исходя из количества микроЭВМ. При равной тактовой частоте длительность вычислений на МК-52 и МК-61 (а также МК-61 и МК-56) будет относиться, как (N+1) к N, где N - количество микроЭВМ в младшей модели.
Тест скрости...
Тест скрости... Я провел сейчас тест скорости 2-х калькуляторов на вычислении факториала.
Коды программы с шага 0:
0c 40 01 60 12 5d 03 50 51 00
ВП П0 1 ИП0 х FL0 03 С/П БП 00
Результат для факториала 69!
МК-61: 43,1 с
МК-52: 77,8 с.
Из теста получается почти 2-х кратное превосходство МК-61. Следует отметить, что мой экземпляр МК-61 довольно быстрый изначально. Он с трудом поддавался разгону. Разгон давал приблизительно 20% прирост скорости, но не гарантировалась правильность вычислений. Поэтому в 1988 году я вернул заводские настройки. Согласно времени приводимому в книгах Дьяконова для Б3-34 и МК-56 в решении тестовых примеров мой МК-61 всегда показывал лучшее время. В 80-х годах мне попадались МК-61 которые имели аналогичную скорость или были немного медленнее. Теоретически, я допускаю существование сверхнеудачных экземпляров МК-61, которые медленее МК-52. Однако таких не видел. :-)
Интересно
Интересно. Может быть для чистоты эксперимента прогоните и 8 ферзей?
Там, правда, счет пойдет на часы.
Результаты теста 8-ми ферзей...
Результаты теста 8-ми ферзей... Результаты теста 8 ферзей (первая программа http://pmk.arbinada.com/node/26 ).
МК-61: 2 часа 6 минут = 126 минут
МК-52: 3 часа 47 минут = 227 минут
Превосходство в скорости МК-61 над МК-52 в 1,8 раза. Над приводимым ранее МК-56 (189 минут) в 1,5 раза...
МК-61 и МК-52 имеют стандартную, заводскую, частоту.
Спасибо
Спасибо. Весьма интересные результаты.
Thanks...
Thanks... Thanks to all testers of this forum, especially Serguei, for helping to enlarge
the Calculator Benchmark with these interesting devices. With your permission,
I have corrected the results in consideration of your discussion.
You have surly noticed, the main emphasisses of this benchmark are programmable
calculators and pocket computers. So if somebody has the opportunity to test
the MK-85, MK-85M (Normal and Fast Mode) or MK-90, more results are welcome.
If there is any outstanding point regarding the benchmark, don't hesitate to ask me.
МК-61 имеет
МК-61 имеет команду K|x|, а МК-56 не имеет. Возможно, это так и повлияло на результат. А (вторая) лишняя микроЭВМ в МК-52 затормозила вычисления.
Citizen SRP 400G
Citizen SRP 400GЯ запустил 8 ферзей на Citizen SRP 400G.
14 мин. 10 сек.
Подробности см. на http://www.leninburg.com/calc/cforum.php?page=3&forumid=4&topicid=182
Медленно
Медленно. Да, медленно... Спасибо за информацию. Наши подробные итоги с МК-152, если еще не смотрели, здесь: http://pmk.arbinada.com/node/30
Может быть заодно и точность померяете? Тесты и табличка (ее можно редактировать) результатов здесь: http://pmk.arbinada.com/node/97
Обращаю внимание
Обращаю внимание. Измерим и точность.
На то, что SRP-400G работает слишком медленно - есть свои ОСОБЫЕ причины. См. там же:
http://www.leninburg.com/calc/cforum.php?page=3&forumid=4&topicid=182
Да
Да, я читал. Возможно действительно отображение во время счета влияет на время, хотя не думаю, что так сильно. Как отключить - пока не знаю. Попробуйте оставить вопрос на местном форуме.
Не побоюсь
Не побоюсь обобщить, но это характерно для русскоязычных форумов - загнуть пальцы и пополивать грязью. Надеюсь, что есть тенденция к лучшему
Поливают,
Поливают, потому что это просто позор.
Согласен
Согласен. Это просто позор и стыд. За бескультурие и невежество "соотечественников". Ступайте учиться (3 раза) культуре и терпимости у иностранных коллег.
Следующая подобная бессмысленная реплика будет удалена без предупреждения.
Кстати,
Кстати, страницы http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/forum.cgi?read=129515 уже не существует и мне пришлось читать ее гугловскую закэшированную версию.
Интересно, ее специально кто-то удалил или правила такие?
Или она просто другой адрес имеет?
Ушла в архив
Ушла в архив. Ссылку обновил.
MK-56 и K|x| ?
MK-56 и K|x| ? Если я правильно помню, K|x| у MK-56 не было.
(Похоже, что правильно - http://www.pmk.arbinada.com/node/26 :
"AtH воспользовался своим старинным другом - ПМК МК-56, заменил в нашей первой программе для МК-52 оператор K|x| на Fx<0 nn /—/ и запустил программу.")
А там ( http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=700 )
программа одна и та же приводится для всех.
Надо ли им об этом сообщать? ~_^
Можно не сообщать
Можно не сообщать: в тесте главное - время, оно замерено. Воспроизвести тест для старых моделей можно и по новой программе, сделав упомянутую замену.