Haskell, Parsec 2 и тормоза

Apr 26, 2010 01:14

Помня о том, какое бурление вызвало сравнение скорости Лиспа с другими языками в прошлом номере ПФП, прошу помощи зала не допустить несправедливости. Я сейчас доделываю сравнение скорости разных методов парсинга, сделал вариант на Хаскеле на базе Parsec2, и получившаяся скорость мне совсем не нравится. До этого на Хаскеле не писал, поэтому ( Read more... )

haskell, fp, parsers

Leave a comment

sleepy_drago April 28 2010, 07:14:46 UTC
ну мне как сантехнику было интересно про перформанс - парсеры я уже лет семь не видел ( ... )

Reply

sleepy_drago April 28 2010, 08:20:12 UTC
sorry прогнал почти обо всем кроме спасибо :)
разумеется для горячего файлового кэша плюсы тоже сpu bound - так что можно еще в пару раз.
перф. для меня это хобби для отдыха :) Если вспомню с какой стороны парсеры можно будет пойти на спортивный результат :D

Reply

thedeemon April 28 2010, 08:49:47 UTC
Какой-то спортивный интерес в этом есть, конечно, но конкретно в данной задаче чтение всего файла не выход: карта России уже больше 2 гигов.

Reply

sleepy_drago April 28 2010, 12:49:40 UTC
да карта России представляет собой определенный вызов :) 2844М.
правда и хаскельный вариант на хрюше 32 упал с
bounds.exe: out of memory

интересно под Win64 есть возможность собрать ваш пример на хаскеле? или только 32 ?

Reply

sleepy_drago April 28 2010, 13:23:51 UTC
sorry спрашивать такое лучше у гугля - нашел http://hackage.haskell.org/trac/ghc/ticket/1884

Reply

sleepy_drago May 2 2010, 11:18:23 UTC
посмотрел на ситуацию с потоковым разбором - вроде смысла руками делать то что в expat'е реализовано нет. На мелких примерах он медленнее всего раза в 2 что весьма и весьма неплохо.
Если захотеть поглумиться над industrial c++ то нужно выманить на спор деятелей с xerces или msxml на потоковый парсинг. пусть заюзают какой-нибудь sax2 и почувствуют разницу с каким-нибудь фп-yacc :).

Reply


Leave a comment

Up