Liveの音飛び対策


先日の公演で、最後の曲で音楽が一瞬止まる、ということがありました。
で、対策メモ。

状況から判断するにSSDのプチフリーズが一番怪しい。

SSDの換装


macbookに入っているのはintel X-25M

買った当時は、プチフリーズが起きにくいという事で選択したが、調べてみると結構起きていたらしく、intelからもファームウェアアップデートが出ていました。
CDで起動ディスクを作ってアップデートというながれなのですが、macbookには対応していないのでこれは保留。

新しいmacbook proに入れるつもりで買ってあったsamsung 830に入れ替えました。

やり方はifixit参照。
まず、Carbon Copy Clonerを私物のmacbook proから持ってきて(最新版は有償になったためフリーの旧版を使用)、X-25Mの完全コピーを830に。
macbookを開けて、X-25Mを外して830を入れる。

OS とアプリケーションの最適化


いろいろ調べると、どうもプチフリーズにはスワップが関係しているらしい。
スワップが起きないようにするには、

メモリーを増やす。
使っていないメモリーをこまめに開放する。
OSをスワップしない設定にする

メモリーを増やすのが最も効果があるが、物が出発に間に合わないし、十分な検証もできないので今回は保留。お金もないし。

Memory Scopeをインストールしてこまめにメモリーを開放するようにしました。

アクティビティモニタと併用しながら、OSとアプリケーションがどのようにメモリーを使うのかを観察しました。


OSは利便性を重視して、終了したアプリケーションを不使用領域としてメモリー上に置いておくようになっているそうで、それは実際観察できました。
また傾向として、メモリーが少なくなってくると、なんとなくスワップが起きやすいなあというくらいのことはわかりました。何をしたらスワップするかまではわかりませんでした。
Ableton Liveの動作を観察すると、一度再生したクリップは再生した地点までディスクキャッシュされているということが分かりました。

このことから、舞台の終盤に近づくにつれて、空きメモリーがだんだん少なくなってきて、スワップが発生してプチフリーズが発生したということが推測されます。

対策として、曲のクリップを全部RAM再生することにしました。これでSSDに起因するトラブルからは開放されます。

これはこれでメモリーを圧迫するのですが、再生したクリップを全部キャッシュするのだったら舞台が終わった時点では結局同じ状態だろうということでそうしました。

ただし、メモリーは4GBしか積んでないし、Liveは32bitのソフトなのでメモリーが4GBしか使えないしで、余裕を持って動作できるような注意が必要です。
曲だけRAM再生にしたのはそのためです。Liveを立ち上げた段階でのメモリー使用量が約1.6~7GB、舞台終了時に増加した分が4~500MBですみました。

予備のmacbook proの方は、試しにスワップしない設定にしてみました。
ターミナルで
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
その後、
sudo rm /private/var/vm/swapfile*
でスワップファイルを消去。
将来もっとメモリーを積んだ時のために、Liveの方も試しに64bit化されたベータ版を使用することにしました。
今のところ順調に動いているようです。

コメント