Re: многопоточность и скорость
От: alexeiz  
Дата: 05.02.09 17:43
Оценка: 22 (3) +1
Здравствуйте, kot--, Вы писали:

K> Скомпилированный с оптимизацией(/O2) по скорости экзешник считает на 20% чем его однопоточный(/O2).

K> Скомпилированный БЕЗ ОПТИМИЗАЦИИ(/Od) — на 77% быстрее однопоточный(/Od).

Как вариант: false sharing (ping-ponging): http://www.ddj.com/architect/208200273?pgno=3

В неоптимизированной версии данные, которыми оперируют разные потоки, разнесены дальше, а в оптимизированное попадают на одну cache line. Эта cache line постоянно инвалидируется, что замедляет работу программы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.