2011-09-11 15 views
1

私はバッチベースの複雑なPythonサーバーアプリケーションを持っています。私はこのアプリケーションをできるだけ早く動作させたい。このアプリケーションにはおそらくアプリケーションのパフォーマンスに何らかの影響を与える100の整数定数のようなものがあります。これらは、外部プログラムのメモリ制約を設定するinitial size of a dictionaryのようなものです。Pythonアプリケーションを自動最適化する方法は?

私がしたいのは、オプティマイザプログラムがこれらの100個の整数値を変更し、夜間何千ものテストを実行して、最短時間にどのようなパラメータセットでPythonプログラムが終了するかを調べることです。

このようなことはありますか?私はEXECステートメントと置換関数を使って整数を修正することで、何とかこれを構築できると思います。

答えて

2

各変数の効果が他の変数とは無関係であれば、スクリプトを使用して各変数を順番に最適化することができます。各変数がk個の値を取ることができ、n個の変数がある場合、 (nk)である。変数がお互いのパフォーマンスに与える影響が完全に恣意的な場合は、すべてのO(k^n)割り当てを列挙してテストする必要があります。その中間にいると、アルゴリズムの記述が少し難しくなります。

メカニックについては、どのような構成が意味があるかを理解するとすぐに(上記のように)、例えば、エグゼクティブや時間が働くはずです。ツールが存在していても、無理矢理O(k^n)の解決策を避けるためには、上記に対する答えが必要です。これがあなたができる最高のものであることを認識してください。

+0

+1。変数は独立しています。私はこれが非常に多くのアプリケーションに役立つので、これのためのツールがなければならないと考えています。 – David

関連する問題