use cache for total work and move timing test to a less spammy location