haskell을 사용하여 로그 파일을 분석하는 응용 프로그램을 작성했습니다. 동일한 로그 파일로 실행하면 때로는 30 초가 걸리고 때로는 20 초가 걸리므로 실행 시간이 최대 10 초 차이가납니다.같은 haskell 응용 프로그램을 실행하면 diff 시간이 걸립니다.
왜 러닝 타임에 큰 차이가 있습니까?
haskell을 사용하여 로그 파일을 분석하는 응용 프로그램을 작성했습니다. 동일한 로그 파일로 실행하면 때로는 30 초가 걸리고 때로는 20 초가 걸리므로 실행 시간이 최대 10 초 차이가납니다.같은 haskell 응용 프로그램을 실행하면 diff 시간이 걸립니다.
왜 러닝 타임에 큰 차이가 있습니까?
차이점은 시스템에서 동시에 실행중인 다른 프로세스 때문일 가능성이 큽니다.
처리 시간과 파일 액세스 시간을 분리 해보십시오.
전체 파일을 메모리로 읽어 들이고 그 시간을 추적 한 다음 저장소 strucutres에서 데이터를 처리하고 해당 시간을 별도로 추적합니다.
내 직감은 파일 액세스가 임의의 contriubtor라는 것입니다. 직감은 프로파일 러를 대체 할 수있는 좋은 방법이 아닙니다.
하지만 동일한 기능을 파이썬 언어로 구현 한 다음 파이썬 스크립트를 실행하면 거의 같은 시간에 20 초 정도를 보냈습니다 – yjfuk
몇 번이나 테스트 해 보았습니까? 어쩌면 파이썬 하나는 같은 방식으로 변화하지만,보기에 충분한 시간 동안 실행하지 않았습니까? – Herms
여러 번 시도했지만 결과는 같았습니다. – yjfuk