Persistent Asynchronous Adaptive Specialization for Generic Array Programming

被引:0
|
作者
Clemens Grelck
Heinrich Wiesinger
机构
[1] University of Amsterdam,
关键词
Generic programming; Array programming; Dynamic compilation; Multi-core computing; Single Assignment C; Persistence;
D O I
暂无
中图分类号
学科分类号
摘要
Generic array programming systematically abstracts from structural array properties such as shape and rank. As usual, generic programming comes at the price of lower runtime performance. The idea of asynchronous adaptive specialization is to exploit parallel computing facilities to reconcile these conflicting objectives through the continuous adaptation of running applications to the ranks and shapes of their arrays. A key parameter for the effectiveness of our approach is the time it takes from requesting a certain specialization until its availability to the running application. We describe the ins and outs of a persistence layer that keeps specialized variants in a repository for future use and thus effectively reduces the average waiting time for re-compilation to nearly zero. A number of critical issues that, among others, stem from the interplay between function specialization and function overloading catch our special attention. We describe the solutions adopted and illustrate the benefits of persistent asynchronous adaptive specialization by a series of experiments.
引用
收藏
页码:164 / 183
页数:19
相关论文
共 50 条
  • [31] A generic framework for the analysis and specialization of logic programs
    Puebla, G
    Albert, E
    Hermenegildo, M
    [J]. LOGIC PROGRAMMING, PROCEEDINGS, 2005, 3668 : 407 - 409
  • [32] Towards a Cax-Framework for Adaptive Programming Using Generic Process Blocks for Manufacturing
    Spoecker, Gunter
    Bobek, Thomas
    Glasmacher, Lothar
    Klocke, Fritz
    [J]. NEW PRODUCTION TECHNOLOGIES IN AEROSPACE INDUSTRY, 2013, : 153 - 162
  • [33] Generic programming within dependently typed programming
    Altenkirch, T
    McBride, C
    [J]. GENERIC PROGRAMMING, 2003, 115 : 1 - 20
  • [34] Refactorings for Android Asynchronous Programming
    Lin, Yu
    Dig, Danny
    [J]. 2015 30TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2015, : 836 - 841
  • [35] Array streaming for array programming
    Kristensen, Mads R. B.
    Avery, James E.
    [J]. INTERNATIONAL JOURNAL OF COMPUTATIONAL SCIENCE AND ENGINEERING, 2018, 17 (03) : 263 - 282
  • [36] A GENERIC PERSISTENT OBJECT STORE
    BROWN, AL
    MORRISON, R
    [J]. SOFTWARE ENGINEERING JOURNAL, 1992, 7 (02): : 161 - 168
  • [37] Attractors of generic diffeomorphisms are persistent
    Abdenur, F
    [J]. NONLINEARITY, 2003, 16 (01) : 301 - 311
  • [38] ASYNCHRONOUS ADAPTIVE SWITCHING
    SAMOYLENKO, SI
    [J]. TELECOMMUNICATIONS AND RADIO ENGINEERING, 1989, 44 (10) : 1 - 6
  • [39] Arity-Generic Datatype-Generic Programming
    Weirich, Stephanie
    Casinghino, Chris
    [J]. PLPV'10: PROCEEDINGS OF THE 2010 ACM SIGPLAN WORKSHOP ON PROGRAMMING LANGUAGES MEETS PROGRAM VERIFICATION, 2010, : 15 - 26
  • [40] ASYNCHRONOUS BINARY DIVIDING ARRAY
    WALKER, PAW
    [J]. ELECTRONICS LETTERS, 1970, 6 (16) : 515 - &