>> maxNumCompThreads(1);
>> im = randi(255, [2560, 1600, 3],'uint8');
>> timeit(@()imresize(im,[320,200],'bilinear','Antialiasing',false))
ans =
0.0083
0.0301
0.0062
0.0113
>> timeit(@()imresize(im,[320,200],'lanczos2','Antialiasing',false))
0.0146
0.0049
>> maxNumCompThreads(1);
>> im = randi(255, [2560, 1600, 3],'uint8');
>> timeit(@()imresize(im,[320,200],'bilinear','Antialiasing',false))
ans =
>> timeit(@()imresize(im,[320,200],'bilinear'))ans =
>> maxNumCompThreads(6);>> timeit(@()imresize(im,[320,200],'bilinear','Antialiasing',false))
ans =
>> timeit(@()imresize(im,[320,200],'bilinear'))ans =
Oh, missed that lanczos2 part:>> maxNumCompThreads(1);
>> timeit(@()imresize(im,[320,200],'lanczos2','Antialiasing',false))
ans =
>> maxNumCompThreads(6);>> timeit(@()imresize(im,[320,200],'lanczos2','Antialiasing',false))
ans =
Since MATLAB tries to do most of the computation in double precision, its harder to extract much from SIMD.