Petri-nets as an Intermediate Representation for Heterogeneous Architectures

  • Peter Calvert
  • Alan Mycroft
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6853)

Abstract

Many modern systems provide heterogeneous parallelism, for example NUMA multi-core processors and CPU-GPU combinations. Placement, scheduling and indeed algorithm choices affect the overall execution time and, for portable programs, must adapt to the target machine at either load-time or run-time. We see these choices as preserving I/O determinism but exposing performance non-determinism. We use Petri-nets as an intermediate representation for programs to give a unified view of all forms of performance non-determinism. This includes some scenarios which other models cannot support. Whilst NP-hard, efficient heuristics for approximating optimum executions in these nets would lead to performant portable execution across arbitrary heterogeneous architectures.

Keywords

Petri-nets parallelism heterogeneous architectures scheduling 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Adve, V., Lattner, C., Brukman, M., Shukla, A., Gaeke, B.: LLVA: A Low-level Virtual Instruction Set Architecture. In: Proc. 36th Annual ACM/IEEE International Symposium on Microarchitecture, MICRO-36 (2003)Google Scholar
  2. 2.
    Augonnet, C., Clet-Ortega, J., Thibault, S., Namyst, R.: Data-Aware Task Scheduling on Multi-Accelerator based Platforms. In: Proc. 16th IEEE International Conference on Parallel and Distributed Systems (ICPADS) (2010)Google Scholar
  3. 3.
    Augonnet, C., Thibault, S., Namyst, R., Wacrenier, P.-A.: StarPU: A Unified Platform for Task Scheduling on Heterogeneous Multicore Architectures. In: Sips, H., Epema, D., Lin, H.-X. (eds.) Euro-Par 2009. LNCS, vol. 5704, pp. 863–874. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Cambini, R., Gallo, G., Scutellà, M.: Flows on Hypergraphs. Mathematical Programming 78, 195–217 (1997)MathSciNetMATHGoogle Scholar
  5. 5.
    Erlebach, T., Kääb, V., Möhring, R.H.: Scheduling AND/OR-Networks on Identical Parallel Machines. In: Solis-Oba, R., Jansen, K. (eds.) WAOA 2003. LNCS, vol. 2909, pp. 345–346. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Gillies, D., Liu, J.-S.: Scheduling Tasks with AND/OR Precedence Constraints. In: Proc. 2nd IEEE Symposium on Parallel and Distributed Processing, pp. 394–401 (1990)Google Scholar
  7. 7.
    Goldberg, A.V., Tarjan, R.E.: Finding Minimum-cost Circulations by Successive Approximation. Mathematics of Operations Research 15(3), 430–466 (1990)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Jensen, K.: Coloured Petri Nets: A high level language for system design and analysis. In: Rozenberg, G. (ed.) APN 1990. LNCS, vol. 483, pp. 342–416. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  9. 9.
    Karp, R.M.: Reducibility Among Combinatorial Problems. In: Complexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972)CrossRefGoogle Scholar
  10. 10.
    Pratt, V.: Modeling concurrency with partial orders. International Journal of Parallel Programming 15(1), 33–71 (1986)MathSciNetCrossRefMATHGoogle Scholar
  11. 11.
    MIT Computer Architecture Group.: StreamIt, http://groups.csail.mit.edu/cag/streamit/
  12. 12.
    Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, Event Structures and Domains, part I. Theoretical Computer Science 13(1), 85–108 (1981)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Suleman, M.A., Qureshi, M.K., Khubaib, P.Y.N.: Feedback-directed Pipeline Parallelism. In: Proc. 19th International Conference on Parallel Architectures and Compilation Techniques (PACT), pp. 147–156. ACM, New York (2010)CrossRefGoogle Scholar
  14. 14.
    Topcuoglu, H., Hariri, S., Wu, M.-Y.: Performance-effective and Low-complexity Task Scheduling for Heterogeneous Computing. IEEE Transactions on Parallel and Distributed Systems 13(3), 260–274 (2002)CrossRefGoogle Scholar
  15. 15.
    Valiant, L.G.: A Bridging Model for Parallel Computation. Communications of the ACM 33, 103–111 (1990)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Peter Calvert
    • 1
  • Alan Mycroft
    • 1
  1. 1.Computer LaboratoryUniversity of CambridgeCambridgeUK

Personalised recommendations