Czy język Julia jest naprawdę szybki?

Następującyten post Postanowiłem przetestować Julię przeciwko GNU Octave, a wyniki były niespójne z przyspieszeniami zilustrowanymi wjulialang.org.

Skompilowałem zarówno Julię, jak i GNU Octave zCXXFLAGS='-std=c++11 -O3', wyniki mam:

Oktawa GNU
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.
Julia
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

Czy ktoś mógłby wyjaśnić, dlaczego Julia jest wolniejsza od GNU Octave w tych podstawowych operacjach? Po rozgrzaniu powinien zadzwonić do LAPACK / BLAS bez narzutu, prawda?

EDYTOWAĆ:

Jak wyjaśniono w komentarzach i odpowiedziach, powyższy kod nie jest dobrym punktem odniesienia ani nie ilustruje korzyści płynących z używania języka w prawdziwej aplikacji. Kiedyś myślałem o Julii jako szybszym „Octave / MATLAB”, ale to znacznie więcej. To ogromny krok w kierunkuproduktywny, wydajne, naukowe obliczenia. Używając Julii, udało mi się 1) przewyższyć oprogramowanie w mojej dziedzinie badań napisanej w Fortran i C ++, a 2) zapewnić użytkownikom znacznie ładniejszy interfejs API.

questionAnswers(2)

yourAnswerToTheQuestion