Closed tekktonic closed 2 years ago
Profiling gtkcord (and most cgo applications) is painful because the bulk of the work is in C, which requires recompiling shared libraries and attaching C profilers such as gperftools instead of using Go's pprof.
That said, I don't work on gtkcord anymore. With cchat-gtk, I have tried to mitigate the issue for the most part with lazy-loading and such.
This bug is probably fixed now, since gtkcord3 will only play GIF avatars/icons when they're hovered over (but not attachments/embeds), and porting to gotk4 solved the memory leaks.
On my pinebook pro gtkcord3 is consistently the highest user of CPU on my system. It consistently sits around 95% CPU and uses 700MB of memory. I'd be happy to provide some profiling info if you let me know how, I don't know what instrumentation isl like for Go.