Filters








149,266 Hits in 7.8 sec

Trace-based just-in-time type specialization for dynamic languages

Andreas Gal, Jason Orendorff, Jesse Ruderman, Edwin W. Smith, Rick Reitmaier, Michael Bebenita, Mason Chang, Michael Franz, Brendan Eich, Mike Shaver, David Anderson, David Mandelin (+4 others)
2009 Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation - PLDI '09  
We present an alternative compilation technique for dynamically-typed languages that identifies frequently executed loop traces at run-time and then generates machine code on the fly that is specialized  ...  Dynamic languages such as JavaScript are more difficult to compile than statically typed ones.  ...  Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright annotation thereon.  ... 
doi:10.1145/1542476.1542528 dblp:conf/pldi/GalESAMHKHZORSRBCF09 fatcat:sti5ia76ofhddg25y7unljljsu

Trace-based just-in-time type specialization for dynamic languages

Andreas Gal, Jason Orendorff, Jesse Ruderman, Edwin W. Smith, Rick Reitmaier, Michael Bebenita, Mason Chang, Michael Franz, Brendan Eich, Mike Shaver, David Anderson, David Mandelin (+4 others)
2009 SIGPLAN notices  
We present an alternative compilation technique for dynamically-typed languages that identifies frequently executed loop traces at run-time and then generates machine code on the fly that is specialized  ...  Dynamic languages such as JavaScript are more difficult to compile than statically typed ones.  ...  Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright annotation thereon.  ... 
doi:10.1145/1543135.1542528 fatcat:nvdnuqh6bzbobl4mnhu7dcbhxa

Just-in-time Length Specialization of Dynamic Vector Code

Justin Talbot, Zachary DeVito, Pat Hanrahan
2014 Proceedings of ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming - ARRAY'14  
In this paper, we describe a tracebased just-in-time compilation strategy that performs partial length specialization of dynamically typed vector code.  ...  We have implemented our approach in a virtual machine for a subset of R, a vector-based statistical computing language.  ...  We address these problems with a trace-based just-in-time compilation strategy combined with partial length specialization.  ... 
doi:10.1145/2627373.2627377 dblp:conf/pldi/TalbotDH14 fatcat:4dptcjw7djhadlilnxc3mo3hnm

Truffle

Christian Wimmer, Thomas Würthinger
2012 Proceedings of the 3rd annual conference on Systems, programming, and applications: software for humanity - SPLASH '12  
We present Truffle, a novel framework for implementing managed languages in Java TM .  ...  The partial evaluation is done by Graal, the just-in-time compiler of our Java VM (a variation of the Java HotSpot VM).  ...  We would also like to thank all members of the Virtual Machine Research Group at Oracle Labs for their support and contributions.  ... 
doi:10.1145/2384716.2384723 dblp:conf/oopsla/WimmerW12 fatcat:dhjykwoudbgxljku7yylrts2r4

Tracing for web 3.0

Mason Chang, Edwin Smith, Rick Reitmaier, Michael Bebenita, Andreas Gal, Christian Wimmer, Brendan Eich, Michael Franz
2009 Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments - VEE '09  
While traditional just-in-time compilation is successful for statically typed virtual machine based languages like Java, compiling JavaScript turns out to be a challenging task.  ...  We present a trace-based just-in-time compiler for JavaScript that uses run-time profiling to identify frequently executed code paths, which are compiled to executable machine code.  ...  Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright annotation thereon.  ... 
doi:10.1145/1508293.1508304 dblp:conf/vee/ChangSRBGWEF09 fatcat:amcavgcb5vghbib3kt225mukve

SPUR

Michael Bebenita, Florian Brandner, Manuel Fahndrich, Francesco Logozzo, Wolfram Schulte, Nikolai Tillmann, Herman Venter
2010 Proceedings of the ACM international conference on Object oriented programming systems languages and applications - OOPSLA '10  
Tracing just-in-time compilers (TJITs) determine frequently executed traces (hot paths and loops) in running programs and focus their optimization effort by emitting optimized machine code specialized  ...  Prior work has established this strategy to be especially beneficial for dynamic languages such as JavaScript, where the TJIT interfaces with the interpreter and produces machine code from the JavaScript  ...  As a result, our TJIT does not depend on any JavaScript semantics but still specializes the dynamic behavior of the CIL code just as a TJIT working at the source language level would.  ... 
doi:10.1145/1869459.1869517 dblp:conf/oopsla/BebenitaBFLSTV10 fatcat:y6ka3szwmjealaiol6q6xbzfqq

SPUR

Michael Bebenita, Florian Brandner, Manuel Fahndrich, Francesco Logozzo, Wolfram Schulte, Nikolai Tillmann, Herman Venter
2010 SIGPLAN notices  
Tracing just-in-time compilers (TJITs) determine frequently executed traces (hot paths and loops) in running programs and focus their optimization effort by emitting optimized machine code specialized  ...  Prior work has established this strategy to be especially beneficial for dynamic languages such as JavaScript, where the TJIT interfaces with the interpreter and produces machine code from the JavaScript  ...  As a result, our TJIT does not depend on any JavaScript semantics but still specializes the dynamic behavior of the CIL code just as a TJIT working at the source language level would.  ... 
doi:10.1145/1932682.1869517 fatcat:hmdyygl23bb3vl4lcqtgfhapgm

Later Binding: Just-in-Time Compilation of a Younger Dynamic Programming Language

Max Rottenkolber
2020 European Lisp Symposium  
By using a technique known as tracing just-in-time compilation LuaJIT is able to evaluate high-level language features with great efficiency.  ...  In presenting the implementation's design we consider its strengths and weaknesses. Finally, we propose future directions for dynamic language implementations that wish to leverage this technique.  ...  [Gal and Franz 2006] Double-precision floating point numbers have become a popular base type for numbers in dynamic programming languages.  ... 
doi:10.5281/zenodo.3743225 dblp:conf/els/Rottenkolber20 fatcat:opk6yid3ijhstaimhyiiiyulbm

Tracing vs. partial evaluation: comparing meta-compilation approaches for self-optimizing interpreters

Stefan Marr, Stéphane Ducasse
2015 Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications - OOPSLA 2015  
dynamically-typed language.  ...  Tracing and partial evaluation have been proposed as metacompilation techniques for interpreters to make just-in-time compilation language-independent.  ...  Their help was essential for enabling the SOM implementations to perform efficiently in the first place. We would further like to thank E. Barrett, C. F. Bolz, T. D'Hondt, L.  ... 
doi:10.1145/2814270.2814275 dblp:conf/oopsla/MarrD15 fatcat:xujdfbthvbbutco5ev7a36ooz4

Tracing vs. partial evaluation: comparing meta-compilation approaches for self-optimizing interpreters

Stefan Marr, Stéphane Ducasse
2015 SIGPLAN notices  
dynamically-typed language.  ...  Tracing and partial evaluation have been proposed as metacompilation techniques for interpreters to make just-in-time compilation language-independent.  ...  Their help was essential for enabling the SOM implementations to perform efficiently in the first place. We would further like to thank E. Barrett, C. F. Bolz, T. D'Hondt, L.  ... 
doi:10.1145/2858965.2814275 fatcat:sjcnfyowojbw3nae7izxxkfazm

Alias analysis for optimization of dynamic languages

Michael Gorbovitski, Yanhong A. Liu, Scott D. Stoller, Tom Rothamel, Tuncay K. Tekle
2010 Proceedings of the 6th symposium on Dynamic languages - DLS '10  
This paper describes the development and experimental evaluation of a may-alias analysis for a full dynamic objectoriented language, for program optimization by incrementalization and specialization.  ...  Effective incrementalization and specialization of dynamic languages require precise and scalable alias analysis.  ...  Psyco (Rigo 2004 ) is a specializing just-in-time compiler for Python. At startup, it compiles all the bytecode it can to machine code.  ... 
doi:10.1145/1869631.1869635 dblp:conf/dls/GorbovitskiLSRT10 fatcat:wn2qlurqgbbrvmtpvfht4qmoyq

Alias analysis for optimization of dynamic languages

Michael Gorbovitski, Yanhong A. Liu, Scott D. Stoller, Tom Rothamel, Tuncay K. Tekle
2010 SIGPLAN notices  
This paper describes the development and experimental evaluation of a may-alias analysis for a full dynamic objectoriented language, for program optimization by incrementalization and specialization.  ...  Effective incrementalization and specialization of dynamic languages require precise and scalable alias analysis.  ...  Psyco (Rigo 2004 ) is a specializing just-in-time compiler for Python. At startup, it compiles all the bytecode it can to machine code.  ... 
doi:10.1145/1899661.1869635 fatcat:inx6qiujbfh65cx544xpl3oy44

Interprocedural Type Specialization of JavaScript Programs Without Type Analysis [article]

Maxime Chevalier-Boisvert, Marc Feeley
2015 arXiv   pre-print
Dynamically typed programming languages such as Python and JavaScript defer type checking to run time. VM implementations can improve performance by eliminating redundant dynamic type checks.  ...  We also show that our implementation is able to outperform Truffle/JS on several benchmarks, both in terms of execution time and compilation time.  ...  The work of Chevalier-Boisvert et al. on Just-in-time specialization for MATLAB [13] and similar work done for the MaJIC MATLAB compiler [2] tries to capture argument types to dynamically compile optimized  ... 
arXiv:1511.02956v1 fatcat:i66qaeqxqrg3xp2htnwevimrya

Simple and Effective Type Check Removal through Lazy Basic Block Versioning [article]

Maxime Chevalier-Boisvert, Marc Feeley
2015 arXiv   pre-print
Dynamically typed programming languages such as JavaScript and Python defer type checking to run time.  ...  In order to maximize performance, dynamic language VM implementations must attempt to eliminate redundant dynamic type checks.  ...  This work was supported, in part, by the Natural Sciences and Engineering Research Council of Canada (NSERC) and Mozilla Corporation.  ... 
arXiv:1411.0352v2 fatcat:zjbs2hjjrngf3lpmpc2xgcny4m

Riposte

Justin Talbot, Zachary DeVito, Pat Hanrahan
2012 Proceedings of the 21st international conference on Parallel architectures and compilation techniques - PACT '12  
At the same time, high-level, dynamically typed languages for data analysis have become popular.  ...  In this paper, we describe Riposte, a new runtime for the R language, which bridges this gap.  ...  This work maintains the original semantics of the dynamic language, but achieves good performance through runtime type specialization and just-in-time compilation.  ... 
doi:10.1145/2370816.2370825 dblp:conf/IEEEpact/TalbotDH12 fatcat:cspi7rfjwfdxdmd57zlkcpbt2q
« Previous Showing results 1 — 15 out of 149,266 results