Hi, I know st rendering is slow. I'm currently trying out different solutions but I can tell you profiling X calls is no fun.
tip now uses a simple dirty flag per line algorithm. Each modified line has the flag set to 1. Only dirty lines are drawn and once it's done their flag is set back to 0. I've noticed a significant speed up. I'll try more ideas in the near future.