• DocumentCode
    1302565
  • Title

    Space efficient execution of deterministic parallel programs

  • Author

    Simpson, David J. ; Burton, F. Warren

  • Author_Institution
    Simon Fraser Univ., Burnaby, BC, Canada
  • Volume
    25
  • Issue
    6
  • fYear
    1999
  • Firstpage
    870
  • Lastpage
    882
  • Abstract
    We model a deterministic parallel program by a directed acyclic graph of tasks, where a task can execute as soon as all tasks preceding it have been executed. Each task can allocate or release an arbitrary amount of memory (i.e., heap memory allocation can be modeled). We call a parallel schedule “space efficient” if the amount of memory required is at most equal to the number of processors times the amount of memory required for some depth-first execution of the program by a single processor. We describe a simple, locally depth-first scheduling algorithm and show that it is always space efficient. Since the scheduling algorithm is greedy, it will be within a factor of two of being optimal with respect to time. For the special case of a program having a series-parallel structure, we show how to efficiently compute the worst case memory requirements over all possible depth-first executions of a program. Finally, we show how scheduling can be decentralized, making the approach scalable to a large number of processors when there is sufficient parallelism
  • Keywords
    computational complexity; directed graphs; parallel programming; processor scheduling; storage allocation; tree searching; depth-first execution; depth-first executions; deterministic parallel programs; directed acyclic graph; heap memory allocation; locally depth-first scheduling algorithm; parallel schedule; series-parallel structure; space efficiency; space efficient execution; task allocation; worst case memory requirements; Computer Society; Electronic switching systems; Memory management; Optimal scheduling; Parallel processing; Parallel programming; Processor scheduling; Scheduling algorithm; Time factors; Tree graphs;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.824415
  • Filename
    824415