«jit» 태그된 질문

JIT (Just-In-Time Compilation)는 해석 된 코드를 기계어 코드로 변환하여 성능을 향상시키는 데 사용되는 기술입니다.


12
PyPy가 6.3 배 더 빠르면 CPython보다 PyPy를 사용해야하는 이유는 무엇입니까?
PyPy 프로젝트 에 대해 많이 들었습니다 . 그들은 사이트 의 CPython 인터프리터 보다 6.3 배 빠르다고 주장했다 . 파이썬과 같은 동적 언어에 대해 이야기 할 때마다 속도가 가장 큰 문제 중 하나입니다. 이를 해결하기 위해 PyPy가 6.3 배 빠릅니다. 두 번째 문제는 악명 높은 GIL ( Global Interpreter Lock) 이라는 …


2
JDK 코드를 실행할 때 Java JIT가 부정 행위를합니까?
나는 일부 코드를 벤치마킹하고 있었고 java.math.BigInteger정확히 동일한 알고리즘을 사용할 때조차 와 같이 빨리 실행할 수 없었습니다 . 그래서 java.math.BigInteger소스를 내 패키지에 복사 하고 다음을 시도했습니다. //import java.math.BigInteger; public class MultiplyTest { public static void main(String[] args) { Random r = new Random(1); long tm = 0, count = 0,result=0; for …
405 java  jvm  jit  jvm-hotspot 

3
.NET JIT 잠재적 오류?
다음 코드는 Visual Studio에서 릴리스를 실행하고 Visual Studio 외부에서 릴리스를 실행할 때 다른 출력을 제공합니다. Visual Studio 2008을 사용하고 .NET 3.5를 대상으로합니다. .NET 3.5 SP1도 시도했습니다. Visual Studio 외부에서 실행할 때 JIT가 시작됩니다. (a) C #과 관련하여 미묘한 부분이 있거나 (b) JIT에 실제로 오류가 있습니다. 나는 JIT가 잘못 될 수 …
404 c#  jit 

5
JVM이 JIT 컴파일 된 코드를 캐시하지 않는 이유는 무엇입니까?
Sun의 표준 JVM 구현은 코드가 몇 번 실행 된 후 거의 네이티브 실행 속도를 얻기 위해 바이트 코드에 매우 정교한 최적화를 적용합니다. 문제는 왜이 컴파일 된 코드가 동일한 함수 / 클래스의 후속 사용 중에 사용하기 위해 디스크에 캐시되지 않는 것입니까? 현재로서는 프로그램이 실행될 때마다 JIT 컴파일러가 미리 컴파일 된 코드 …
107 java  caching  jvm  compilation  jit 

8
JVM의 JIT 컴파일러가 벡터화 된 부동 소수점 명령어를 사용하는 코드를 생성합니까?
내 Java 프로그램의 병목 현상이 실제로 많은 벡터 내적을 계산하기위한 타이트한 루프라고 가정 해 보겠습니다. 예, 프로필을 작성했습니다. 예, 병목 현상입니다. 예, 중요합니다. 예, 알고리즘이 그렇습니다. 예, 바이트 코드를 최적화하기 위해 Proguard를 실행했습니다. 작업은 본질적으로 내적입니다. 에서와 같이 두 개가 float[50]있고 쌍을 이루는 곱의 합을 계산해야합니다. SSE 또는 MMX와 ​​같이 …

4
루프 반전 기술이란 무엇입니까?
Java 용 JIT (Just -In-Time Compiler ) 최적화 기술에 대해 설명하는 문서를 살펴 보았습니다. 그중 하나는 "루프 반전"이었습니다. 그리고 문서에 따르면 : 일반 while루프를 루프로 do-while바꿉니다. 그리고 do-while루프는 if절 내에서 설정됩니다 . 이 교체는 두 번 더 적은 점프로 이어집니다. 루프 반전은 어떻게 작동하며 코드 경로를 어떻게 최적화합니까? NB : …

5
C # JIT 컴파일 및 .NET
JIT 컴파일러가 어떻게 작동하는지에 대한 세부 사항에 대해 약간 혼란 스러웠습니다. C #이 IL로 컴파일된다는 것을 알고 있습니다. 처음 실행하면 JIT입니다. 이것이 네이티브 코드로 번역되는 것을 포함합니까? .NET 런타임 (가상 머신)이 JIT 코드와 상호 작용합니까? 나는 이것이 순진하다는 것을 알고 있지만 나는 정말로 혼란스러워했습니다. 내 인상은 항상 어셈블리가 .NET 런타임에 …
87 c#  jit 


8
연산자가 메서드 호출보다 훨씬 느린 이유는 무엇입니까? (구조는 이전 JIT에서만 느립니다)
소개 : C #으로 고성능 코드를 작성합니다. 예, C ++가 더 나은 최적화를 제공한다는 것을 알고 있지만 여전히 C #을 사용하기로 선택합니다. 나는 그 선택에 대해 토론하고 싶지 않습니다. 오히려 저와 같은 .NET Framework에서 고성능 코드를 작성하려는 사람들의 의견을 듣고 싶습니다. 질문 : 아래 코드의 연산자가 동등한 메서드 호출보다 느린 …


3
출력 -1은 루프에서 슬래시가됩니다
놀랍게도 다음 코드가 출력됩니다. / -1 코드: public class LoopOutPut { public static void main(String[] args) { LoopOutPut loopOutPut = new LoopOutPut(); for (int i = 0; i < 30000; i++) { loopOutPut.test(); } } public void test() { int i = 8; while ((i -= 3) > 0) ; …
54 java  string  while-loop  jvm  jit 

2
Java : 수동 풀린 루프가 여전히 원래 루프보다 빠릅니다. 왜?
길이 2의 배열에서 다음 두 코드 조각을 고려하십시오. boolean isOK(int i) { for (int j = 0; j < filters.length; ++j) { if (!filters[j].isOK(i)) { return false; } } return true; } 과 boolean isOK(int i) { return filters[0].isOK(i) && filters[1].isOK(i); } 충분한 예열 후에이 두 조각의 성능이 비슷해야한다고 가정합니다. …

1
최적화되지 않은 상태에서 고성능 Javascript 코드 작성
큰 숫자 배열 (정수 또는 부동 소수점 숫자에서 작동하는 선형 대수 패키지 생각)에서 작동하는 Javascript로 성능에 민감한 코드를 작성할 때 항상 JIT가 최대한 많은 도움을주기를 원합니다. 대략 이것은 다음을 의미합니다. 정수 또는 부동 소수점 계산을 수행하는지에 따라 항상 배열을 압축 된 SMI (작은 정수) 또는 압축 된 복식으로 만들고자합니다. 우리는 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.