Действительно ли язык Джулии так быстр, как утверждает?

Следующийэта почта Я решил сравнить Джулию с GNU Octave, и результаты не соответствовали ускорениям, показанным вjulialang.org.

Я скомпилировал Джулию и GNU Octave сCXXFLAGS='-std=c++11 -O3', результаты я получил:

GNU Octave
a=0.9999;

tic;y=a.^(1:10000);toc
Elapsed time is 0.000159025 seconds.

tic;y=a.^(1:10000);toc
Elapsed time is 0.000162125 seconds.

tic;y=a.^(1:10000);toc
Elapsed time is 0.000159979 seconds.

-

tic;y=cumprod(ones(1,10000)*a);toc
Elapsed time is 0.000280142 seconds.

tic;y=cumprod(ones(1,10000)*a);toc
Elapsed time is 0.000280142 seconds.

tic;y=cumprod(ones(1,10000)*a);toc
Elapsed time is 0.000277996 seconds.
Юля
tic();y=a.^(1:10000);toc()
elapsed time: 0.003486508 seconds

tic();y=a.^(1:10000);toc()
elapsed time: 0.003909662 seconds

tic();y=a.^(1:10000);toc()
elapsed time: 0.003465313 seconds

-

tic();y=cumprod(ones(1,10000)*a);toc()
elapsed time: 0.001692931 seconds

tic();y=cumprod(ones(1,10000)*a);toc()
elapsed time: 0.001690245 seconds

tic();y=cumprod(ones(1,10000)*a);toc()
elapsed time: 0.001689241 seconds

Может кто-нибудь объяснить, почему Джулия медленнее, чем GNU Octave с этими основными операциями? После прогрева он должен вызывать LAPACK / BLAS без накладных расходов, верно?

РЕДАКТИРОВАТЬ:

Как объясняется в комментариях и ответах, приведенный выше код не является хорошим эталоном и не иллюстрирует преимущества использования языка в реальном приложении. Раньше я думала о Юлии как о "быстрее"Октав / MATLAB», но это гораздо больше, чем это. Это огромный шаг кпродуктивныйвысокопроизводительные, научные вычисления. Используя Джулию, я смог: 1) превзойти программное обеспечение в моей области исследований, написанных на языках Fortran и C ++, и 2) предоставить пользователям гораздо более приятный API.

Ответы на вопрос(2)

Ваш ответ на вопрос