2009-06-18 2 views
12

필자는 잠시 IronPython을 사용 해왔다.하지만 실제로 내 개발을 방해하는 것은 이다. 시작하기가 느리다.. 언어와 작업 방식이 마음에 들지만 코드를 실행하기 전에 20 초 이상 기다려야한다는 것은 실망 스럽습니다.IronPython 시작 시간이 너무 느린 이유는 무엇입니까?

나는 파기를 해본 결과 문제가 import ing이 아니지만 그 단계 이전 인 것으로 보입니다.

감사합니다.

+3

그래, 확실히 느립니다. DLR이 .NET 4.0에 완전히 통합 될 때 더 빠른지 여부를 확인하는 것은 흥미로울 것입니다. 희망적으로 –

+0

. 정말 멋진 키트이기 때문에 수치 스럽습니다. .NET 4는 놀라운 것처럼 보입니다. 불행히도 내 20 기가 바이트 하드 드라이브는 VS2010을 수행하는 데 너무 스트레스입니다 :) –

답변

17

우리는 이것을 2.6에서 수정하려고합니다. 오늘 download Beta 1을 사용하면 시작 시간이 훨씬 단축됩니다.

문제는 대부분의 시간이 일반적으로 JITing 코드를 소비한다는 것입니다. 64 비트 컴퓨터가 더 느리므로 특히 64 비트 컴퓨터를 사용하는 경우 발음이 뚜렷합니다. 2.6에서는 컴파일 작업을 처음 수행 할 때까지 컴파일을 지연하고 단 1-2 번만 수행하면 해석하고 런타임에 생성 할 코드를 IronPython.dll로 옮깁니다. ngen의 장점도 있습니다. 앱이 클수록 이러한 모든 변화에서 볼 수있는 개선 효과가 커집니다.

IronPython을 설치할 때 ngen 옵션을 확인하지 않았다면 "ngen install ipy.exe"를 실행하여 명령 줄에서 ngen으로 되돌아 갈 수 있습니다. ngen.exe는 64 비트 시스템 인 경우 C : \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ ngen.exe 또는 C : \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ ngen.exe에 있습니다. 비트 머신. 그러나 관리자 명령 프롬프트 여야합니다. 안정된 버전에서 이점을 얻을 수 있습니다. 64 비트를 사용하는 경우 상자를 선택해도이 작업을 수행해야합니다. 64 비트에서 ngen이 올바르게 작동하지 못하게하는 버그가 있습니다.

+0

2.6에서 오늘 밤 나중에 보겠습니다. 과거에 ngen에 대한 나쁜 경험을했습니다. (TOAD) 설치 중에이 것을 unticked했습니다. 감사. –

+0

이것이 효과가 있다는 소식을 듣고 기쁩니다. 나는 철저하게 IronPython을 사용하고 그것이 내 # 1 문제입니다. – riwalk

관련 문제