Hey folks, we've been sitting on ksp1 for a while due to performance issues when updating to ksp2. I used Claude to take a pass at finding and perf wins for ksp2 to unblock us.
Looking at this issue,
https://github.com/google/ksp/issues/2576
I think this commit should help, happy to open a pr (do you want a test as well?)
(I'm still poking at this, not sure if the cache needs to be Volatile or it's ok if it races on occasion, I assume the hash value should be idempotent)
https://github.com/shmuelr/ksp/commit/2c274556bd23a9d1c4bf17389210e72ab2f6ba2e
In my initial benchmarks it improved some of our largest ksp tasks by 15-30%
I'm working on more benchmarks & profiling (and going to use this locally on my dev builds to get some usage of this), but figured I'd post here to see if I'm going in the right direction
(For context, we have a rather large Android project with lots of KSP usage (both Dagger, and some of our own processors). We have many Modules & heavy use of Binds methods.)
Thank you!