DU Results -

Source patches

du6bitcount.hpp

244,250c244
< 			ptr = reinterpret_cast<T*>(
< #ifdef __GNUC__	
< 			aligned_alloc
< #else
< 			_aligned_malloc
< #endif
< 			(sz, bytes));
---
> 			ptr = reinterpret_cast<T*>(aligned_alloc(sz, bytes));

Flex error reports

C++ error reports

du6bitcount.cpp

d:\users\bednarek\@svn\nprg054\studenti\20162\benovic_marek_37494826\du6bitcount.hpp(137): warning C4800: 'body64::simd_carrier_t': forcing value to bool 'true' or 'false' (performance warning)
d:\users\bednarek\@svn\nprg054\studenti\20162\benovic_marek_37494826\du6bitcount.hpp(340): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
d:\users\bednarek\@svn\nprg054\studenti\20162\benovic_marek_37494826\du6bitcount.hpp(399): warning C4244: '+=': conversion from '__int64' to 'int', possible loss of data
d:\users\bednarek\@svn\nprg054\studenti\20162\benovic_marek_37494826\du6bitcount.hpp(480): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
d:\users\bednarek\@svn\nprg054\studenti\20162\benovic_marek_37494826\du6bitcount.hpp(539): warning C4244: '+=': conversion from '__int64' to 'int', possible loss of data

du6main.cpp

D:\Users\bednarek\@SVN\NPRG054\studenti\20162\Benovic_Marek_37494826\du6bitcount.hpp(137): warning C4800: 'body64::simd_carrier_t': forcing value to bool 'true' or 'false' (performance warning)
D:\Users\bednarek\@SVN\NPRG054\studenti\20162\Benovic_Marek_37494826\du6bitcount.hpp(340): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
D:\Users\bednarek\@SVN\NPRG054\studenti\20162\Benovic_Marek_37494826\du6bitcount.hpp(399): warning C4244: '+=': conversion from '__int64' to 'int', possible loss of data
D:\Users\bednarek\@SVN\NPRG054\studenti\20162\Benovic_Marek_37494826\du6bitcount.hpp(480): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
D:\Users\bednarek\@SVN\NPRG054\studenti\20162\Benovic_Marek_37494826\du6bitcount.hpp(539): warning C4244: '+=': conversion from '__int64' to 'int', possible loss of data

Linker error reports

Run output diffs

empty.in

size	and/random/AVX	or/random/AVX	not/random/AVX	zero/random/AVX	bitcount/zero/AVX	bitcount/random/AVX	bitcount/one/AVX

empty

0a1,144
> CHKSUM A[16361] = 1704049882045796517
> CHKSUM B[16361] = 3051845060943936485
> CHKSUM C[16361] = 8406825077303694615
> CHKSUM A[16361] = 1704049882045796517
> CHKSUM B[16361] = 3051845060943936485
> CHKSUM C[16361] = 14795813939395590003
> CHKSUM A[16361] = 1704049882045796517
> CHKSUM B[16361] = 3051845060943936485
> CHKSUM C[16361] = 14202537043668961844
> CHKSUM A[16361] = 1704049882045796517
> CHKSUM B[16361] = 3051845060943936485
> CHKSUM C[16361] = 0
> CHKSUM A[16361] = 0
> CHKSUM B[16361] = 0
> CHKSUM C[16361] = 0
> COUNT C[16361] = 0
> CHKSUM A[16361] = 1704049882045796517
> CHKSUM B[16361] = 3051845060943936485
> CHKSUM C[16361] = 8406825077303694615
> COUNT C[16361] = 4079
> CHKSUM A[16361] = 15906586925714758361
> CHKSUM B[16361] = 15906586925714758361
> CHKSUM C[16361] = 15906586925714758361
> COUNT C[16361] = 16361
> CHKSUM A[65521] = 6243337830944615578
> CHKSUM B[65521] = 5922531904192438000
> CHKSUM C[65521] = 904245051185649773
> CHKSUM A[65521] = 6243337830944615578
> CHKSUM B[65521] = 5922531904192438000
> CHKSUM C[65521] = 11261624683951403805
> CHKSUM A[65521] = 6243337830944615578
> CHKSUM B[65521] = 5922531904192438000
> CHKSUM C[65521] = 3375867688317299959
> CHKSUM A[65521] = 6243337830944615578
> CHKSUM B[65521] = 5922531904192438000
> CHKSUM C[65521] = 0
> CHKSUM A[65521] = 0
> CHKSUM B[65521] = 0
> CHKSUM C[65521] = 0
> COUNT C[65521] = 0
> CHKSUM A[65521] = 6243337830944615578
> CHKSUM B[65521] = 5922531904192438000
> CHKSUM C[65521] = 904245051185649773
> COUNT C[65521] = 16301
> CHKSUM A[65521] = 9619205519261915537
> CHKSUM B[65521] = 9619205519261915537
> CHKSUM C[65521] = 9619205519261915537
> COUNT C[65521] = 65521
> CHKSUM A[262161] = 3297544594973129105
> CHKSUM B[262161] = 8719145154367749936
> CHKSUM C[262161] = 3795782417692494691
> CHKSUM A[262161] = 3297544594973129105
> CHKSUM B[262161] = 8719145154367749936
> CHKSUM C[262161] = 8220907331648384350
> CHKSUM A[262161] = 3297544594973129105
> CHKSUM B[262161] = 8719145154367749936
> CHKSUM C[262161] = 6493881959360346336
> CHKSUM A[262161] = 3297544594973129105
> CHKSUM B[262161] = 8719145154367749936
> CHKSUM C[262161] = 0
> CHKSUM A[262161] = 0
> CHKSUM B[262161] = 0
> CHKSUM C[262161] = 0
> COUNT C[262161] = 0
> CHKSUM A[262161] = 3297544594973129105
> CHKSUM B[262161] = 8719145154367749936
> CHKSUM C[262161] = 3795782417692494691
> COUNT C[262161] = 65603
> CHKSUM A[262161] = 9791426554333475441
> CHKSUM B[262161] = 9791426554333475441
> CHKSUM C[262161] = 9791426554333475441
> COUNT C[262161] = 262161
> CHKSUM A[1048721] = 17400736936658400081
> CHKSUM B[1048721] = 15104255201358958426
> CHKSUM C[1048721] = 15628100561592667350
> CHKSUM A[1048721] = 17400736936658400081
> CHKSUM B[1048721] = 15104255201358958426
> CHKSUM C[1048721] = 16876891576424691157
> CHKSUM A[1048721] = 17400736936658400081
> CHKSUM B[1048721] = 15104255201358958426
> CHKSUM C[1048721] = 18210306149236343456
> CHKSUM A[1048721] = 17400736936658400081
> CHKSUM B[1048721] = 15104255201358958426
> CHKSUM C[1048721] = 0
> CHKSUM A[1048721] = 0
> CHKSUM B[1048721] = 0
> CHKSUM C[1048721] = 0
> COUNT C[1048721] = 0
> CHKSUM A[1048721] = 17400736936658400081
> CHKSUM B[1048721] = 15104255201358958426
> CHKSUM C[1048721] = 15628100561592667350
> COUNT C[1048721] = 262582
> CHKSUM A[1048721] = 17164299012185191921
> CHKSUM B[1048721] = 17164299012185191921
> CHKSUM C[1048721] = 17164299012185191921
> COUNT C[1048721] = 1048721
> CHKSUM A[4194961] = 6473753988864240339
> CHKSUM B[4194961] = 10231070070843548313
> CHKSUM C[4194961] = 9532944331985126649
> CHKSUM A[4194961] = 6473753988864240339
> CHKSUM B[4194961] = 10231070070843548313
> CHKSUM C[4194961] = 7171879727722662003
> CHKSUM A[4194961] = 6473753988864240339
> CHKSUM B[4194961] = 10231070070843548313
> CHKSUM C[4194961] = 17270444912038943006
> CHKSUM A[4194961] = 6473753988864240339
> CHKSUM B[4194961] = 10231070070843548313
> CHKSUM C[4194961] = 0
> CHKSUM A[4194961] = 0
> CHKSUM B[4194961] = 0
> CHKSUM C[4194961] = 0
> COUNT C[4194961] = 0
> CHKSUM A[4194961] = 6473753988864240339
> CHKSUM B[4194961] = 10231070070843548313
> CHKSUM C[4194961] = 9532944331985126649
> COUNT C[4194961] = 1048513
> CHKSUM A[4194961] = 5297454827193631729
> CHKSUM B[4194961] = 5297454827193631729
> CHKSUM C[4194961] = 5297454827193631729
> COUNT C[4194961] = 4194961
> CHKSUM A[16779921] = 713150466916646310
> CHKSUM B[16779921] = 10109414519226065623
> CHKSUM C[16779921] = 1388485239021952180
> CHKSUM A[16779921] = 713150466916646310
> CHKSUM B[16779921] = 10109414519226065623
> CHKSUM C[16779921] = 9434079747120759753
> CHKSUM A[16779921] = 713150466916646310
> CHKSUM B[16779921] = 10109414519226065623
> CHKSUM C[16779921] = 2661671306103209547
> CHKSUM A[16779921] = 713150466916646310
> CHKSUM B[16779921] = 10109414519226065623
> CHKSUM C[16779921] = 0
> CHKSUM A[16779921] = 0
> CHKSUM B[16779921] = 0
> CHKSUM C[16779921] = 0
> COUNT C[16779921] = 0
> CHKSUM A[16779921] = 713150466916646310
> CHKSUM B[16779921] = 10109414519226065623
> CHKSUM C[16779921] = 1388485239021952180
> COUNT C[16779921] = 4195980
> CHKSUM A[16779921] = 3374821773019855857
> CHKSUM B[16779921] = 3374821773019855857
> CHKSUM C[16779921] = 3374821773019855857
> COUNT C[16779921] = 16779921