kopia lustrzana https://github.com/Dsplib/libdspl-2.0
71 wiersze
890 B
Matlab
71 wiersze
890 B
Matlab
clear all; close all; clc;
|
|
|
|
|
|
N = 262144*16;
|
|
|
|
x = randn(N,1) + 1i * randn(N,1);
|
|
|
|
|
|
k = 4;
|
|
s = N;
|
|
|
|
for j = 1:21
|
|
z = x(1:s);
|
|
t = tic();
|
|
for i = 1:k
|
|
y = fft(z);
|
|
endfor
|
|
dt = toc(t) / k;
|
|
mflops(22-j) = 5 * s * log2(s) / dt / 1E6 ;
|
|
size(22-j) = s;
|
|
fprintf("size = %8d Mflops = %12.3f\n", s, mflops(22-j));
|
|
k = k * 1.7;
|
|
s = s / 2;
|
|
endfor
|
|
|
|
|
|
dspl = [1204.630392
|
|
1283.970612
|
|
1586.347958
|
|
1707.107097
|
|
1866.109831
|
|
1837.307509
|
|
2366.785829
|
|
2302.925874
|
|
2388.456514
|
|
2113.451546
|
|
3090.904615
|
|
2979.596190
|
|
2685.155556
|
|
2053.760000
|
|
3723.946667
|
|
3195.618462
|
|
2328.221538
|
|
1786.533333
|
|
7288.960000
|
|
4646.700000
|
|
2633.120000];
|
|
|
|
python = [2390.741
|
|
2597.527
|
|
2841.191
|
|
3066.652
|
|
3092.187
|
|
3444.710
|
|
3633.320
|
|
4333.845
|
|
5316.897
|
|
5201.486
|
|
4608.231
|
|
4481.357
|
|
3876.925
|
|
2961.753
|
|
2435.427
|
|
1344.871
|
|
606.953
|
|
298.559
|
|
120.772
|
|
50.369
|
|
17.033];
|
|
|
|
plot(log2(size), mflops,log2(size), dspl, log2(size), python) |