LINUX.ORG.RU

История изменений

Исправление dave, (текущая версия) :

Прошу прощения. У меня в версии F# была одна оптимизация. Я использовал ссылки самого F#, тогда как в хаскельной версии у меня свои ссылки по типу IORef, но только специальные.

В общем, одного чуда не свершилось. На OS X Haskell Platform на идентичной задаче таки оказался быстрее F# поверх mono: 53 секунды против 59 секунд (плюс-минус секунда или пол секунды, поскольку присутствует элемент стохастики, но он нивелируются при таких объемах).

Тем менее, сеансация присутствует. Mono под OS X на этой задаче (с оптимизацией, когда используются ссылки самого F#) работает быстрее, чем .NET под виндой: 41 секунда против 69 секунд. Повторюсь, это не совсем точно соответствует хаскельному коду.

Что касается самой Haskell Platform, то на винде и OS X она отработала примерно одинаково: 51 секунда на OS X для 64-битной Haskell Platform против 53 секунд на 64-битной Win 8 для 32-битной Haskell Platform.

Что касается -llvm, то у меня не линкуется - надо разбираться. У меня Mac Ports, а там какая-то фигня, из-за чего приходится при сборке указывать -L/usr/lib.

Еще раз замечу, что присутствует в задаче элемент стохастики (случайные числа по экспоненциальному распределению), но время нескольких замеров почти не отличается, максимум, на секунду-две.

Исходная версия dave, :

Прошу прощения. У меня в версии F# была одна оптимизация. Я использовал ссылки самого F#, тогда как в хаскельной версии у меня свои ссылки по типу IORef, но только специальные.

В общем, одного чуда не свершилось. На OS X Haskell Platform таки оказался быстрее F# поверх mono: 53 секунды против 59 секунд (плюс-минус секунда или пол секунды, поскольку присутствует элемент стохастики, но он нивелируются при таких объемах).

Тем менее, сеансация присутствует. Mono под OS X на этой задаче (с оптимизацией, когда используются ссылки самого F#) работает быстрее, чем .NET под виндой: 41 секунда против 69 секунд. Повторюсь, это не совсем точно соответствует хаскельному коду.

Что касается самой Haskell Platform, то на винде и OS X она отработала примерно одинаково: 51 секунда на OS X для 64-битной Haskell Platform против 53 секунд на 64-битной Win 8 для 32-битной Haskell Platform.

Что касается -llvm, то у меня не линкуется - надо разбираться. У меня Mac Ports, а там какая-то фигня, из-за чего приходится при сборке указывать -L/usr/lib.

Еще раз замечу, что присутствует в задаче элемент стохастики (случайные числа по экспоненциальному распределению), но время нескольких замеров почти не отличается, максимум, на секунду-две.