fill_rectとbltはどっちが速いのか?
昨日久しぶりにノートパソコンでツクール動かした。そしたらなんかめっさ重い。
比較的性能のいいデスクトップだとさくさく進むけど、ノートだとこんなに重くなるとは……。スクリプトを無茶苦茶に書いたのが原因なのはわかるけど……。
ということで少し「速さ」というのにもこだわってみる事にしました。
基本は描画関係。
とりあえず処理を10000回回して速度をはかります。ばらつきがあるので50000回回して5で割ってみました。スクリプトはかなり適当。一応使ったスクリプトを続きのとこに載せておきます。
Timeで時間引っ張ってその差を求めただけです。単位は秒です。
スペルがアレだがそのあたりは大目に見るのが大人ってものだ。
結果。(20 x 20)
|
処理 |
1回目 |
2回目 |
3回目 |
|
fill_rect |
0.0272 |
0.0202 |
0.0278 |
|
blt |
0.06 |
0.0618 |
0.0474 |
|
gradient_fill_rect |
0.0732 |
0.08 |
0.0964 |
|
draw_text |
0.9118 |
0.9118 |
0.9252 |
サイズを変えてもう一回(128 x 128)
draw_textはサイズあまり関係ないので計測せず
|
処理 |
1回目 |
2回目 |
3回目 |
|
fill_rect |
0.0792 |
0.1026 |
0.0908 |
|
blt |
0.8102 |
0.8257 |
0.8078 |
|
gradient_fill_rect |
1.8556 |
1.8674 |
1.87 |
つまり、
fill_rect > blt > gradient_fill_rect
となりました。
何かの参考にでもナレバ
ちなみに使った処理は「続き」から ↓
結構下なの気をつけて orz
PR