User Tag List

Страница 33 из 34 ПерваяПервая ... 293031323334 ПоследняяПоследняя
Показано с 321 по 330 из 331

Тема: Вычисление числа Пи на ассемблере

  1. #321

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Перетащил в версию для 6128 основные оптимизации из 66. Тестировал в Emu и VV - результаты совпали.
    100 цифр - 2.28 секунды
    1000 цифр - 202.08 секунды
    3000 цифр - 1810.82 секунды
    8928 цифр - 16773.56 секунды
    Вложения Вложения

  2. #322

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

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Перетащил в версию для 6128 основные оптимизации из 66. Тестировал в Emu и VV - результаты совпали.
    100 цифр - 2.28 секунды
    1000 цифр - 202.08 секунды
    3000 цифр - 1810.82 секунды
    8928 цифр - 16773.56 секунды
    Ускорили на 2%, но если бы заменили тормозное деление с RL DE на то, что используете для 8080, то ускорилось бы процентов на 10.
    Удивительно, как мало новые команды Z80 влияют на производительность: код затвора на Z80 менее 5% быстрее кода на 8080, исполняемого на Z80. Секретные команды 8085 получше, но они какие-то более узкоспециализированные.
    А у британцев фантастический прорыв, более 50 тысяч знаков на машинке с 32 КБ! Они даже сделали визуализацию расчётов - https://www.youtube.com/watch?v=3iMsS2bpdeM

  3. #323

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Формула ББП позволила обновить рекорды по скорости и количеству цифр для вектора (и не только для вектора).
    Нажмите на изображение для увеличения. 

Название:	bbp100.gif 
Просмотров:	85 
Размер:	789 байт 
ID:	81090Нажмите на изображение для увеличения. 

Название:	bbp1000.gif 
Просмотров:	56 
Размер:	2.5 Кб 
ID:	81091Нажмите на изображение для увеличения. 

Название:	bbp3000.gif 
Просмотров:	95 
Размер:	6.3 Кб 
ID:	81092Нажмите на изображение для увеличения. 

Название:	bbp12527_4.gif 
Просмотров:	56 
Размер:	6.5 Кб 
ID:	81093
    100 цифр - 2.28 секунды
    1000 цифр - 191.86 секунды
    3000 цифр - 1787.22 секунды
    12527 цифр - 44704.10 секунды
    Можно посчитать намного больше цифр, но надо или отказаться от сохранения всех результатов или поменять организацию их вывода.
    В процессе оптимизации ББП заметил, как немного ускорить 66 и обогнать 67 без уменьшения максимального количества цифр, но с учетом результатов ББП в этом уже нет смысла.
    Вложения Вложения

  4. #324

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Формула Беллара еще быстрее
    Нажмите на изображение для увеличения. 

Название:	bel100.gif 
Просмотров:	56 
Размер:	785 байт 
ID:	81099Нажмите на изображение для увеличения. 

Название:	bel1000.gif 
Просмотров:	54 
Размер:	2.5 Кб 
ID:	81100Нажмите на изображение для увеличения. 

Название:	bel3001.gif 
Просмотров:	58 
Размер:	6.3 Кб 
ID:	81101Нажмите на изображение для увеличения. 

Название:	bel12526_4.gif 
Просмотров:	62 
Размер:	6.5 Кб 
ID:	81102
    100 цифр - 1.48 секунды
    1000 цифр - 177.62 секунды
    3001 цифра - 1752.04 секунды
    12526 цифр - 34041.22 секунды
    Плавание величины выигрыша над ББП связано с разными порогами переключения процедур деления.
    Вложения Вложения

  5. #325

    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,480
    Спасибо Благодарностей отдано 
    310
    Спасибо Благодарностей получено 
    249
    Поблагодарили
    217 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Вероятно можно еще чуть-чуть ускорить или чуть-чуть увеличить максимальное количество цифр, но не одновременно и всего лишь на единицы процентов. Для преодоления скорости света или хотя бы ускорения в разы надо переходить к более эффективным алгоритмам.
    Цитата Сообщение от ivagor Посмотреть сообщение
    Формула ББП позволила обновить рекорды по скорости и количеству цифр для вектора (и не только для вектора).
    Ну, вот же, нет пределу совершенства. Или есть? А вдруг ты найдёшь последнюю цифру числа Пи и откроются основы мироздания ;-)
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

  6. #326

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Доработал вариант с формулой Беллара. Теперь считает и показывает больше цифр и делает это быстрее.
    100 цифр - 1.48 секунды
    1000 цифр - 171.18 секунды
    3001 цифра - 1670.70 секунды
    21001 цифра - 94543.72 секунды
    Нажмите на изображение для увеличения. 

Название:	bel21001_7.gif 
Просмотров:	65 
Размер:	6.3 Кб 
ID:	81136
    После расчета автоматом переключает на первый экран и можно выбрать клавишами

    Скрытый текст

    1 - цифры 1-3001
    2 - цифры 3002-6001
    3 - цифры 6002-9001
    4 - цифры 9002-12001
    5 - цифры 12002-15001
    6 - цифры 15002-18001
    7 - цифры 18002-21001
    [свернуть]

    Время расчета, которое печатается на каждом экране - общее.
    Можно посчитать больше цифр, но слишком долго, решил ограничиться пятизначным числом секунд.
    Вложения Вложения

  7. #327

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

    По умолчанию

    ВВС Мiсrо и Beктop - чемпионы по числу знаков, наверное потому что названия начинаются с одинаковой буквы.
    Но нежели суперзнаток Вектора не может сделать вывод с нормальным скроллингом, что позводило ли бы обогнать машинку с 32 КБ машине с 64 КБ? А так какой-то диссонанс, 21К знаков на 64 КБ и 50К знаков на 32 КБ... И по скорости есть вопросы. Хороший π-код для Вектора должен быть процентов на 50 медленнее, чем хороший код для Бибисишки, а он реально медленнее более чем на 100%...

  8. #328

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В итоге получилось преодолеть символичный рубеж - 25000 цифр быстрее 100000 секунд, предыдущую версию убрал.
    100 цифр - 1.30 секунды
    1000 цифр - 133.78 секунды
    3001 цифра - 1240.98 секунды
    25000 цифр - 96785.46 секунды
    Нажмите на изображение для увеличения. 

Название:	bel25000_9.gif 
Просмотров:	54 
Размер:	2.6 Кб 
ID:	81182
    Клавиши 1-7 как и были, дополнительно 8 и 9:
    8 - цифры 21002-24001
    9 - цифры 24002-25000
    Вложения Вложения

  9. #329

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,386
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,365
    Поблагодарили
    1,315 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Отчасти оффтоп, т.к. программа на C, не на асме и по скорости очень далеко до рекордов, но там впервые вижу использование алгоритма Чудновского на 8080, потенциально интересно.

  10. #330

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Отчасти оффтоп, т.к. программа на C, не на асме и по скорости очень далеко до рекордов, но там впервые вижу использование алгоритма Чудновского на 8080, потенциально интересно.
    Ну, наш спигот считает 2048 цифр на 8080 явно быстрее 40 часов 39 мин.

Страница 33 из 34 ПерваяПервая ... 293031323334 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Арифметические процедуры на ассемблере
    от spensor в разделе Программирование
    Ответов: 27
    Последнее: 13.05.2017, 20:56
  2. Мнемокоманды и числа.
    от ALKO в разделе Программирование
    Ответов: 0
    Последнее: 15.02.2014, 03:49
  3. try-catch на ассемблере z80
    от siril в разделе Программирование
    Ответов: 22
    Последнее: 30.10.2012, 21:17
  4. Определение числа сторон
    от mungo в разделе Внешние накопители
    Ответов: 1
    Последнее: 16.03.2012, 18:06

Метки этой темы

Ваши права

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