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.
Chapter PDF
Similar content being viewed by others
References
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)
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)
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)
Cambini, R., Gallo, G., Scutellà , M.: Flows on Hypergraphs. Mathematical Programming 78, 195–217 (1997)
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)
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)
Goldberg, A.V., Tarjan, R.E.: Finding Minimum-cost Circulations by Successive Approximation. Mathematics of Operations Research 15(3), 430–466 (1990)
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)
Karp, R.M.: Reducibility Among Combinatorial Problems. In: Complexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972)
Pratt, V.: Modeling concurrency with partial orders. International Journal of Parallel Programming 15(1), 33–71 (1986)
MIT Computer Architecture Group.: StreamIt, http://groups.csail.mit.edu/cag/streamit/
Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, Event Structures and Domains, part I. Theoretical Computer Science 13(1), 85–108 (1981)
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)
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)
Valiant, L.G.: A Bridging Model for Parallel Computation. Communications of the ACM 33, 103–111 (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Calvert, P., Mycroft, A. (2011). Petri-nets as an Intermediate Representation for Heterogeneous Architectures. In: Jeannot, E., Namyst, R., Roman, J. (eds) Euro-Par 2011 Parallel Processing. Euro-Par 2011. Lecture Notes in Computer Science, vol 6853. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23397-5_22
Download citation
DOI: https://doi.org/10.1007/978-3-642-23397-5_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-23396-8
Online ISBN: 978-3-642-23397-5
eBook Packages: Computer ScienceComputer Science (R0)