Call clear_all_cache when bumping to a newer Piwik version to immediately invalidate the cache.
piwik doesn't use smarty cache feature. all compiled templates should be updated automatically as mtime is greater for new templates, and smarty uses filemtime to decide whether the new template needs to be recompiled.
I don't think we could benefit from using Smarty cache as this would add some complexity in dealing with cache expiries, invalidating cache, etc. instead we should optimize the code above to make sure all api request/UI generation are fast and efficient (it's not too bad at the moment but def lots of ways to make it faster). see #660 and #103 and #620