Lime: a Java']Java-Compatible and Synthesizable Language for Heterogeneous Architectures

被引:67
作者
Auerbach, Joshua
Bacon, David F.
Cheng, Perry
Rabbah, Rodric
机构
关键词
Design; Languages; object oriented; value type; streaming; functional programming; reconfigurable architecture; FPGA; high level synthesis;
D O I
10.1145/1932682.1869469
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The halt in clock frequency scaling has forced architects and language designers to look elsewhere for continued improvements in performance. We believe that extracting maximum performance will require compilation to highly heterogeneous architectures that include reconfigurable hardware. We present a new language, Lime, which is designed to be executable across a broad range of architectures, from FPGAs to conventional CPUs. We present the language as a whole, focusing on its novel features for limiting side-effects and integration of the streaming paradigm into an object-oriented language. We conclude with some initial results demonstrating applications running either on a CPU or co-executing on a CPU and an FPGA.
引用
收藏
页码:89 / 108
页数:20
相关论文
共 35 条
[1]  
Ackerman W., 1979, MITLCSTR218
[2]  
ARVIND, 1978, 114 U CAL IRV
[3]  
ASHCROFT E, 1977, COMMUNICATIONS ACM 2, V7, P526
[4]  
AUERBACH J, 2010, 25004 IBM RES
[5]   Low-Latency Time-Portable Real-Time Programming with Exotasks [J].
Auerbach, Joshua ;
Bacon, David F. ;
Iercan, Daniel ;
Kirsch, Christoph M. ;
Rajan, V. T. ;
Roeck, Harald ;
Trummer, Rainer .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2009, 8 (02)
[6]   A practical type system and language for reference immutability [J].
Birka, A ;
Ernst, MD .
ACM SIGPLAN NOTICES, 2004, 39 (10) :35-49
[7]  
*BLUESP, 2004, BLUES SYST VERIL REF
[8]  
Boyapati C., 2002, OOPSLA 02, P211
[9]   Why we should not add readonly to Java']Java (yet) [J].
Boyland, John .
JOURNAL OF OBJECT TECHNOLOGY, 2006, 5 (05) :5-29
[10]  
Cardoso JMP, 2009, COMPILATION TECHNIQUES FOR RECONFIGURABLE ARCHITECTURES, P1, DOI 10.1007/978-0-387-09671-1