Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Another data point: MATLAB, glnxa64 AVX2, 12 core

>> maxNumCompThreads(1);

>> im = randi(255, [2560, 1600, 3],'uint8');

>> timeit(@()imresize(im,[320,200],'bilinear','Antialiasing',false))

ans =

    0.0083
>> timeit(@()imresize(im,[320,200],'bilinear'))

ans =

    0.0301
>> maxNumCompThreads(6);

>> timeit(@()imresize(im,[320,200],'bilinear','Antialiasing',false))

ans =

    0.0062
>> timeit(@()imresize(im,[320,200],'bilinear'))

ans =

    0.0113

Oh, missed that lanczos2 part:

>> maxNumCompThreads(1);

>> timeit(@()imresize(im,[320,200],'lanczos2','Antialiasing',false))

ans =

    0.0146
>> maxNumCompThreads(6);

>> timeit(@()imresize(im,[320,200],'lanczos2','Antialiasing',false))

ans =

    0.0049

Since MATLAB tries to do most of the computation in double precision, its harder to extract much from SIMD.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: