The Graal compiler uses a graphical sea-of-nodes IR that can be difficult to understand and work with when trying to improve performance of complicated programs. When used with an automatic partial evaluator, such as Truffle, and with a high-level language with complex semantics such as Ruby, the resulting IR graphs become even harder to work with. At Shopify we’re working on new tools to understand complex Graal IR graphs generated from the TruffleRuby and Sulong interpreters, as used to run a large, complex, production application. We’ll show what these tools enable us to do and what innovative ideas we can bring to understand the relevant parts of the graph without getting swamped in the expanse of it.
Chris is a Researcher at Shopify, where he works on the Ruby programming Language, and a Visitor at the University of Manchester.
He was formerly a Research Manager at the Oracle Labs Virtual Machine Research Group, where he led the TruffleRuby implementation of Ruby, and worked on other language and virtual machine projects. Before this he completed a PhD at Manchester where he researched programming languages and irregular parallelism, and an MEng at the University of Bristol on languages with mutable syntax and semantics.
In his spare time he’s Second in Command of the Cheshire Yeomanry squadron of the Queen’s Own Yeomanry, Cheshire’s historic reserve light cavalry squadron.
Tue 17 NovDisplayed time zone: Central Time (US & Canada) change
11:00 - 12:20
|Understanding Graal IR
K: Chris Seaton Shopify
|Programming Microcontrollers through High-Level Abstractions