added benchmark to see effectiveness of caching