2008年12月23日

mathライブラリは遅い?

可能な限りAIの人が昔そう語っていたのを思い出しました。
それについて実際に検証していきます。

math.absを例に取り上げると:

math.absはmath["abs"]と同等。
mathは関数型の数学関数テーブルです。

print(math["abs"](-1))
--> 1

abs = math.abs
print(abs(-1))
--> 1

テーブルのキーから引くのが遅いだけで、テーブルを経由せずに直接指定すると
逆に高速なことが分かります。

※Luaのソースコードを見たらmath.absはC言語のfabs()を直接呼び出しています。

実行例:
http://subtech.g.hatena.ne.jp/cho45/20070512/1178908536

posted by silica at 17:19| Comment(0) | TrackBack(0) | ホムンクルス | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:


この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。