If I compare this Julia code:

```
module Testing
function performance_test()
range = 1:2000000;
steering_vectors = complex(randn(4,11), randn(4,11));
sum_signal = zeros(Complex{Float64}, 4, length(range));
for i = 1:11
carrier_signal = map(x -> exp(2im * pi * 1.023e6 * x / 4e6 + 1im * 40 * pi / 180), range);
# carrier_signal = exp(2im * pi * 1.023e6 * range / 4e6 + 1im * 40 * pi / 180);
steered_signal = steering_vectors[:,i] * carrier_signal.';
sum_signal = sum_signal + steered_signal;
end
return sum_signal;
end
end
```

against this Matlab code:

```
range = 1:2000000;
steering_vectors = complex(randn(4,11), randn(4,11));
sum_signal = zeros(4,length(range));
for i = 1:11
carrier_signal = exp(2i * pi * 1.023e6 * range / 4e6 + 1i * 40 * pi / 180);
steered_signal = steering_vectors(:,i) * carrier_signal;
sum_signal = sum_signal + steered_signal;
end
```

I get the following results:

- Julia: 3.956940 seconds (207 allocations: 3.397 GB, 19.13% gc time)
- Matlab: Elapsed time is 1.623101 seconds (Allocated Memory: 62714.44 Kb)

The array transposition in Julia takes only a small amount of time compared to the rest when viewing ProfileView.view().

How can I get similiar results to Matlab?