普通は

# 1.キャッシュがあるか
 あればキャッシュから出力して終了

# 2.キャッシュが無かったのでデータ作成
 キャッシュさせて出力

こんな順序で、テンプレートのコンパイルは特に意識しない
テンプレートのコンパイルが必要なのはテンプレートを書き換えた時のみ

共通テンプレートを使うことはよくあるのでテンプレートIDをそれぞれのアクセスに対して付ける
多くの場合はアクセスURLをIDにしておくと事足りる
$tplid = md5($_SERVER['REQUEST_URI']);
とか