First optimization was easy, but very effective: Use mutable vectors, not immutable ones: http://www.joachim-breitner.de/blog/759-Faster_Winter_1_7__Vectors …
-
-
Prikaži ovu nit
-
As the second optimization, we use SPECIALIZE to avoid the overhead of monad-polymorphic code: https://www.joachim-breitner.de/blog/760-Faster_Winter_2__SPECIALIZE …
Prikaži ovu nit -
Third in the series: Difference lists give you O(1) concatenation, and every Haskell programmer should know about them. And they can even fix memory leaks (although I am not entirely sure why). https://www.joachim-breitner.de/blog/761-Faster_Winter_3__Difference_Lists …
Prikaži ovu nit -
The forth entry is a small one: Export lists help improving performance: http://www.joachim-breitner.de/blog/762-Faster_Winter_3__Export_lists …
Prikaži ovu nit -
In the fifth entry, I talk about how ReaderT gets in the way, and why eta-expansion is so important for performance: http://www.joachim-breitner.de/blog/763-Faster_Winter_5__Eta-Expanding_ReaderT …
Prikaži ovu nit -
Time for the sixth entry, a small one showing that sometimes, simpler code is better code: http://www.joachim-breitner.de/blog/764-Faster_Winter_6__Simpler_Code …
Prikaži ovu nit -
After a week, I can publish the seventh and (for now) last entry, where we introduce a “control stack” (or should I say, “zipper-like data structure”)? http://www.joachim-breitner.de/blog/765-Faster_Winter_7__The_Zipper … I am also sharing the code used for the benchmarks, stats and the graph: http://www.joachim-breitner.de/blog/766-Faster_Winter__Statistics_the_making-of …
Prikaži ovu nit
Kraj razgovora
Novi razgovor -
-
-
Great job, thanks for posting this! A minor nit: in the first post (Winter is coming even more quickly), the index list of all the following things has a broken link to the SPECIALIZE post
-
Thanks, fixed!
Kraj razgovora
Novi razgovor -
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.