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

User Tag List

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя
Показано с 11 по 20 из 29

Тема: Вектор для чайника

  1. #11
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Сравнивать скорости варианта оптимизированного по скорости и варианта оптимизированного по размеру - это сильно. Этот инновационный подход можно попробовать и в другую сторону - вариант оптимизированный по размеру (о чудо) сильно компактнее варианта оптимизированного по скорости.
    Ну и насчет скорости. От Superfast Mandelbrot generator ожидаешь чего-то выдающегося, но смотрю код и там сразу неоптимальные комбинации команд, т.е. ускорить точно можно.
    Можно ли сократить мой вариант при сохранении функциональности - надеюсь, что можно, но не знаю как. Можно сделать и оптимизированный по скорости вариант, но это совсем другая история.

    Для тех кто только в 2024 заинтересовался spigotом - быстрый spigot для вектора существует. При желании его можно так или иначе модифицировать, например изменить число рассчитываемых цифр, изменить вывод символов или что-то еще.
    Сравнивались имеющиеся версии, пока ваша заметно тормознее. Но с вашими добрыми напутствиями достиг некоторых успехов с оптимизацией, текущая версия (2) для Вектора даже обогнала европейский Коммодор 128! И это за счет графики! Возможно код для Коммодора в плане отрисовки нужно ещё подопиливать.
    Буду Вам очень признателен, если подскажите подробности про неоптимальные комбинации команд. Много спасибо заранее. Ещё бы чуть-чуть и обгоним американский Коммодор 128!
    Ваш пи-затвор использует разные коды для разного числа цифр, а для сравнения и занесения в таблицу рекордов нужен универсальный калькулятор. Но это очень наш старый разговор...

    ДОБАВЛЕНИЕ. В коде Мандельброта главный цикл от LOC1 до LOC2 - всего 63 инструкции.
    Последний раз редактировалось litwr; 14.01.2024 в 10:31.

  2. #12
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,846
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,827
    Поблагодарили
    1,047 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Ваш пи-затвор использует разные коды для разного числа цифр, а для сравнения и занесения в таблицу рекордов нужен универсальный калькулятор. Но это очень наш старый разговор...
    Есть компьютер вектор. Есть реализация алгоритма spigot, которая работает на компьютере вектор и считает 100 и 1000 цифр числа пи быстрее других реализаций. Значит это самый быстрый spigot для вектора, по крайней мере для 100 и 1000 цифр.
    Можно ли ставить дополнительные условия и так или иначе ограничивать реализацию spigotа? Конечно можно. Будет медленнее, но это дело конкретного программиста, принимать ограничения или нет. Можно ведь и бегать с гирями, привязанными к ногам, кто же запретит.
    Вносить мою реализацию в Вашу таблицу рекордов альтернативной олимипиады определенно не стоит, она не подходит по требованиям.

    В целом хороший пример "добросовестного" подхода. Если свой spigot медленнее - про быструю альтернативу промолчим. Если свой Мандельброт быстрее - вот тогда можно и упомянуть про другой.

  3. #13
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Есть компьютер вектор. Есть реализация алгоритма spigot, которая работает на компьютере вектор и считает 100 и 1000 цифр числа пи быстрее других реализаций. Значит это самый быстрый spigot для вектора, по крайней мере для 100 и 1000 цифр.
    Можно ли ставить дополнительные условия и так или иначе ограничивать реализацию spigotа? Конечно можно. Будет медленнее, но это дело конкретного программиста, принимать ограничения или нет. Можно ведь и бегать с гирями, привязанными к ногам, кто же запретит.
    Вносить мою реализацию в Вашу таблицу рекордов альтернативной олимипиады определенно не стоит, она не подходит по требованиям.

    В целом хороший пример "добросовестного" подхода. Если свой spigot медленнее - про быструю альтернативу промолчим. Если свой Мандельброт быстрее - вот тогда можно и упомянуть про другой.
    Давайте попробуем включить логику. Предпожим на забег 100-метровки вышел спортсмен и сделал заявление, что он быстрее всех пробежит 30 м, а дальше ему бежать облом. И ещё он потребовал, чтобы его результат включили в официальные таблицы. Куда пошлют такого спортсмена? Есть же правила! Нельзя на спортивной хотьбе делать спринт. Начал тему с предложения оптимизировать алгоритм, который должен соответствовать 4-м требованиям. Ваша реализация им не соответствует. Никто не спорит о её достоинствах, но какие претензии к организаторам спринта?!
    Без Вашей помощи американский Коммодор так и будет впереди Вектора. И это при том, что рисунок на Векторе намного красивее.

  4. #14
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,846
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,827
    Поблагодарили
    1,047 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Общение с демагогами вызывает у меня отвращение, но попробую.
    1.
    Цитата Сообщение от litwr Посмотреть сообщение
    Предпожим на забег 100-метровки вышел спортсмен и сделал заявление, что он быстрее всех пробежит 30 м, а дальше ему бежать облом.
    Предположим, что на забег 100-метровки вышел спортсмен и сделал заявление, что он быстрее всех пробежит марафон, и только результаты тех, кто пробегут марафон быстрее него, будут учтены в призах 100-метровки.
    2.
    Цитата Сообщение от litwr Посмотреть сообщение
    И ещё он потребовал, чтобы его результат включили в официальные таблицы.
    Цитата Сообщение от ivagor Посмотреть сообщение
    Вносить мою реализацию в Вашу таблицу рекордов альтернативной олимипиады определенно не стоит, она не подходит по требованиям.
    3.
    Цитата Сообщение от litwr Посмотреть сообщение
    Есть же правила! Нельзя на спортивной хотьбе делать спринт.
    Цитата Сообщение от ivagor Посмотреть сообщение
    Можно ли ставить дополнительные условия и так или иначе ограничивать реализацию spigotа? Конечно можно. Будет медленнее, но это дело конкретного программиста, принимать ограничения или нет.
    4.
    Цитата Сообщение от litwr Посмотреть сообщение
    какие претензии к организаторам спринта?!
    Цитата Сообщение от ivagor Посмотреть сообщение
    В целом хороший пример "добросовестного" подхода. Если свой spigot медленнее - про быструю альтернативу промолчим. Если свой Мандельброт быстрее - вот тогда можно и упомянуть про другой.
    Если не понятно, то в п.4 претензия не к условиям/ограничениям соревнований (повторюсь, что они могут быть любые, и право любого человека принимать или не принимать их), а к поведению организатора.

  5. #15
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Общение с демагогами вызывает у меня отвращение, но попробую.
    Действительно демагогия какая-то. Скажите конкретно, что вы хотите? Как упомянуть ваш результат, если он не соответствует другим результатам? Мне, извиняюсь за повторения, хотелось бы лучшего кода для Вектора. Обидно, что Коммодор почти догнали, но похоже убежит при отсутствие дела и странном многословии. Зря вы похоже в тухлую политику вместе с несколькими самообиженными - вы же реально хороший специалист. Если ошибаюсь, то пишите, в чем притензии, можно в личку.
    Осмелюсь предположить, что на большом числе чисел, ваша реализации пи-затвора медленнее...

  6. #16
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,846
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,827
    Поблагодарили
    1,047 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Еще раз, надеюсь последний, поддался на провокацию (минус немного самоуважения) и сам посмотрел, на что способен быстрый spigot при увеличении числа цифр до 3000. Откатил пару громоздких оптимизаций; заменил вывод символов на режим 512 (медленный столбцовый вариант, который пилили со svofski), чтобы все цифры поместились на экране. Время расчета и печати на экране 3000 цифр - 2735.28, на 15.24% быстрее варианта litwr (3227.18). Если вдруг кто-то нацелится на быстрый spigot3000, то 2735 секунд - это нижняя планка для вектора, медленнее нет смысла, медленнее уже есть.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	pi3000.gif 
Просмотров:	35 
Размер:	15.7 Кб 
ID:	80116  

  7. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    litwr (20.01.2024)

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

  9. #17
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Еще раз, надеюсь последний, поддался на провокацию (минус немного самоуважения) и сам посмотрел, на что способен быстрый spigot при увеличении числа цифр до 3000. Откатил пару громоздких оптимизаций; заменил вывод символов на режим 512 (медленный столбцовый вариант, который пилили со svofski), чтобы все цифры поместились на экране. Время расчета и печати на экране 3000 цифр - 2735.28, на 15.24% быстрее варианта litwr (3227.18). Если вдруг кто-то нацелится на быстрый spigot3000, то 2735 секунд - это нижняя планка для вектора, медленнее нет смысла, медленнее уже есть.
    Благодарю вас за интересный результат. Про провокацию не понял, вроде тема коды для Вектора, а не личные проблемы. Но вашей логике опять нестыковки. В нашем старом проекте по расчету π тема была именно в оптимизации алгоритма расчета, а не в простейших трюках вроде оптимизации вывода на экран с запретом скроллинга (и это-то при наличие аппаратного скроллинга!). Стандартная функция вывода знаков на экран у Вектора небыстрая, но быстрее чем у многих других компиков такого же класса. Поэтому имею основание утверждать, что при отказе от трюков, не имеющих к расчету π никакого отношения, программа ivagor'a будет не быстрее представленой в моём проекте. Ну а на большем числе чисел может и отстать. Реально не уверен в своём коде для 8080, у ivagor да и многих других фанов Вектора тут опыта на порядок больше, чем у меня. В сущности, текущая версия ivagor почти соответствует требованиям для использования результатов в моём проекте, осталось всего чуть-чуть дожать. Выложить универсальную версию и использовать стандартную функцию печати. Понимаю, что это сложнее, чем может показаться, так как на Векторе скроллинг системной функции работает через прерывания, а их ivagor оптимизировал...
    Кстати, воспользуюсь случаем, чтобы полагодарить ivagor за его замечательную деятельность на ретрокомпьютерной сцене. Когда-то именно от него и узнал, что существует такой интересный компьютер Вектор! Он был и одним из фактических инициаторов проекта по расчету числа π по алгоритму-затвору, и поэтому упомянут на странице проекта. Он не раз был источником очень интересной информации по самым разным компьютерам. Ну а сколько он сделал для Вектора, мне трудно судить, но ясно, что очень много.

  10. #18
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,846
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,827
    Поблагодарили
    1,047 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Но вашей логике опять нестыковки. В нашем старом проекте по расчету π тема была именно в оптимизации алгоритма расчета, а не в простейших трюках вроде оптимизации вывода на экран с запретом скроллинга (и это-то при наличие аппаратного скроллинга!).
    А Вы уверены, что понимаете, что такое логика? Если "тема была именно в оптимизации алгоритма расчета, а не в простейших трюках вроде оптимизации вывода на экран с запретом скроллинга" значит влияние вывода на экран надо было минимизировать. Например можно было совсем отказаться от вывода на экран (тем более если все цифры не помещаются и их нельзя проверить), таскать с собой эталонные значения и сравнивать с ними по мере расчета. Но нет, все печатаете на экране и при этом недовольны тем, что в моем варианте влияние вывода на экран меньше.
    Ну а то, что разница >15% в данном случае обусловлена выводом на экран и "оптимизацией прерываний" это было бы даже смешно, если бы не было грустно и противно. Разница обусловлена лучшей оптимизацией с учетом торможения вектора ("эффективная частота" 2.4572 против 2.3356) и более оптимизированными арифметическими процедурами. Вывод символов и оптимизация прерываний влияют, но в меньшей степени.

    Цитата Сообщение от litwr Посмотреть сообщение
    Стандартная функция вывода знаков на экран у Вектора небыстрая
    У Вектора-06Ц нет стандартной функции вывода знаков на экран. Если Вы про функцию вывода символов на экран в мониторе, то ей пользуются 4 общедоступные программы, из которых 3 Ваши: EDASM и вот теперь добавились m128, m256 и pi-8080-vector06c-bios.
    Последний раз редактировалось ivagor; 20.01.2024 в 16:06.

  11. #19
    Master
    Регистрация
    16.12.2014
    Адрес
    г. Ожерелье
    Сообщений
    743
    Спасибо Благодарностей отдано 
    223
    Спасибо Благодарностей получено 
    40
    Поблагодарили
    39 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Демагог! Противно! Это такой сейчас у вас протокол коммуникации? Прием.
    Цитата Сообщение от ivagor Посмотреть сообщение
    А Вы уверены, что понимаете, что такое логика? Если "тема была именно в оптимизации алгоритма расчета, а не в простейших трюках вроде оптимизации вывода на экран с запретом скроллинга" значит влияние вывода на экран надо было минимизировать. Например можно было совсем отказаться от вывода на экран (тем более если все цифры не помещаются и их нельзя проверить), таскать с собой эталонные значения и сравнивать с ними по мере расчета. Но нет, все печатаете на экране и при этом недовольны тем, что в моем варианте влияние вывода на экран меньше.
    Ну а то, что разница >15% в данном случае обусловлена выводом на экран и "оптимизацией прерываний" это было бы даже смешно, если бы не было грустно и противно. Разница обусловлена лучшей оптимизацией с учетом торможения вектора ("эффективная частота" 2.4572 против 2.3356) и более оптимизированными арифметическими процедурами. Вывод символов и оптимизация прерываний влияют, но в меньшей степени.
    Калькулятор числа π без печати числа π - браво, так ivagor скоро изобретет рисование без рисунков. Вы неправы, что недоволен уменьшением влияния влияние вывода на экран в вашем коде. Недоволен только тем, что ваша позиция не позволяет сделать код для Вектора лучше. Хотя это скорее у вас какая-то генеральная линия - не делится деталями оптимизации. Что очень грустно для открытого проекта и при наличии явного запроса.
    Ну и в итоге получается, что для цифр 4000 и более мой код всё равно быстрее, от вас опровержений нет. Это просто факт, чей код быстрее мне всё равно. Мой интерес просто иметь самый быстрый код, возможно коллективного авторства и открытый для всех.

    Цитата Сообщение от ivagor Посмотреть сообщение
    У Вектора-06Ц нет стандартной функции вывода знаков на экран. Если Вы про функцию вывода символов на экран в мониторе, то ей пользуются 4 общедоступные программы, из которых 3 Ваши: EDASM и вот теперь добавились m128, m256 и pi-8080-vector06c-bios.
    А как же тысячи программ для СР/М? Очень уважаю монитор Вектора. Его бы ещё и в cтандартное ПЗУ! Классная штука. Это была крутая фишка Апплов 2 и Коммодоров +4/128. Она и БК сильно поднимает, но в БК монитор, к сожалению, сверхминималистичен.
    Последний раз редактировалось litwr; 27.01.2024 в 10:03.

  12. #20
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,846
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,827
    Поблагодарили
    1,047 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от litwr Посмотреть сообщение
    Калькулятор числа π без печати числа π - браво, так ivagor скоро изобретет рисование без рисунков.
    При чем тут рисование без рисунков? Цитирую
    Цитата Сообщение от litwr Посмотреть сообщение
    В нашем старом проекте по расчету π тема была именно в оптимизации алгоритма расчета
    Еще раз - если цель в оптимизации алгоритма расчета, то печатать не обязательно, главное чтобы правильно считало и чтобы можно было эту правильность проверить.

    Цитата Сообщение от litwr Посмотреть сообщение
    Хотя это скорее у вас какая-то генеральная линия - не делится деталями оптимизации.
    ??? Исходники выложены. Сужу по себе, если мне что-то интересно, то я изучаю чужие исходники.

    Цитата Сообщение от litwr Посмотреть сообщение
    Ну и в итоге получается, что для цифр 4000 и более мой код всё равно быстрее, от вас опровержений нет.
    О как, теперь уже не 3000, а 4000. А если сделаю 4000, то точка сравнения опять уедет. Другого я и не ожидал.

    Цитата Сообщение от litwr Посмотреть сообщение
    А как же тысячи программ для СР/М?
    Кто запускает тысячи или хотя бы десятки программ для CP/M в мониторе-отладчике вектора?

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программы для Вектор-1200
    от shapipovo в разделе Вектор
    Ответов: 7
    Последнее: 27.06.2015, 09:38
  2. Меняю Вектор/БК11М на Вектор (или куплю)
    от dk_spb в разделе Барахолка (архив)
    Ответов: 13
    Последнее: 07.01.2012, 17:31
  3. Ответов: 20
    Последнее: 05.09.2006, 01:25
  4. Вопрос чайника: что такое Gigascreen и multicolor?
    от BYTEMAN в разделе Графика
    Ответов: 13
    Последнее: 14.08.2006, 17:17
  5. Вопрос "чайника": старые фирмовые машины.
    от GNTB в разделе Зарубежные компьютеры
    Ответов: 4
    Последнее: 24.05.2006, 15:08

Ваши права

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