
Жиробас ?
23.06.2018
15:57:38

Fedot
23.06.2018
15:58:26

Жиробас ?
23.06.2018
15:58:29
А ну здесь уже не 10k, а 100kk.

Google

Жиробас ?
23.06.2018
15:59:19
Дык что, хаскелисты.

Vyacheslav
23.06.2018
15:59:25
Пока что выяснили что го не может понять, что функция ничего не делает

Жиробас ?
23.06.2018
15:59:26
Тест на сравнение некорректный же?

melancholiac
23.06.2018
16:01:14
это не прикладная программа а холостой бенчмарк
и ему подвергли до этого другие языки

Жиробас ?
23.06.2018
16:02:00
Сколько там нода была?
Ой жс.

melancholiac
23.06.2018
16:02:04
а результат хаскеля заставил выпасть в осадок
так

Жиробас ?
23.06.2018
16:03:09
Вот поэтому предположение, что в хаскеле как-то можно иначе?

Grigory
23.06.2018
16:03:31
loop можно и O2 флагом собрать (но я не эксперт тут) и Word32 юзать; есть llvm флаг еще

Google

A64m
23.06.2018
16:03:45
это целые неограниченного размера

melancholiac
23.06.2018
16:03:52
мы тут не ради срача. это норм производительность? мб флаги какие нибудь забыли?

A64m
23.06.2018
16:04:05
скомпилировано без оптимизации

melancholiac
23.06.2018
16:04:25
оно оптимум по скорости даст или по всему понемногу?

A64m
23.06.2018
16:05:06
-O2, -O3 в ghc нет
ну и Int вместо Integer

Vyacheslav
23.06.2018
16:05:33
Ещё наверное unboxed можно заюзать?

melancholiac
23.06.2018
16:05:40
спасибо, сейчас проверим

A64m
23.06.2018
16:07:19
а, еще интересно какая версия ghc

melancholiac
23.06.2018
16:09:47
8+
в фоне ничего особого не висит

A64m
23.06.2018
16:10:15
8.0 или 8.2?

melancholiac
23.06.2018
16:10:21
8.0

Жиробас ?
23.06.2018
16:10:23
ghc --version ⏎
The Glorious Glasgow Haskell Compilation System, version 8.4.3

melancholiac
23.06.2018
16:10:41
а, даже так

Жиробас ?
23.06.2018
16:13:16
Опа.

Google

Жиробас ?
23.06.2018
16:13:51
Всё те же 10kkk.

Ilya
23.06.2018
16:14:04
Integer -- это libgmp

A64m
23.06.2018
16:14:27
не совсем

Ilya
23.06.2018
16:15:02
хотя, конечно, для всего, что влезает в машинное слово, оверхэд должен быть не большим

Жиробас ?
23.06.2018
16:15:04
Флаг оптимизации играет хорошо.

A64m
23.06.2018
16:16:23
все равно медленно

Ilya
23.06.2018
16:16:51
ну, оптимизация, наверное, сделала предложенный выше анбоксинг

melancholiac
23.06.2018
16:16:52

Жиробас ?
23.06.2018
16:16:59

melancholiac
23.06.2018
16:17:07
не 7 мин, можно спать спокойно

Жиробас ?
23.06.2018
16:17:22
Int взамен Integer тоже играет.

A64m
23.06.2018
16:17:39
а llvm есть?
можно еще с -fllvm попробовать

Жиробас ?
23.06.2018
16:18:11

A64m
23.06.2018
16:18:32
если 8.4 то лучше 5

Жиробас ?
23.06.2018
16:19:22
brew info llvm ⏎
llvm: stable 6.0.0 (bottled), HEAD [keg-only]
Блин. Его собирать придётся.
llvm отменяется.

Google

melancholiac
23.06.2018
16:20:35

Alexander
23.06.2018
16:21:36
чего там опять попугаи?
уже решили обогнали го или ещё нет?

Жиробас ?
23.06.2018
16:39:50
Неа. Только если выключать принудительно флаги в Го.

Alexander
23.06.2018
16:40:45
а где гист с Haskell кодом?

Admin
ERROR: S client not available

melancholiac
23.06.2018
16:41:47
nopt
134.56s user 0.89s system 99% cpu 2:15.45 total
-O2
6.54s user 0.00s system 99% cpu 6.538 total

Alexander
23.06.2018
16:44:28
ну ребят, ну оформляйте гистом с кодами всех языков и человеческим описанием
а то 100500 копипаст результатов бенчмарка без кода это неудобно

Жиробас ?
23.06.2018
16:45:54
Да мы так, локально.
Пока что свивт огонь. Те самые 10kkk выполняет за 500мс.

Alexander
23.06.2018
16:46:58
просто много строк и найти сложно с чего все началось и что меряют
а отматывать на 500+ сообщений не хочется

melancholiac
23.06.2018
16:47:29
не гист, но начиналось с этого
сменили Integer на Int только

Жиробас ?
23.06.2018
16:48:11
И оптимизацию цомпиляции -O2 завезли.

melancholiac
23.06.2018
16:48:36
ллвм лениво собирать ?

A64m
23.06.2018
16:49:37
там любую версию надо собирать?

Google

melancholiac
23.06.2018
16:50:24
написало что сейчас только 3.7 поддерживается

A64m
23.06.2018
16:51:15
кем поддерживается?

melancholiac
23.06.2018
16:51:48
[1 of 1] Compiling Main ( test2.hs, test2.o )
You are using an unsupported version of LLVM!
Currently only 3.7 is supported.
We will try though...
opt: /tmp/ghc18358_0/ghc_2.ll:15:29: error: expected comma after alias or ifunc's type
@__stginit_Main = alias i8* bitcast (%__stginit_Main_struct* @__stginit_Main$def to i8*)
^
`opt' failed in phase `LLVM Optimiser'. (Exit code: 1)

Евгений
23.06.2018
16:52:00
У тебя 7.8 что ли?
Поставь 8.2 или 8.4

A64m
23.06.2018
16:52:11
8.0

melancholiac
23.06.2018
16:53:51
хотелось приемлимый результат увидеть, а не изначальный

Alexander
23.06.2018
16:54:55
выигрывает тот у кого констант фолдинг для рекурсивных функций не ограничен
нужно putStrLn . show . f =<< readLn
если менять скорость языка
да и тест несравнимый
в го нерекурсивная функия

melancholiac
23.06.2018
16:56:37
ну изначально циклы тестировались

Alexander
23.06.2018
16:57:14
worker wrapper тогда хотя бы заделайте

melancholiac
23.06.2018
16:57:35
признатся без понятия что это :D

Евгений
23.06.2018
16:58:04