How to profile a GHC Plugin?
Haskell Community [Unofficial]
March 5, 2026
Hello! In Liquid Haskell, a ghc plugin, the procedure documented here [link] worked for me with GHC 9.14.1.
This is inspired by this oldish post about profiling ghc [link]. The idea is to build a Haskell program that loads the source files and the plugin using the GHC API. The program is linked with the profiling runtime, and then can load plugins compiled with profiling enabled.
The procedure sometimes breaks and needs an update. It was broken for a while until I investigated it today once more.
That said, I haven’t used this tooling myself. When I had to profile time, I have used timestats a couple of times.
Discussion in the ATmosphere