powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Разница между двумя алгоритмами - различна на разных платформах.
4 сообщений из 4, страница 1 из 1
Разница между двумя алгоритмами - различна на разных платформах.
    #37932699
Фотография Wash Until Holes - Мой До Дыр.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть два вычислительных алгоритма.
Сравнивается время их выполнения - сначала выполняется один, потом второй. Каждый - параллельно в 50 потоках.

Сore i5 760 (4 ядра, нет HT) / 8GB RAM / win7 - первый на 5...10% быстрее второго.
Xeon E7 - 4830 / 32 GB RAM / Windows Server 2008 R2 Standard - первый на 200% медленнее второго :)

Каждый алгоритм использует большую таблицу констант в памяти - мегабайт по 100, т.е. в кеш не влезает. Во втором даже оптимизирован доступ к данным, сделано выравнивание и прочие упорядочивания чтений из ОЗУ.

Куда копать? Нет, не так... Куда ДУМАТЬ? Чем может быть вызвано?

Спасибо.
...
Рейтинг: 0 / 0
Разница между двумя алгоритмами - различна на разных платформах.
    #37932700
Фотография Wash Until Holes - Мой До Дыр.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ксеонов - 2 на матери.
...
Рейтинг: 0 / 0
Разница между двумя алгоритмами - различна на разных платформах.
    #37932708
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начать с самих алгоритмов:
1) Сделать асимптотический анализ обоих алгоритмов.
2) Замерить линейные куски алгоритмов и умножить их на соответствующие O(f(n))
Полученные значения будут отражать ожидаемое время выполнения на некоем абстрактном железе.

Если ожидаемое время выполнения не совпадает с реальным на каком-либо железе, значит это железо вносит свои коррективы: кэши памяти, (не-)производительные внешние накопители и подобное. Тогда уже можно будет смотреть по факту железа и искать место проблемы - какой из линейных кусков выполняется неожиданно долго.

Если обе задачи распараллеливаются, то еще одним проблемным местом может быть само распараллеливание и синхронизация. Это уже обычно зависит от ОС и используемых механизмов распараллеливания.
...
Рейтинг: 0 / 0
Разница между двумя алгоритмами - различна на разных платформах.
    #37932711
Фотография Wash Until Holes - Мой До Дыр.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не распараллеливаются, к дискам не обращаются. Анализ алгоритмов ассимптотический сделать пока тяжело.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Разница между двумя алгоритмами - различна на разных платформах.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]