Compact native code generation for dynamic languages on micro-core architectures
Compact native code generation for dynamic languages on micro-core architectures
复制标题
微核架构上动态语言的紧凑本机代码生成
DOI:
10.1145/3446804.3446853
复制
发表时间:
2021
期刊:
影响因子:
--
通讯作者:
Jamieson M
中科院分区:
文献类型:
--
作者:
Jamieson M
Micro-core architectures combine many simple, low memory, low power-consuming CPU cores onto a single chip. Potentially providing significant performance and low power consumption, this technology is not only of great interest in embedded, edge, and IoT uses, but also potentially as accelerators for data-center workloads. Due to the restricted nature of such CPUs, these architectures have traditionally been challenging to program, not least due to the very constrained amounts of memory (often around 32KB) and idiosyncrasies of the technology. However, more recently, dynamic languages such as Python have been ported to a number of micro-cores, but these are often delivered as interpreters which have an associated performance limitation.Targeting the four objectives of performance, unlimited code-size, portability between architectures, and maintaining the programmer productivity benefits of dynamic languages, the limited memory available means that classic techniques employed by dynamic language compilers, such as just-in-time (JIT), are simply not feasible. In this paper we describe the construction of a compilation approach for dynamic languages on micro-core architectures which aims to meet these four objectives, and use Python as a vehicle for exploring the application of this in replacing the existing micro-core interpreter. Our experiments focus on the metrics of performance, architecture portability, minimum memory size, and programmer productivity, comparing our approach against that of writing native C code. The outcome of this work is the identification of a series of techniques that are not only suitable for compiling Python code, but also applicable to a wide variety of dynamic languages on micro-cores.
登录
查看更多内容
DOI:
--
发表时间:
1991
期刊:
Sun Technical Reference Library
影响因子:
--
作者:
B. Catanzaro
通讯作者:
B. Catanzaro
DOI:
--
发表时间:
2019
期刊:
影响因子:
--
作者:
Maurice Jamieson;Nicholas Brown
通讯作者:
Nicholas Brown
DOI:
--
发表时间:
1991
期刊:
影响因子:
--
作者:
S. Jones;J. Launchbury;S. Jones
通讯作者:
S. Jones
DOI:
--
发表时间:
2018
期刊:
Dynamic Languages Symposium
影响因子:
--
作者:
M. Serrano
通讯作者:
M. Serrano
DOI:
10.1145/3368826.3377907
发表时间:
2020
期刊:
Proceedings of the 18th ACM/IEEE International Symposium on Code Generation and Optimization
影响因子:
--
作者:
Lin Cheng;Berkin Ilbeyi;Carl Friedrich Bolz;C. Batten
通讯作者:
C. Batten