필자는 우리가 한 강의에서 사용하는 일부 파일 형식 (ARFF)에 대한 직접적인 재귀 순수 파이썬 파서를 작성했습니다. 지금 내 운동 제출을 실행하는 것은 너무 느립니다. 필자의 파서에서 가장 많은 시간을 보냈다. CPU 사용 시간이 많이 걸리며 HD는 병목 현상이 아닙니다.파이썬에서 빠른 파서 작성하기
파이썬에서 파서를 작성하는 데 어떤 뛰어난 방법이 있는지 궁금합니다. 차라리 C로 다시 작성하지 않을 것입니다. 자이 썬을 사용하려고했지만 성능이 많이 떨어졌습니다! 내가 파싱 한 파일은 부분적으로 거대한 (> 150 MB) 매우 긴 줄이 있습니다.
내 현재 구문 분석기는 한 문자 만 미리보기하면됩니다. 나는 여기에 근원을 게시 하겠지만 그것이 좋은 생각인지는 모르겠다. 결국 제출 기한이 아직 끝나지 않았습니다. 그러나이 연습의 초점은 파서가 아닙니다. 사용할 언어를 선택할 수 있으며 이미 Java 용 파서가 있습니다.
참고 : x86_64 시스템을 사용하고 있으므로 psyco (PyPy라고도 함) 옵션이 없습니다.
업데이트 : 이제 파서/작성기를 bitbucket에 업로드했습니다.
파서를 프로파일 링 했습니까? 기회는 모든 것을 담고있는 병목 일뿐입니다. –
코드 예없이 괜찮은 조언을하는 것은 불가능합니다. 하나의 큰 결함이있는 건전한 기술을 사용하거나 전체 접근법을 다시 만들어야 할 수도 있습니다. 우리는 알 방법이 없습니다. – mikerobi
psyco를 사용해 보셨습니까? –