Als «jit» getaggte Fragen

Die JIT (Just-in-Time-Kompilierung) ist eine Methode zur Verbesserung der Laufzeitleistung von Computerprogrammen basierend auf Bytecode (Code der virtuellen Maschine).

1
Die Unterschiede verstehen: traditioneller Interpreter, JIT-Compiler, JIT-Interpreter und AOT-Compiler
Ich versuche die Unterschiede zwischen einem traditionellen Interpreter, einem JIT-Compiler, einem JIT-Interpreter und einem AOT-Compiler zu verstehen. Ein Interpreter ist lediglich eine Maschine (virtuell oder physisch), die Anweisungen in einer bestimmten Computersprache ausführt. In diesem Sinne ist die JVM ein Interpreter und physikalische CPUs sind Interpreter. Zeitnahes Kompilieren bedeutet einfach, …


4
JIT-Compiler für C, C ++ und dergleichen
Gibt es einen Just-in-Time-Compiler für kompilierte Sprachen wie C und C ++? (Die ersten Namen, die mir in den Sinn kommen, sind Clang und LLVM! Aber ich glaube nicht, dass sie es derzeit unterstützen.) Erläuterung: Ich denke, die Software könnte von Feedback zur Laufzeitprofilerstellung und einer aggressiv optimierten Neukompilierung von …

4
Warum dauert es nach jedem Neustart einige Zeit, bis meine lokalen .NET-Sites zum ersten Mal geladen sind? [geschlossen]
Ich entwickle Websites auf Basis der .NET-Plattform. Normalerweise stelle ich diese Sites auf meinem lokalen IIS bereit, damit ich sie testen und ihre Funktionalität überprüfen kann, bevor sie live geschaltet werden. Bei jedem Neustart von Windows scheint es jedoch sehr lange zu dauern, bis Websites zum ersten Mal ausgeführt werden. …
27 .net  asp.net  performance  iis  jit 

4
Wie funktioniert Chrome V8? Und warum wurde JavaScript überhaupt nicht JIT-kompiliert?
Ich habe nach Dolmetschern / Compilern gesucht und bin dann auf JIT-Compilation gestoßen - speziell auf die V8 Javascript Engine von Google Chrome. Meine Fragen sind - Wie kann es schneller sein als die Standardinterpretation? Warum wurde JIT-Compilation überhaupt nicht verwendet? Mein aktuelles Verständnis Jedes Javascript-Programm startet als Quellcode und …

1
In welchem ​​Verhältnis stehen Meta-Circular-Interpreter, virtuelle Maschinen und Leistungssteigerung?
Ich habe im Internet über Meta-Circular-Interpreter (einschließlich SICP) gelesen und mich mit dem Code einiger Implementierungen (wie PyPy und Narcissus) befasst. Ich habe ziemlich viel über zwei Sprachen gelesen, die sich der metazirkulären Auswertung bedienten, Lisp und Smalltalk. Soweit ich verstanden habe, war Lisp der erste selbsthostende Compiler und Smalltalk …

3
Warum wurde Python nicht wie moderne Javascript-Implementierungen optimiert?
Moderne Javascript-Implementierungen wie V8 (Chrome), SpiderMonkey (Firefox) und Chakra (IE / Edge) verfügen alle über eine JIT-Kompilierung und eine Reihe weiterer Optimierungen zur Verbesserung der Leistung. Warum hat Python diese nicht? Ich habe mir PyPy und IronPython angesehen, die beide Geschwindigkeitsgewinne beanspruchen. PyPy Ich verstehe nicht, wie eine in Python, …
11 python-3.x  jit 

1
Maschinencode-JITs und das Execution Disable-Bit
Wie wird zur Laufzeit generierter Maschinencode (z. B. die Ausgabe einer JIT) tatsächlich von der CPU ausgeführt, wenn die CPU / das Betriebssystem über ein Ausführungssperrbit verfügt? Soweit ich weiß, unterstützen viele moderne Prozessoren und Betriebssysteme ein NX-Bit (einschließlich Intel und ARM), das verhindert, dass Maschinencode ausgeführt wird, der an …
10 machine-code  jit  llvm 


2
Optimiert die aktuelle JIT generierte Maschinencodes für die Verzweigungsvorhersage basierend auf Laufzeitstatistiken?
Einige JVMs kompilieren Java-Bytecode in nativen Maschinencode. Wir wissen, dass wir dafür viele Optimierungen anwenden können. Kürzlich habe ich auch erfahren, dass eine Verzweigungsoperation die CPU blockieren und die Leistung erheblich beeinträchtigen kann, wenn eine CPU eine falsche Vorhersage macht. Weiß jemand, ob eine JVM Maschinencodes für die CPU einfacher …
8 java  jvm  jit 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.