Parallel Complexity Analysis with Temporal Session Types

被引:0
作者
Das, Ankush [1 ]
Hoffmann, Jan [1 ]
Pfenning, Frank [1 ]
机构
[1] Carnegie Mellon Univ, Pittsburgh, PA 15213 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2018年 / 2卷
关键词
Session Types; Linear logic; Concurrency; Resource analysis;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We study the problem of parametric parallel complexity analysis of concurrent, message-passing programs. To make the analysis local and compositional, it is based on a conservative extension of binary session types, which structure the type and direction of communication between processes and stand in a Curry-Howard correspondence with intuitionistic linear logic. The main innovation is to enrich session types with the temporal modalities next (circle A), always (square A), and eventually (lozenge A), to additionally prescribe the timing of the exchanged messages in a way that is precise yet flexible. The resulting temporal session types uniformly express properties such as the message rate of a stream, the latency of a pipeline, the response time of a concurrent queue, or the span of a fork/join parallel program. The analysis is parametric in the cost model and the presentation focuses on communication cost as a concrete example. The soundness of the analysis is established by proofs of progress and type preservation using a timed multiset rewriting semantics. Representative examples illustrate the scope and usability of the approach.
引用
收藏
页数:30
相关论文
共 43 条
  • [1] Avanzini M, 2015, PROCEEDINGS OF THE 20TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON FUNCTIONAL PROGRAMMING (ICFP'15), P152, DOI 10.1145/2784731.2784753
  • [2] Balzer S, 2017, P ACM PROGRAM LANG, V1, DOI 10.1145/3110281
  • [3] THE ESTEREL SYNCHRONOUS PROGRAMMING LANGUAGE - DESIGN, SEMANTICS, IMPLEMENTATION
    BERRY, G
    GONTHIER, G
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 1992, 19 (02) : 87 - 152
  • [4] Blelloch G. E., 1997, SPAA '97. 9th Annual ACM Symposium on Parallel Algorithms and Architectures, P249, DOI 10.1145/258492.258517
  • [5] Bocchi Laura, 2014, CONCUR 2014 - Concurrency Theory. 25th International Conference, CONCUR 2014. Proceedings: LNCS 8704, P419, DOI 10.1007/978-3-662-44584-6_29
  • [6] Linear logic propositions as session types
    Caires, Luis
    Pfenning, Frank
    Toninho, Bernardo
    [J]. MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE, 2016, 26 (03) : 367 - 423
  • [7] Caires L, 2013, LECT NOTES COMPUT SC, V7792, P330, DOI 10.1007/978-3-642-37036-6_19
  • [8] Caires L, 2010, LECT NOTES COMPUT SC, V6269, P222, DOI 10.1007/978-3-642-15375-4_16
  • [9] Relating state-based and process-based concurrency through linear logic (full-version)
    Cervesato, Iliano
    Scedrov, Andre
    [J]. INFORMATION AND COMPUTATION, 2009, 207 (10) : 1044 - 1077
  • [10] Relational Cost Analysis
    Cicek, Ezgi
    Barthe, Gilles
    Gaboardi, Marco
    Garg, Deepak
    Hoffmann, Jan
    [J]. ACM SIGPLAN NOTICES, 2017, 52 (01) : 316 - 329