2011-09-11 4 views
1

배치 기반의 복잡한 Python 서버 응용 프로그램이 있습니다. 나는이 응용 프로그램이 가능한 빨리 작동되기를 바랍니다. 이 응용 프로그램에는 아마도 응용 프로그램의 성능에 영향을주는 정수 상수 100 개가있을 것입니다. 이것들은 외부 프로그램의 메모리 제약을 설정하는 initial size of a dictionary과 같은 것일 수 있습니다.파이썬 응용 프로그램을 자동 최적화하는 방법은 무엇입니까?

최적화 프로그램이 100 개의 정수 값을 수정하고 밤에 수천 개의 테스트를 실행하고 가장 짧은 시간에 어떤 종류의 매개 변수가 파이썬 프로그램을 마칠 수 있는지 알아 내려고합니다.

그런 것이 있습니까? EXEC 명령문과 replace 함수를 사용하여 정수를 수정할 수 있다고 생각합니다.

답변

2

각 변수의 효과가 다른 변수와 독립적 인 경우 스크립트를 사용하여 각 변수를 차례로 최적화 할 수 있습니다. 각 변수가 k 개의 값을 가질 수 있고 n 개의 변수가있는 경우 O (nk)이다. 변수가 서로의 성능에 미치는 영향이 완전히 임의적 인 경우 모든 O (k^n) 할당을 열거하고 테스트해야합니다. 그 중간에 있으면 알고리즘을 좀더 세밀하게 묘사합니다.

메커니즘과 관련하여 (위와 같이) 어떤 구성이 의미가 있는지 파악하자마자, 예를 들어 다음을 사용하는 간단한 스크립트/프로그램이 필요합니다. 간부 또는 시간이 효과가 있습니다. 도구가 존재했다하더라도, 당신은 여전히 ​​짐승의 힘을 피하기 위해 위의 것에 대한 해답이 필요하다. (k^n) ... 아니면 이것이 당신이 할 수있는 최선이라는 것을 인식하라.

+0

+1. 변수는 독립적입니다. 나는 많은 도구들이 유용 할 것이기 때문에 이것을위한 도구가 있어야한다고 생각하고있다. – David

관련 문제