파이썬(Python) 속도 최적화 기법
파이썬 코드의 속도를 올리는 방법에는 수많은 트릭들이 존재한다. 그러한 부분은 C로만 작성하는 것을 고려하기도 한다.
한가지 알아둘 것은 함수와 메소드 호출은 다소 힘이 든다. 만일 순수하게 인터페이스를 인스턴스 변수들을 가져오는 것으로 설정하거나 다른 메소드를 호출하지 않는 수많은 작은 함수들로 디자인했다면 좀더 직접적인 방법 즉, 인스턴스 변수들로의 직접 접근 사용을 고려해볼 수 있을 것이다.
표준 파이썬 모듈 프로파일을 보면 프로그램에서 어느 부분이 시간을 가장 많이 소비하는지 찾아낼 수 있다. 한가지 기억해야 할 점은 다른 프로그래밍 경험에서 얻은 수많은 표준 최적화 방법들은 파이썬에서도 잘 적용된다는 것이다.
예를 들어 커널 시스템 호출의 과부하를 피하기 위해 출력을 조금씩 사용하는 것보다 많은 양을 사용하는 것이 빠르다. 그러므로 모든 출력을 한번에 기록하는 CGI 스크립트는 출력을 수많은 작은 조각들로 기록하는 것보다 확실한 속도 향상을 가져올 것이다.
한가지 알아둘 것은 함수와 메소드 호출은 다소 힘이 든다. 만일 순수하게 인터페이스를 인스턴스 변수들을 가져오는 것으로 설정하거나 다른 메소드를 호출하지 않는 수많은 작은 함수들로 디자인했다면 좀더 직접적인 방법 즉, 인스턴스 변수들로의 직접 접근 사용을 고려해볼 수 있을 것이다.
표준 파이썬 모듈 프로파일을 보면 프로그램에서 어느 부분이 시간을 가장 많이 소비하는지 찾아낼 수 있다. 한가지 기억해야 할 점은 다른 프로그래밍 경험에서 얻은 수많은 표준 최적화 방법들은 파이썬에서도 잘 적용된다는 것이다.
예를 들어 커널 시스템 호출의 과부하를 피하기 위해 출력을 조금씩 사용하는 것보다 많은 양을 사용하는 것이 빠르다. 그러므로 모든 출력을 한번에 기록하는 CGI 스크립트는 출력을 수많은 작은 조각들로 기록하는 것보다 확실한 속도 향상을 가져올 것이다.