minor unroll
This commit is contained in:
parent
e7b677e4db
commit
298edba5d2
@ -111,6 +111,7 @@ namespace MagyarSort {
|
|||||||
//#pragma GCC unroll 4
|
//#pragma GCC unroll 4
|
||||||
for(; i < size - 64; i += 64) {
|
for(; i < size - 64; i += 64) {
|
||||||
// Prefetch for read level-1 cache
|
// Prefetch for read level-1 cache
|
||||||
|
//__builtin_prefetch(&arr[i + (1 * 16)], 0/*r*/, 2/*L2 or L3 cache likely*/);
|
||||||
__builtin_prefetch(&arr[i + (1 * 16)]);
|
__builtin_prefetch(&arr[i + (1 * 16)]);
|
||||||
// Creates no object, struct is empty
|
// Creates no object, struct is empty
|
||||||
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i, radicsOut);
|
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i, radicsOut);
|
||||||
@ -183,6 +184,7 @@ namespace MagyarSort {
|
|||||||
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i + 63, radicsOut);
|
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i + 63, radicsOut);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma GCC unroll 4
|
||||||
for(; i < size; ++i) {
|
for(; i < size; ++i) {
|
||||||
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i, radicsOut);
|
OccurenceMagic<DIGITS - 1, COUNTER_TYP>(arr, i, radicsOut);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user