Limits of possible performance improvements of Haskell/GHC code?

This page summarizes the projects mentioned and recommended in the original post on /r/haskell

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • vector-sorting-benchmarks

    I want to beat std::sort with Haskell.

    I recently tried to implement quicksort on vectors in Haskell aiming to make it fast enough to be comparable to C++. If you're curious you can check out https://github.com/sergv/vector-sorting-benchmarks. After some time and research on what C++ actually does I reimplemented it in Haskell and the result managed to stay within reasonable % of C++. E.g. sorting 1000 arrays of 20000 8-byte integers on my machine takes 523ms in C++ (with ffi overhead) and 545ms in fastest Haskell algorithm with closest others taking around 650ms.

  • countwords

    Playing with counting word frequencies (and performance) in various languages. (by unhammer)

    In addition to what's mentioned, the "default" libraries people use are often not the best-performing ones. E.g. Data.Vector.Hashtables is often much faster than Data.HashMap.Strict (which again is typically faster than Data.Map). And we find performance papercuts in common libraries that may simply be due to not enough people optimising for speed.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • text

    Haskell library for space- and time-efficient operations over Unicode text. (by haskell)

    In addition to what's mentioned, the "default" libraries people use are often not the best-performing ones. E.g. Data.Vector.Hashtables is often much faster than Data.HashMap.Strict (which again is typically faster than Data.Map). And we find performance papercuts in common libraries that may simply be due to not enough people optimising for speed.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts