[Pl-seminar] 12/08: Maxime Chevalier-Boisvert, Lazy, Incremental JIT Compilation with Basic Block Versioning

Vincent St-Amour stamourv at ccs.neu.edu
Sun Dec 7 15:05:15 EST 2014


Reminder: Maxime is speaking tomorrow.


At Fri, 05 Dec 2014 16:52:48 -0500,
Vincent St-Amour wrote:
> 
> Reminder: Maxime is speaking on Monday.
> 
> 
> At Tue, 25 Nov 2014 16:39:20 -0500,
> Vincent St-Amour wrote:
> > 
> > NUPRL Seminar presents
> > 
> > Maxime Chevalier-Boisvert
> > Université de Montréal
> > 
> > 2:30 - 4:00 (non-standard time)
> > Monday, 12/08 (non-standard day)
> > Room 366 WVH (http://www.ccs.neu.edu/home/wand/directions.html)
> > 
> > 
> > Lazy, Incremental JIT Compilation with Basic Block Versioning
> > 
> > Abstract:
> > Dynamically typed programming languages such as JavaScript, Python,
> > MATLAB and R are notoriously difficult to analyze and optimize. The need
> > for high performance implementations has led to the design of
> > increasingly complex JIT compilers. Mozilla's SpiderMonkey JavaScript
> > VM, for instance, employs type feedback, hybrid interprocedural type
> > analysis and on-stack replacement in a three-tiered architecture.
> > 
> > We introduce a novel JIT compiler architecture in which compilation is
> > performed lazily and incrementally, one basic block at a time. Our
> > design employs basic block versioning, an optimization technique which
> > type-specializes machine code as it is generated. This technique has
> > been implemented and tested in Higgs, an experimental JIT compiler for
> > JavaScript. We show that a majority of dynamic type tests can be
> > eliminated and execution times improved without using on-stack
> > replacement and without requiring a separate analysis pass.
> > 
> > This talk also introduces research currently in progress: a technique
> > which we refer to as "typed shapes", which enables basic block
> > versioning to efficiently specialize code based on object types and
> > shapes. We conclude with future work and the many interesting
> > possibilities offered by a compiler architecture based on basic block
> > versioning, such as the idea of performing function inlining
> > incrementally.
> > 
> > _______________________________________________
> > pl-seminar mailing list
> > pl-seminar at lists.ccs.neu.edu
> > https://lists.ccs.neu.edu/bin/listinfo/pl-seminar



More information about the pl-seminar mailing list