bmaxa
Legenda
- Poruka
- 70.808
Merge, radix bitonic C++/C sort iz liba.
Kako se koristi iskompajlira se sa ./k0mpile.sh (po potrebi izmeniti):
Tu ima mojih implementacija sto u asm-u sto u C++. Resimo QSort.h sam koristio u stvarnim projektima.
potom list_sort primer mojih implementacija u asm-u.
Recimo lepo se vidi koji je sort vise cache friendly taj radi brze.
Kako se koristi iskompajlira se sa ./k0mpile.sh (po potrebi izmeniti):
Kod:
~/.../examples/sort >>> ./bench
radix asm sort 525.664
asm bitonic sort 2290.36
C++ sort 1053.62
VLib sort 1368.99
C qsort 2250.38
C++ list sort 11543.3
VLib list sort 1965.04
all set
potom list_sort primer mojih implementacija u asm-u.
Kod:
~/.../examples/sort >>> ./list_sort
seed: 1608238920
N: 16777216
unsorted
0x120611670 11047131
0x120611650 13208274
0x120611630 10290010
0x120611610 12706479
0x1206115f0 13029629
0x1206115d0 7343026
0x1206115b0 5732731
0x120611590 5147766
0x120611570 4570998
0x120611550 5721685
0x120611530 3443204
0x120611510 15860646
0x1206114f0 3915497
0x1206114d0 11719127
0x1206114b0 7374728
0x120611490 5961757
array radix elapsed 0.488532 seconds
list radix elapsed 25.056711 seconds
list merge elapsed 11.363343 seconds
equal
equal
sorted
0x10074ac10 0
0x10fef18f0 0
0x1115f4630 1
0x10ade9970 3
0x1159e9ab0 3
0x113f6d110 5
0x1034e5950 5
0x1009d1730 5
0x11de73610 6
0x10719abd0 9
0x10edd0650 9
0x106c3ba50 11
0x1115fa490 11
0x114ac9b10 12
0x1076828d0 14
0x115595350 14
size of node 12, length 16777216
Recimo lepo se vidi koji je sort vise cache friendly taj radi brze.
Prilozi
Poslednja izmena: