История изменений
Исправление AntonI, (текущая версия) :
Да, наверное в этом дело. Еще поспрошаю у компетентных коллег.
Переделал структуру данных на односвязный список что бы ходить «по шерсти», в один поток выигрыш почти вдвое
$ ./bench
generate strings 0.0815278 sec
generate hash 1.14169 sec
search time 0.00112064 sec
total time 1.22433 sec
matches 0
$ g++ -std=c++11 -O3 -Wall -o bench2 -fopenmp bench2.cpp
$ ./bench2
generate strings 0.0805417 sec
generate hash 0.644342 sec
search time 0.00160707 sec
total time 0.726491 sec
matches 0
Время поиска просело в полтора раза, новая структура оптимальна для набивки хэш-таблицы а не для поиска. Интересно сколько будет на Вашей машине.
ИМНО это предел - быстрее уже не получится.
Но Диана обвиняет меня в читерстве - дескать я OpenMP использую. В однопоточной версии!!! Коварство антиметапрогеров не знает границ…
Исходная версия AntonI, :
Да, наверное в этом дело. Еще поспрошаю у компетентных коллег.
Переделал структуру данных на односвязный список что бы ходить «по шерсти», в один поток выигрыш почти вдвое
$ ./bench
generate strings 0.0815278 sec
generate hash 1.14169 sec
search time 0.00112064 sec
total time 1.22433 sec
matches 0
$ g++ -std=c++11 -O3 -Wall -o bench2 -fopenmp bench2.cpp
$ ./bench2
generate strings 0.0805417 sec
generate hash 0.644342 sec
search time 0.00160707 sec
total time 0.726491 sec
matches 0
Время поиска просело в полтора раза, новая структура оптимальна для набивки хэш-таблицы а не для поиска. Интересно сколько будет на Вашей машине.
Но Диана обвиняет меня в читерстве - дескать я OpenMP использую. В однопоточной версии!!! Коварство антиметапрогеров не знает границ…