LINUX.ORG.RU

История изменений

Исправление provaton, (текущая версия) :

Для референса на моей машине (Core i7 8700K):

Однопоточная реализация на хешах от АнтонИ:

~/tmp/mp » time ./test-cpp                                                                                     
generate strings 0.0480122 sec
generate hash 0.10188 sec
search time 0.000468725 sec
total time 0.150361 sec
 matches 0
./test-cpp  0,14s user 0,02s system 99% cpu 0,159 total

rand.c от ТСа:

~/tmp/mp » time ./rand                                                                                         
0
205
10
3742
1
194
9
3772
2
194
9
3796
3
194
10
3779
4
194
10
3763
5
197
10
3755
6
193
10
3762
7
192
10
3775
8
194
9
3756
9
195
10
3741
./rand  39,16s user 0,52s system 99% cpu 39,739 total

Итого 0.159s vs 3.973s или практически ровно 25 раз. Я не буду торопиться с ироничными комментами, может в бенче Антона найдется бага (я слишком хочу спать чтоб ревьюить код прям сейчас).

Исходная версия provaton, :

Для референса на моей машине (Core i7 8700K):

Однопоточная реализация на хешах от АнтонИ:

~/tmp/mp » time ./test-cpp                                                                                     
generate strings 0.0480122 sec
generate hash 0.10188 sec
search time 0.000468725 sec
total time 0.150361 sec
 matches 0
./test-cpp  0,14s user 0,02s system 99% cpu 0,159 total

rand.c от ТСа:

~/tmp/mp » time ./rand                                                                                         
0
205
10
3742
1
194
9
3772
2
194
9
3796
3
194
10
3779
4
194
10
3763
5
197
10
3755
6
193
10
3762
7
192
10
3775
8
194
9
3756
9
195
10
3741
./rand  39,16s user 0,52s system 99% cpu 39,739 total

Итого 0.159s vs 3.916s или 24.62 раза. Я не буду торопиться с ироничными комментами, может в бенче Антона найдется бага (я слишком хочу спать чтоб ревьюить код прям сейчас).