スクリプトのパフォーマンスに関して

Gonbe Shan

2007年12月02日 14:30


以前からSASUKE SEA GARDENのSIMパフォーマンスが悪いので、少々気にしていました。
特に気になった値は、
・Sim FPSが38-40程度になっている。
・Total Frame Timeが22.2 ms以上かかっている。23ms~28ms程度。
でした。

そこでSIMオーナーに相談して、ちょっと調べてもらいました。すると!意外な物が重かったんですね。
一番にダントツで重かったスクリプトのオブジェクトは、なんとクラゲだったんです。



このクラゲは地下に何個か置いてあったのですが、それらのScript Timeは0.9ms~1.0ms以上にもなっていたようです。
多くの物が0.001~0.005程度のようなので、明らかに高負荷と言えると思います。
私はてっきり大きいからクジラかと思ってましたが・・・クジラさん疑ってゴメンナサイ。m(。_。)m

次に大きいのはSEA GARDENの隣に居る、お馬さんのようです。これが0.052msだそうです。
これと比べてもクラゲがいかに負荷が高いか分かりますよね。驚きの数値です。
お馬さんに関しては、他で調整できるなら、このままにしたいと思います。
すごく良くできている馬です。本当!私も欲しいくらいです。マンタが6匹は買える値段ですが・・・

海洋生物で次に高いのが、これまた意外なのですが、Swimming Orcaでした。



そう、例の不思議なSculptedプリムを使った、単純横回転で泳ぐOrcaです。
これはllTargetOmegaで回転させているだけだから、そんなに負荷があるとは思えなかったのですが、測定値は0.027とお馬さんの約半分でした。
我が家の海にも泳がせていたので、早速Takeしてしまいました。w
しかし、なんでこんなに負荷が高いのだろう。この作者も研究熱心で、色々と機能を付けすぎたのかも?
考えられるのは、Sculptedテクスチャの張替えスクリプトです。テクスチャの張替え自体もやや重いですから、それを高速で行っているとなると問題なのかもしれません。
私の作成したサメとかとはスピードが全然違いますからね。私のサメはスロー・ライフです。ww

その他の物に関しては、高くても0.005前後と言う事でした。
我が商品は総じて優秀だったようで、ひとまずは安心しました。

この辺の値はSIMオーナー又はオーナーから権限を委譲されている人しか調べられないようです。
詳しくは以下のページを参照して見て下さい。
https://wiki.secondlife.com/wiki/Region_Performance_Improvement_Guide/ja

今回クラゲを外したことにしより、SIMのパフォーマンスは正常値へと回復しました。
・Sim FPSが44~45。
・Total Frame Timeが20ms~22ms。

このせいか、2階のマグロやイルカの動きが早くなったように思います。
また、昨日まで方向転換するたびにガクッと落ちる感じだった、ジンベイザメとマンボウもスムースな動きに戻りました。
う~ん。。。やっぱ時々調査とかして対処しないと駄目ですね。

もう少し調査して、更に軽いSIMへと調整をしてみたいと思います。

<補足(12/2 PM11:20)>
今回の調査は、ある時点でのスクリプト実行状態を見たものです。正確に判断するためには、何回かの測定値の平均をとるなり、継続チェックして状態を監視するなりする必要があります。
ただ、クラゲにしても他にしても、ある時点で見ても高負荷と言う状態が起こっている事は確かなので、参考にはなると思います。
また、その後データ内容を詳細に確認したところ、やはりクジラも0.036msと高い数値を示していました。横回転のイルカに関しても、Orca同様に0.023msと数値的には高いようです。

もう一つ不可解な数値もありました。
これは私の商品なのですが、セグロチョウチョウウオだけが何故かこの時は0.018msと高い数値を示していました。
これは単純にパーティクルを放出するだけです。ただし、放出テクスチャの向きを交互に変えるため、タイマーイベントは使用してますが。。。他の同タイプでは、このような数値は出ていません。その意味では、やはり継続計測をして判断をすべきと考えています。

フリー・ムーブ・タイプの物で言うと、ウミガメやマンタ、サメ等を見ると、0.003~0.005msと記録されています。意外とフリー・ムーブ・タイプは安定しているように見受けます。
それでも、一般的に見れば高負荷スクリプトの部類には入りますので、あまり多用する事はお勧めできません。
適度なご利用をお願いいたします。

以上でーす。
スクリプトのお勉強メモ