文字列処理は重い、数値処理で代用できるならそうする • 同じ計算は繰り返さないように結果を変数に入れる • 中技 • 近似計算などに切り替える • オブジェクトのnew/deleteも量が多いとまあまあ遅い • メモリ内のデータ構造を見直すことで、キャッシュヒット率が改善して速くなることがある (配列の添え字の入れ替えなども検討) • 一度計算した値は覚えておいて、再び同じ計算が出たら結果を探し出して計算の代わりにする (メモ化・計算結果キャッシュ) • 別のアルゴリズムにする • パフォーマンスチューニングの本を読む • 大技 • 「そういう使い方は推奨しない」みたいな「いいわけストーリー」を考える • 「押してもだめなら引いてみな」的な発想の逆転を試みる • 効率的な実行を軸に、全体的な設計を見直す(川合にとっては禁じ手) • 気分転換する、散歩する、旅に出る、瞑想する、ふて寝する、などなど・・・ 19