On Thursday, 16 May 2013 at 13:48:45 UTC, Juan Manuel Cabo wrote:
On Thursday, 16 May 2013 at 10:35:12 UTC, Dicebot wrote:
Want to bring into discussion people that are not on Google+.
Samuel recently has posted there some simple experiments with
bioinformatics and bad performance of Phobos-based snippet has
surprised me.
I did explore issue a bit and reported results in a blog post
(snippets are really small and simple) :
http://dicebot.blogspot.com/2013/05/short-performance-tuning-story.html
One open question remains though - can D/Phobos do better
here? Can some changes be done to Phobos functions in question
to improve performance or creating bioinformatics-specialized
library is only practical solution?
I bet the problem is in readln. Currently, File.byLine() and
readln() are extremely slow, because they call fgetc() one char
at a time.
Both manual and naive phobos version use same readln approach,
but former is more than 10x faster. It was my first guess too,
but comparing to snippets have shown that this is not the issue
this time.