Java를 사용하여 알고리즘 구현을 작성 중입니다. OS X 10.7이 될 때까지 Shark Profiler를 사용하여 구현을 프로파일 링했습니다. 그러나 새로운 Instruments는 더 이상 프로 시저 이름을 찾지 않습니다. 나는 이미 상어 (즉, -agentlib : Shark)를위한 VM 인수를 사용하여 Java 애플리케이션을 실행하려고 시도했지만, 이들은 10.7에 알려지지 않았기 때문에 인스트루먼트를위한 agentlib를 찾을 수 없었다.Time Profiler, Instruments, OS X에서 JAVA 프로 시저 이름이 누락되었습니다.
Insturments에서 기호 이름 (16 진수 숫자)에 프로 시저 이름을 붙일 수있는 방법에 대한 아이디어가 있습니까? 차이가 있다면 Eclipse Indigo를 사용하고 있습니다.
감사합니다.
편집 : 지금까지 OS X Mountain Lion에서는 아무 것도 변경되지 않았습니다.
는 는편집 # 2 : (?) 애플의 버그 리포터를 통해 개발자로부터 업데이트 : Java 용
DTrace를 갖고 지원, 과거 지점에서 스택은 솔직히 지원 여부를 말할 수 있지만 유지되었습니다. 현재 측정 도구의 우선 순위가 아닌 측정하려는 항목에 대해 실용적인 해결 방법이 될 수 있습니다. /usr/bin/cpu_profiler.d에있는 D 스크립트로 시작하여 jstack을 수집하도록 수정할 수도 있습니다.
편집 # 3 : 좋아, 더 많은 토론을 마친 후에 개발자가 스크립트의 출처를 알 수 없다는 것이 밝혀졌습니다. Apparatus에서는 Instrument의 time profiler가 DTrace를 사용하지 않기 때문에 유일한 옵션은 자체 DTrace 스크립트 또는 악기를 작성하는 것입니다.
네가 맞아, 사과 하네. 그 스크립트가 어디서 왔는지 나는 잘 모르겠다. 신중하게 살펴 보았을 때, 그 안에 덩어리 액션이 없기 때문에 어쨌든 네가 원하는 것은 아니다. DTrace를 제공 할 수있는 유일한 Java 프로파일 링 옵션처럼 보입니다. DTrace에는 프로필 공급자와 Java 스택을 수집하는 jstack 작업이 있습니다. "aggregates"를 사용하여 가장 큰 스택 트레이스를 결정할 수 있으며이 모든 것은 명령 행에서 작동합니다. DTrace에 관한 문서는 대부분 Sun에서 관리하고 있으며, 대부분 DTrace 튜토리얼로 안내 할 것입니다. 대부분 DTrace 튜토리얼이 프로필 공급자를 다루고 있기 때문입니다.
사람들이 온라인에 말하는 것과는 달리, Instruments는 모든 것, 특히 시간 프로파일 링에 DTrace를 사용하지 않으므로 Instruments UI에서 신속한 해결책을 제공 할 수는 없습니다.
좋아, 고마워. 버그가 꽤 오랫동안 있었지만 곧 해결 될 수 있기를 바랍니다. 나는 버그 보고서를 제출할 것이다. – HdM
그럼, 다음을 읽는 개발자로부터 업데이트가 있습니다 : "dtrace는 지원 시점이 정직하지 못했지만 과거 시점에서 Java 스택을 지원했습니다. 가능한 해결 방법이 될 수 있습니다. 현재 측정 도구의 우선 순위가 아닌 측정하려는 항목입니다. /usr/bin/cpu_profiler.d에있는 D 스크립트로 시작하여 jstack을 수집하도록 수정할 수도 있습니다 . " – HdM
나는 일하는 것이 무엇인지 알기에 매우 흥미가 있습니다. –