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