add cache and rendering metrics, idea from @jssjr