Created attachment 129547 [details] Callgrind map the gradient map uses KoStopGradient::colorAt() without any caching which is extremely slow because that retrieves a colorspace all the time. Using the CachedGradient from the gradient painter doesn't seem easy or obvious.
Solved by https://invent.kde.org/graphics/krita/-/merge_requests/560 (master) and https://invent.kde.org/graphics/krita/-/merge_requests/561 (4.3)