История изменений
Исправление HolyBoy, (текущая версия) :
Проверил.
Измерение производительности:
warming up
estimating clock resolution...
mean is 1.879371 us (320001 iterations)
found 58439 outliers among 319999 samples (18.3%)
54439 (17.0%) low severe
4000 (1.3%) high severe
estimating cost of a clock call...
mean is 49.49042 ns (12 iterations)
found 1 outliers among 12 samples (8.3%)
1 (8.3%) high severe
benchmarking magic
mean: 27.16012 ns, lb 27.14521 ns, ub 27.18228 ns, ci 0.950
std dev: 92.27698 ps, lb 69.72624 ps, ub 143.0506 ps, ci 0.950
benchmarking fermaPyr''
mean: 113.4742 us, lb 113.3555 us, ub 113.7190 us, ci 0.950
std dev: 838.6306 ns, lb 498.7351 ns, ub 1.630455 us, ci 0.950
Потребление памяти:
166667166667000000
67,976 bytes allocated in the heap
3,512 bytes copied during GC
44,416 bytes maximum residency (1 sample(s))
17,024 bytes maximum slop
1 MB total memory in use (0 MB lost due to fragmentation)
Tot time (elapsed) Avg pause Max pause
Gen 0 0 colls, 0 par 0.00s 0.00s 0.0000s 0.0000s
Gen 1 1 colls, 0 par 0.00s 0.00s 0.0002s 0.0002s
INIT time 0.00s ( 0.00s elapsed)
MUT time 0.00s ( 0.00s elapsed)
GC time 0.00s ( 0.00s elapsed)
EXIT time 0.00s ( 0.00s elapsed)
Total time 0.00s ( 0.00s elapsed)
%GC time 8.6% (26.2% elapsed)
Alloc rate 965,115,783 bytes per MUT second
Productivity 84.7% of total user, 258.1% of total elapsed
Без оптимизации, только с -O2
warming up
estimating clock resolution...
mean is 1.784853 us (320001 iterations)
found 2366 outliers among 319999 samples (0.7%)
1954 (0.6%) high severe
estimating cost of a clock call...
mean is 49.96217 ns (12 iterations)
found 1 outliers among 12 samples (8.3%)
1 (8.3%) high mild
benchmarking magic
mean: 13.71027 us, lb 13.70652 us, ub 13.71444 us, ci 0.950
std dev: 20.21804 ns, lb 17.71890 ns, ub 22.87030 ns, ci 0.950
benchmarking fermaPyr''
collecting 100 samples, 1 iterations each, in estimated 6.269598 s
mean: 62.82059 ms, lb 62.70756 ms, ub 63.09518 ms, ci 0.950
std dev: 909.8677 us, lb 488.0118 us, ub 1.480532 ms, ci 0.950
found 13 outliers among 100 samples (13.0%)
4 (4.0%) high mild
9 (9.0%) high severe
variance introduced by outliers: 7.523%
variance is slightly inflated by outliers
В данном конкретном случае компиляция под LLVM — добро. Не очень понял, что ты имел в виду под
у многих хацкель прог не по делу llvm флаг торчит
? Судя по флагам компиляции, portage правильно определяет для ghc тип процессора, который у меня стоит, так что, не уверен, что -optc-march=native надо включать.
Исправление HolyBoy, :
Проверил.
Измерение производительности:
warming up estimating clock resolution... mean is 1.879371 us (320001 iterations) found 58439 outliers among 319999 samples (18.3%) 54439 (17.0%) low severe 4000 (1.3%) high severe estimating cost of a clock call... mean is 49.49042 ns (12 iterations) found 1 outliers among 12 samples (8.3%) 1 (8.3%) high severe
benchmarking magic mean: 27.16012 ns, lb 27.14521 ns, ub 27.18228 ns, ci 0.950 std dev: 92.27698 ps, lb 69.72624 ps, ub 143.0506 ps, ci 0.950
benchmarking fermaPyr" mean: 113.4742 us, lb 113.3555 us, ub 113.7190 us, ci 0.950 std dev: 838.6306 ns, lb 498.7351 ns, ub 1.630455 us, ci 0.950
Потребление памяти:
166667166667000000 67,976 bytes allocated in the heap 3,512 bytes copied during GC 44,416 bytes maximum residency (1 sample(s)) 17,024 bytes maximum slop 1 MB total memory in use (0 MB lost due to fragmentation)
Tot time (elapsed) Avg pause Max pause Gen 0 0 colls, 0 par 0.00s 0.00s 0.0000s 0.0000s Gen 1 1 colls, 0 par 0.00s 0.00s 0.0002s 0.0002s
INIT time 0.00s ( 0.00s elapsed) MUT time 0.00s ( 0.00s elapsed) GC time 0.00s ( 0.00s elapsed) EXIT time 0.00s ( 0.00s elapsed) Total time 0.00s ( 0.00s elapsed)
%GC time 8.6% (26.2% elapsed)
Alloc rate 965,115,783 bytes per MUT second
Productivity 84.7% of total user, 258.1% of total elapsed
Без оптимизации, только с -O2
warming up estimating clock resolution... mean is 1.784853 us (320001 iterations) found 2366 outliers among 319999 samples (0.7%) 1954 (0.6%) high severe estimating cost of a clock call... mean is 49.96217 ns (12 iterations) found 1 outliers among 12 samples (8.3%) 1 (8.3%) high mild
benchmarking magic mean: 13.71027 us, lb 13.70652 us, ub 13.71444 us, ci 0.950 std dev: 20.21804 ns, lb 17.71890 ns, ub 22.87030 ns, ci 0.950
benchmarking fermaPyr" collecting 100 samples, 1 iterations each, in estimated 6.269598 s mean: 62.82059 ms, lb 62.70756 ms, ub 63.09518 ms, ci 0.950 std dev: 909.8677 us, lb 488.0118 us, ub 1.480532 ms, ci 0.950 found 13 outliers among 100 samples (13.0%) 4 (4.0%) high mild 9 (9.0%) high severe variance introduced by outliers: 7.523% variance is slightly inflated by outliers
В данном конкретном случае компиляция под LLVM — добро. Не очень понял, что ты имел в виду под
у многих хацкель прог не по делу llvm флаг торчит
? Судя по флагам компиляции, portage правильно определяет для ghc тип процессора, который у меня стоит, так что, не уверен, что -optc-march=native надо включать.
Исходная версия HolyBoy, :
Проверил.
Измерение производительности:
warming up estimating clock resolution... mean is 1.879371 us (320001 iterations) found 58439 outliers among 319999 samples (18.3%) 54439 (17.0%) low severe 4000 (1.3%) high severe estimating cost of a clock call... mean is 49.49042 ns (12 iterations) found 1 outliers among 12 samples (8.3%) 1 (8.3%) high severe
benchmarking magic mean: 27.16012 ns, lb 27.14521 ns, ub 27.18228 ns, ci 0.950 std dev: 92.27698 ps, lb 69.72624 ps, ub 143.0506 ps, ci 0.950
benchmarking fermaPyr" mean: 113.4742 us, lb 113.3555 us, ub 113.7190 us, ci 0.950 std dev: 838.6306 ns, lb 498.7351 ns, ub 1.630455 us, ci 0.950
Потребление памяти:
166667166667000000 67,976 bytes allocated in the heap 3,512 bytes copied during GC 44,416 bytes maximum residency (1 sample(s)) 17,024 bytes maximum slop 1 MB total memory in use (0 MB lost due to fragmentation)
Tot time (elapsed) Avg pause Max pause Gen 0 0 colls, 0 par 0.00s 0.00s 0.0000s 0.0000s Gen 1 1 colls, 0 par 0.00s 0.00s 0.0002s 0.0002s
INIT time 0.00s ( 0.00s elapsed) MUT time 0.00s ( 0.00s elapsed) GC time 0.00s ( 0.00s elapsed) EXIT time 0.00s ( 0.00s elapsed) Total time 0.00s ( 0.00s elapsed)
%GC time 8.6% (26.2% elapsed)
Alloc rate 965,115,783 bytes per MUT second
Productivity 84.7% of total user, 258.1% of total elapsed
Без оптимизации, только с -O2
warming up estimating clock resolution... mean is 1.784853 us (320001 iterations) found 2366 outliers among 319999 samples (0.7%) 1954 (0.6%) high severe estimating cost of a clock call... mean is 49.96217 ns (12 iterations) found 1 outliers among 12 samples (8.3%) 1 (8.3%) high mild
benchmarking magic mean: 13.71027 us, lb 13.70652 us, ub 13.71444 us, ci 0.950 std dev: 20.21804 ns, lb 17.71890 ns, ub 22.87030 ns, ci 0.950
benchmarking fermaPyr" collecting 100 samples, 1 iterations each, in estimated 6.269598 s mean: 62.82059 ms, lb 62.70756 ms, ub 63.09518 ms, ci 0.950 std dev: 909.8677 us, lb 488.0118 us, ub 1.480532 ms, ci 0.950 found 13 outliers among 100 samples (13.0%) 4 (4.0%) high mild 9 (9.0%) high severe variance introduced by outliers: 7.523% variance is slightly inflated by outliers
В данном конкретном случае компиляция под LLVM — добро. Не очень понял, что ты имел в виду под
у многих хацкель прог не по делу llvm флаг торчит
? Судя по флагам компиляции, ghc правильно определяет тип процессора, который у меня стоит, так что, не уверен, что -optc-march=native надо включать.