Abstract
Developing shared memory parallel programs using OpenMP is straightforward, but getting good performance in terms of speedup and scalability can be difficult. This paper demonstrates the functionality of a collector-based dynamic optimization framework called DARWIN that uses collected performance data as feedback to affect the behavior of the program through the OpenMP runtime, thus able to optimizing certain aspects. The DARWIN framework utilizes the OpenMP Collector API to drive the optimization activity and various open source libraries to support its data collection and optimizations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
SQLite, http://www.sqlite.org/
Bruening, D., Garnett, T., Amarasinghe, S.: An Infrastructure for Adaptive Dynamic Optimization. In: Proceedings of the International Symposium on Code Generation and Optimization (2003)
Buck, B.R., Hollingsworth, J.K.: Data Centric Cache Measurement on the Intel Itanium 2 Processor. In: Proceedings of SuperComputing 2004 (2004)
Bui, V., Hernandez, O., Chapman, B., Kufrin, R., Gopalkrishnan, P., Tafti, D.: Towards an Implementation of the OpenMP Collector API. In: PARCO (2007)
Dagum, L., Menon, R.: OpenMP: An Industry-Standard API for Shared-Memory Programming. IEEE Computational Science and Engineering (1998)
Eranian, S.: Perfmon2: A flexible Performance Monitoring Interface for Linux. In: Proceedings of the 2006 Ottawa Linux Symposium (2006)
Hernandez, O., Chapman, B., et al.: Open Source Software Support for the OpenMP Runtime API for Profiling. In: The Second International Workshop on Parallel Programming Models and Systems Software for High-End Computing, P2S2 (2009)
Huck, K.A., Hernandez, O., Bui, V., Chandrasekaran, S., Chapman, B., Malony, A.D., McInnes, L.C., Norris, B.: Capturing Performance Knowledge for Automated Analysis (submitted to SC 2008)
Intel. Intel Itanium2 Processor Reference Manual for Software Development and Optimization, vol. 1 (2004)
Itzkowitz, M., Mazurov, O., Copty, N., Lin, Y.: White Paper: An OpenMP Runtime API for Profiling. Technical report, Sun Microsystems, Inc. (2007)
Jarp, S.: A Methodology for using the Itanium-2 Performance Counters for Bottleneck Analysis. Technical report, HP Labs (August 2002)
Jin, H., Frumkin, M., Yan, J.: The OpenMP Implementation of NAS Parallel Benchmarks and Its Performance. Technical report (1999)
Kim, J., Hsu, W.-C., Yew, P.-C.: COBRA: An Adaptive Runtime Binary Optimization Framework for Multithreaded Applications. In: 2007 International Conference on Parallel Processing (2007)
Klug, J.W.T., Ott, M., Trinitis, C.: Autopin - Automated Optimization of Thread-to-core Pinning on Multicore Systems. In: Transactions on HiPEAC (2008)
Liao, C., Hernandez, O., Chapman, B., Chen, W., Zheng, W.: Open UH: An Optimizing, Portable OpenMP Compiler. In: 12th Workshop on Compilers for Parallel Computers (2006)
Marathe, J., Mueller, F.: Hardware Profile-guided Automatic Page Placement for ccNUMA Systems. In: PPoPP 2006: Proceedings of the Eleventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 90–99. ACM Press, New York (2006)
Nikolopoulos, D.S., Papatheodorou, T.S., Polychronopoulos, C.D., Labarta, J., Ayguadé, E.: UPMLIB: A runtime system for tuning the memory performance of openMP programs on scalable shared-memory multiprocessors. In: Dwarkadas, S. (ed.) LCR 2000. LNCS, vol. 1915, pp. 85–99. Springer, Heidelberg (2000)
U. of Oregon. ParaProf User’s Manual, http://www.cs.uoregon.edu/research/tau/docs/paraprof/
Pousa, C.R., Castro, M., Fernandes, L.G., Mehaut, J.-F., Carissimi, A.: Memory Affinity for Hierarchical Shared Memory Multiprocessors. In: International Symposium on Computer Architecture and High Performance Computing (2009)
Shende, S.S., Malony, A.D.: The TAU Parallel Performance System. Int. J. High Perform. Comput. Appl. (2006)
Zhang, W., Calder, B., Tullsen, D.M.: An Event-Driven Multithreaded Dynamic Optimization Framework. In: Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (2005)
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
Wicaksono, B., Nanjegowda, R.C., Chapman, B. (2011). A Dynamic Optimization Framework for OpenMP. In: Chapman, B.M., Gropp, W.D., Kumaran, K., Müller, M.S. (eds) OpenMP in the Petascale Era. IWOMP 2011. Lecture Notes in Computer Science, vol 6665. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21487-5_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-21487-5_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21486-8
Online ISBN: 978-3-642-21487-5
eBook Packages: Computer ScienceComputer Science (R0)