Removing checks in dynamically typed languages through efficient profiling

View/Open
Cita com:
hdl:2117/113960
Document typeConference report
Defense date2017
PublisherInstitute of Electrical and Electronics Engineers (IEEE)
Rights accessOpen Access
Abstract
Dynamically typed languages increase programmer's productivity at the expense of some runtime overheads to manage the types of variables, since they are not declared at compile time and can change at runtime. One of the most important overheads is due to very frequent checks that are introduced in the specialized code to identify the type of the variables. In this paper, we present a HW/SW hybrid mechanism that allows the removal of checks executed in the optimized code by performing a HW profiling of the types of object variables. To demonstrate the benefits of the proposed technique, we implement it in a JavaScript engine and show that it produces 7.1% speedup on average for optimized JavaScript code (up to 34% for some applications) and 6.5% energy reduction.
CitationDot, G., Martínez, A., González, A. Removing checks in dynamically typed languages through efficient profiling. A: International Symposium on Code Generation and Optimization. "CGO'17: proceedings of the 2017 International Symposium on Code Generation and Optimization: February 4-8, 2017 Austin, USA". Austin, TX: Institute of Electrical and Electronics Engineers (IEEE), 2017, p. 257-268.
ISBN978-1-5090-4931-8
Files | Description | Size | Format | View |
---|---|---|---|---|
CGO2017.pdf | 2,310Mb | View/Open |
All rights reserved. This work is protected by the corresponding intellectual and industrial
property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public
communication or transformation of this work are prohibited without permission of the copyright holder