Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Разное > Ваши программы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 29.01.2023, 15:25
Аватар для eDmk
eDmk eDmk вне форума
Прохожий
 
Регистрация: 14.08.2021
Сообщения: 6
Версия Delphi: Delphi XE6
Репутация: 10
Стрелка MT64 - Многопоточный тест памяти и процессора

Всем привет!

Программа написана в рамках изучения параллельных процессов и их работы в асинхронном режиме.
В состав включены 12 тестов памяти и 12 задач применяемых в разработке игр.
Для каждого пункта вычисляется эффект прироста относительно одного потока.
Каждая функция максимально оптимизирована и может служить эталоном производительности.

Скачать тест (Яндекс.Диск)

Интерфейс программы:
MT64_Interface_01.png

Сравнение 2-х систем (Один процессор с разным кол-вом потоков (2 и 8) в тестах памяти):
MT64_compare_02.png

1. При запуске программа определяет и выставляет в настройках нужное кол-во потоков (обычно 1 поток на канал данных).
Тестировать память на максимуме потоков (8, 16, 24 и т.д.) нет смысла. Эффективность ограничивается количеством линий данных (2, 4, 6, 8).
2. На некоторых процессорах (XEON, THREADRIPPER, EPYC) для теста памяти может потребоваться больше потоков. Задать нужное кол-во можно в настройках.
Например, 13700KF показывает максимальную скорость памяти на 8 потоках, хотя кол-во каналов данных всего 2.
3. Результат тестирования или сравнения можно сохранить в PNG-файл (длительность полного теста ~25 минут).
4. Можно создать свой файл сравнения (папка Data\*.dat), исправив таблицу (редактируется по двойному щелчку).
Для корректного расчета размер укажите в единицах из столбца «Единицы».
Введите описание. После сохранения Ваш «максимум» будет доступен в списке окна отчета.
5. Галочка «Выделить все» включает/выключает тесты на двух страницах (Память/Вычисления).
6. Галочка «Ускорение» показывает коэффициент производительности многопоточной системы по отношению к однопоточной.
7. Каждый тест можно запускать по отдельности (двойной щелчок по строке включает/выключает тест).
8. Незначительные отличия в результатах зависят от фоновой загрузки ОС и тактовой частоты.
9. Индексы отражают производительность тестируемой системы.

Если вы протестировали, то прошу поделиться файлом результата (.rif). Обычно он сохраняется в папку MT64/Results.
Если Вашего процессора нет в результатах, то он будет включен как образец для сравнения.
Качественные отзывы/комментарии/предложения приветствую.

Последний раз редактировалось eDmk, 29.01.2023 в 22:01.
Ответить с цитированием
  #2  
Старый 29.01.2023, 15:57
Vladimr Vladimr вне форума
Прохожий
 
Регистрация: 17.03.2021
Сообщения: 45
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Нормально, что при запуске возникает ошибка?

Access violation ar address 712342 in module 'MT64.exe'. Read of Address FFFFFFFFFFFFFFFF.

Также во время теста при всех стандартных настройках выходит ошибка.

Access violation ar address 71DD75 in module 'MT64.exe'. Read of Address 0000000000000000.

При нажатии кнопки "Текущий тест" выходит ошибка и невозможно посмотреть результаты теста.

Access violation ar address 8С9498 in module 'MT64.exe'. Read of Address 000000000000001C.

При попытке загрузить результаты теста выходит ошибка.

Access violation ar address 8С9498 in module 'MT64.exe'. Read of Address 000000000000001C.

Последний раз редактировалось Vladimr, 29.01.2023 в 16:22.
Ответить с цитированием
  #3  
Старый 29.01.2023, 16:34
Аватар для eDmk
eDmk eDmk вне форума
Прохожий
 
Регистрация: 14.08.2021
Сообщения: 6
Версия Delphi: Delphi XE6
Репутация: 10
По умолчанию

Сложно сказать почему у Вас так. У меня нигде ничего не выскакивает.
Тестировал на Windows 10 22H2 на 2-х разных компьютерах.

>Нормально, что при запуске возникает ошибка?
Сотрите INI-файл и запустите заново.

>Также во время теста при всех стандартных настройках выходит ошибка.
Как же вы его запустили? После Access violation программа останавливается.

Очень похоже на вирусы или некорректно работающее оборудование.
Ответить с цитированием
  #4  
Старый 29.01.2023, 16:51
Vladimr Vladimr вне форума
Прохожий
 
Регистрация: 17.03.2021
Сообщения: 45
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Тоже Windows 22H2 (ver 10.0.19045.2546).

ini файл пробовал удалять, таже ошибка.

Сам не знаю как после Access violation программа запускается и что-то тестирует.

При запуске из под rdp другого пользователя все нормально.

Пробовал запустить на ноутбуке (Hp Pavilion G6) с процессором amd a10, выдает туже ошибку при запуске: Access violation ar address 712342 in module 'MT64.exe'. Read of Address FFFFFFFFFFFFFFFF.
Вложения
Тип файла: zip 110.zip (8.0 Кбайт, 1 просмотров)

Последний раз редактировалось Vladimr, 29.01.2023 в 20:22.
Ответить с цитированием
  #5  
Старый 29.01.2023, 19:04
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,534
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

А что за компонент используется для графиков?


Плюс, протестируйте запуск на двух мониторах - нужно изменить стиль форм, иначе пол формы на одном мониторе, а вторая половина на другом
Вложения
Тип файла: zip 111.zip (2.6 Кбайт, 2 просмотров)
Ответить с цитированием
  #6  
Старый 29.01.2023, 20:32
Vladimr Vladimr вне форума
Прохожий
 
Регистрация: 17.03.2021
Сообщения: 45
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Также хотелось бы сравнивать результаты не только с четырьмя образцами (которые есть в папке Data), а с другими результатами (результаты которых сохраняются в папку Results).

Также на вкладке "Сравнение ЦПУ" невозможно выбрать ни один из процессоров.

Можно сделать две версии программы: х86 и х64. Для возможности запуска на старых ОС.

Также есть предложение сделать сайт, что бы все результаты отправлялись на него. А то можно будет сравнивать только с результатами которые сделал сам на разных компьютерах, а с другими людьми, вряд-ли получиться сравнивать.

Еще хотелось бы узнать какие минимальные требования для запуска. Например запуститься ли в Windows 7 и ниже. Есть ли поддержка х86 или только х64?
Ответить с цитированием
  #7  
Старый 29.01.2023, 20:34
Аватар для eDmk
eDmk eDmk вне форума
Прохожий
 
Регистрация: 14.08.2021
Сообщения: 6
Версия Delphi: Delphi XE6
Репутация: 10
По умолчанию

Цитата:
Сообщение от Admin
А что за компонент используется для графиков?
Это мой старый компонент. Все рисуется в памяти (через CreateDIBSection), а потом BitBlt на форму.

Цитата:
Сообщение от Admin
Плюс, протестируйте запуск на двух мониторах - нужно изменить стиль форм, иначе пол формы на одном мониторе, а вторая половина на другом
Спасибо! Постараюсь исправить по возможности.
Нужен переходник VGA на DP, чтобы второй монитор подключить.

Спасибо за тест! Приложил Ваш тест в коллекцию результатов.
По ссылке в первом посте новый архив с Вашим результатом.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:08.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter