Abstract
In this chapter we will examine the gap between the expected execution time of a parallel algorithm and the actual running time achieved by executing its encoding as a ParC program in an actual shared memory machine. Though there is such a gap for sequential programs, it is more problematic with parallel programs where users often encounter cases of parallel programs that fail to run fast enough or as fast as expected. In particular, a parallel program that runs on a parallel machine with P processors is expected to run about P times faster than its sequential version. There are two issues involved with this problem:
-
Determining the execution time of a parallel program and comparing it with a desired execution time.
-
If there is a significant gap between the two, we need to identify which factors in the parallel program should be corrected so that the performance is improved.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Amdahl, G.M.: Validity of the single processor approach to achieving large scale computer capabilities. In: AFIPS Spring Joint Comput. Conf., vol. 30, pp. 483–485 (1967)
Ben-Asher, Y., Haber, G.: On the usage of simulators to detect inefficiency of parallel programs caused by bad schedulings: the simparc approach. J. Syst. Softw. 33, 313–327 (1996)
Eager, D.L., Zahorjan, J., Lazowska, E.D.: Speedup versus efficiency in parallel systems. IEEE Trans. Comput. 38(3), 408–423 (1989)
Flatt, H.P.: Further results using the overhead model for parallel systems. IBM J. Res. Dev. 35(5/6), 721–726 (1991)
Gehani, N.H., Roome, W.D.: Concurrent C. Softw. Pract. Exp. 16(9), 821–844 (1986)
Gottlieb, A., Lubachevsky, B., Rudolph, L.: Basic techniques for the efficient coordination of very large numbers of cooperating sequential processes. ACM Trans. Program. Lang. Syst. 5(2), 164–189 (1983)
Jaja, J.: An Introduction to Parallel Algorithms. Addison-Wesley, Reading (1992)
Johnson, D.S.: The NP-completeness column: An ongoing guide. J. Algorithms 4(2), 189–203 (1983). (about parallel scheduling)
Karp, A.H., Flatt, H.P.: Measuring parallel processor performance. Commun. ACM 33(5), 539–543 (1990)
Kruskal, C.P.: Performance bound on parallel processors: An optimistic view. In: Broy, M. (ed.) Control Flow and Data Flow: Concepts of Distributed Programming. NATO ASI Series, vol. F-14, pp. 331–344. Springer, Berlin (1985)
Kruskal, C.P., Rudolph, L., Snir, M.: A complexity theory of efficient parallel algorithms. Theor. Comput. Sci. 71(1), 95–132 (1990)
Kuehn, J.T., Siegel, H.J.: Extensions to the C programming language for SIMD/MIMD parallelism. In: Intl. Conf. Parallel Processing, pp. 232–235 (1985)
Papadimitriou, C.H., Yannakakis, M.: Towards an architecture-independent analysis of parallel algorithms. SIAM J. Comput. 19(2), 322–328 (1990)
Rose, J.R.: C*: A C++-like language for data parallel computation. In: USENIX Proc. C++ Workshop, pp. 127–134 (1987)
Sun, X.H., Gustafson, J.L.: Toward a better parallel performance metric*. Parallel Comput. 17(10–11), 1093–1109 (1991)
Sun, X.H., Ni, L.M.: Another view on parallel speedup. In: Proceedings of Supercomputing’90, pp. 324–333. IEEE, New York (2002). ISBN 0818620560
Wieland, F., Reiher, P., Jefferson, D.: Experiences in parallel performance measurement: The speedup bias. In: Symp. Experiences with Distributed & Multiprocessor Syst., pp. 205–215. USENIX, Berkeley (1992)
Williams, E., Bobrowicz, F.: Speedup predictions for large scientific parallel programs on Cray X-MP like architectures. In: Intl. Conf. Parallel Processing, pp. 541–543 (1985)
Zhang, X.: Performance measurement and modeling to evaluate various effects on a shared memory multiprocessor. IEEE Trans. Softw. Eng. 87–93 (1991)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2012 Springer-Verlag London
About this chapter
Cite this chapter
Ben-Asher, Y. (2012). Improving the Performance of Parallel Programs: The Analytical Approach. In: Multicore Programming Using the ParC Language. Undergraduate Topics in Computer Science. Springer, London. https://doi.org/10.1007/978-1-4471-2164-0_5
Download citation
DOI: https://doi.org/10.1007/978-1-4471-2164-0_5
Publisher Name: Springer, London
Print ISBN: 978-1-4471-2163-3
Online ISBN: 978-1-4471-2164-0
eBook Packages: Computer ScienceComputer Science (R0)