A language for the complexity analysis of parallel programs

被引:0
|
作者
González, JA [1 ]
León, C
Pristinta, M
Roda, JL
Rodríguez, C
Rodríguez, JM
Sande, F
机构
[1] Univ La Laguna, Dept Estadist Invest Operat & Computac, Tenerife, Spain
[2] Univ Nacl San Luis, San Luis, Argentina
来源
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The accumulated experience indicates that complexity models like LogP or BSP, characterizing the performance of distributed machines through a few parameters, incur in a considerable loss of accuracy. Errors ranges up to 70%. The complexity analysis model presented here still makes use of the BSP concept of superstep, but introduces a few novelties. To cover both oblivious synchronization and group partitioning we have to admit that different processors may finish the same superstep at different times. The other extension recognizes that, even if the numbers of individual communication or computation operations in two stages are the same, the actual times for these two stages may differ. These differences are due to the separate nature of the operations or to the particular pattern followed by the messages. A natural proposal is to associate a different proportionality constant with each basic block, and analogously, to associate different latencies and bandwidths with the different communications. Unfortunately, to use this approach implies that the parameters evaluation not only depend on the given architecture, but also reflect algorithm characteristics. Such parameter evaluation must be done for every algorithm. This is a heavy task, implying experiment design, timing, statistics and multi-parameter fitting algorithms. Software support is required. We have developed a compiler that takes as source a C program annotated with complexity formulas and produces as output an instrumented code. The trace files obtained from the execution of the resulting code are analyzed with an interactive interpreter, giving us, among other information, the values of those parameters.
引用
收藏
页码:256 / 263
页数:8
相关论文
共 50 条
  • [1] Automatic Complexity Analysis of Explicitly Parallel Programs
    Hoefler, Torsten
    Kwasniewski, Grzegorz
    [J]. PROCEEDINGS OF THE 26TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES (SPAA'14), 2014, : 226 - 235
  • [2] A comparative analysis of parallel programming language complexity and performance
    Vanderwiel, SP
    Nathanson, D
    Lilja, DJ
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1998, 10 (10): : 807 - 820
  • [3] PARALLEL COMPLEXITY OF LOGICAL QUERY PROGRAMS
    ULLMAN, JD
    VANGELDER, A
    [J]. ALGORITHMICA, 1988, 3 (01) : 5 - 42
  • [4] THE PARALLEL COMPLEXITY OF SIMPLE LOGIC PROGRAMS
    AFRATI, F
    PAPADIMITRIOU, CH
    [J]. JOURNAL OF THE ACM, 1993, 40 (04) : 891 - 916
  • [5] Estimating complexity of programs in python language
    Misra, Sanjay
    Cafer, Ferid
    [J]. Tehnicki Vjesnik, 2011, 18 (01): : 23 - 32
  • [6] THE PARALLEL COMPLEXITY OF SINGLE RULE LOGIC PROGRAMS
    AFRATI, F
    [J]. DISCRETE APPLIED MATHEMATICS, 1992, 40 (02) : 107 - 126
  • [7] Using the parallel complexity of programs to improve compaction
    Pouzet, M
    [J]. PROCEEDINGS OF THE 1996 CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT '96), 1996, : 111 - 115
  • [8] A pattern language for parallel application programs
    Massingill, BL
    Mattson, TG
    Sanders, BA
    [J]. EURO-PAR 2000 PARALLEL PROCESSING, PROCEEDINGS, 2000, 1900 : 678 - 681
  • [9] ESTIMATING COMPLEXITY OF PROGRAMS IN PYTHON']PYTHON LANGUAGE
    Misra, Sanjay
    Cafer, Ferid
    [J]. TEHNICKI VJESNIK-TECHNICAL GAZETTE, 2011, 18 (01): : 23 - 32
  • [10] COMPLEXITY-MEASURES FOR ASSEMBLY LANGUAGE PROGRAMS
    BLAINE, JD
    KEMMERER, RA
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 1985, 5 (03) : 229 - 245