Trace tree (original) (raw)
A trace tree is a data structure that is used in the runtime compilation of programming code. Trace trees are used in tracing just-in-time compilation where tracing is used during code execution to look for hot spots before compilation. When those hot spots are entered again the compiled code is run instead. Each statement executed is traced, including within other function calls, and the entire execution path is compiled. This is different from compiling individual functions. More information can be gained allowing better compiler optimizations, including the removal of some function call overhead. The interpreter is called to continue whenever compiled code makes calls to code outside the compilation contexts.
Property | Value |
---|---|
dbo:abstract | Un arbre de traces est une structure de données utilisé pour la compilation à la volée de code source. Les arbres de traces sont utilisés pour tracer (enregistrer dans une trace) le code exécuté sur les points chauds, et le compiler. Quand les point chauds du code sont à nouveau exécutés, le code compilé est exécuté à la place. Toutes les instructions exécutées sont tracées, même à travers les appels de fonctions et c'est le chemin d'exécution complet qui est compilé. Ce qui est bien différent de la compilation d'une seule fonction. Le compilateur peut glaner plus d'informations que l'optimiseur peut mettre à profit pour supprimer le coût superflu que représente les appels de méthodes. Chaque fois que le code compilé fait un appel à du code non encore compilé, l'interpréteur reprend la main pour continuer l'exécution. (fr) A trace tree is a data structure that is used in the runtime compilation of programming code. Trace trees are used in tracing just-in-time compilation where tracing is used during code execution to look for hot spots before compilation. When those hot spots are entered again the compiled code is run instead. Each statement executed is traced, including within other function calls, and the entire execution path is compiled. This is different from compiling individual functions. More information can be gained allowing better compiler optimizations, including the removal of some function call overhead. The interpreter is called to continue whenever compiled code makes calls to code outside the compilation contexts. (en) |
dbo:wikiPageExternalLink | https://web.archive.org/web/20200129165114/http:/www.masonchang.com/blog/2009/1/13/the-difference-between-extended-basic-blocks-and-traces.html http://www.masonchang.com/blog/2009/1/13/the-difference-between-extended-basic-blocks-and-traces.html https://morepypy.blogspot.com/2009/03/applying-tracing-jit-to-interpreter.html https://static.aminer.org/pdf/PDF/000/286/022/profile_driven_generation_of_trace_samples.pdf https://www.hpl.hp.com/techreports/1999/HPL-1999-78.html https://bluishcoder.co.nz/2008/05/20/quick-introduction-to-tamarin-tracing.html |
dbo:wikiPageID | 24924589 (xsd:integer) |
dbo:wikiPageLength | 3110 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1121140852 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:Hot_spot_(computer_programming) dbr:Function_call dbr:Data_structure dbc:Compiler_construction dbc:Trees_(data_structures) dbr:Tracing_(software) dbr:Tracing_just-in-time_compilation dbr:Programming_code dbr:Compiler_optimization |
dbp:wikiPageUsesTemplate | dbt:Citation |
dcterms:subject | dbc:Compiler_construction dbc:Trees_(data_structures) |
gold:hypernym | dbr:Structure |
rdf:type | dbo:Building |
rdfs:comment | A trace tree is a data structure that is used in the runtime compilation of programming code. Trace trees are used in tracing just-in-time compilation where tracing is used during code execution to look for hot spots before compilation. When those hot spots are entered again the compiled code is run instead. Each statement executed is traced, including within other function calls, and the entire execution path is compiled. This is different from compiling individual functions. More information can be gained allowing better compiler optimizations, including the removal of some function call overhead. The interpreter is called to continue whenever compiled code makes calls to code outside the compilation contexts. (en) Un arbre de traces est une structure de données utilisé pour la compilation à la volée de code source. Les arbres de traces sont utilisés pour tracer (enregistrer dans une trace) le code exécuté sur les points chauds, et le compiler. Quand les point chauds du code sont à nouveau exécutés, le code compilé est exécuté à la place. Toutes les instructions exécutées sont tracées, même à travers les appels de fonctions et c'est le chemin d'exécution complet qui est compilé. Ce qui est bien différent de la compilation d'une seule fonction. Le compilateur peut glaner plus d'informations que l'optimiseur peut mettre à profit pour supprimer le coût superflu que représente les appels de méthodes. Chaque fois que le code compilé fait un appel à du code non encore compilé, l'interpréteur reprend la mai (fr) |
rdfs:label | Arbre de traces (fr) Trace tree (en) |
owl:sameAs | freebase:Trace tree wikidata:Trace tree dbpedia-fr:Trace tree https://global.dbpedia.org/id/2f6KY |
prov:wasDerivedFrom | wikipedia-en:Trace_tree?oldid=1121140852&ns=0 |
foaf:isPrimaryTopicOf | wikipedia-en:Trace_tree |
is dbo:wikiPageRedirects of | dbr:Trace_trees |
is dbo:wikiPageWikiLink of | dbr:Trace_trees dbr:Andreas_Gal dbr:SpiderMonkey dbr:Tracing_just-in-time_compilation |
is foaf:primaryTopic of | wikipedia-en:Trace_tree |