High-Performance Parallelization Methodology for Heterogeneous HPC Platforms
1
조회
0
다운로드
5
인용
0
참고문헌
키워드
초록
Latest High Performance Computing (HPC) platforms are built with heterogeneous chips such as multicore microprocessors and multicore GPUs (Graphic Processing units), thus they are commonly called as Heterogeneous HPC platforms. Parallelizing applications on such platforms is mostly dominated by SIMD style of parallelism mainly to exploit GPUs’ excellent floating-point performance. However, it is a restricted parallel execution model because the multiple CPU cores are not usually participating in the parallel execution, thus the full performance potential of heterogeneous architectures is not exploited. In this paper, we propose a generalized parallelization methodology to efficiently map applications onto the heterogeneous HPC architectures in order to fully exploit their performance potential. For the methodology, we develop strategies to map parallel tasks onto different components of the heterogeneous architectures based on their application characteristics and the computing demands. A general parallel execution model beyond SIMD is adopted in the task mapping.
Abstract
Latest High Performance Computing (HPC) platforms are built with heterogeneous chips such as multicore microprocessors and multicore GPUs (Graphic Processing units), thus they are commonly called as Heterogeneous HPC platforms. Parallelizing applications on such platforms is mostly dominated by SIMD style of parallelism mainly to exploit GPUs’ excellent floating-point performance. However, it is a restricted parallel execution model because the multiple CPU cores are not usually participating in the parallel execution, thus the full performance potential of heterogeneous architectures is not exploited. In this paper, we propose a generalized parallelization methodology to efficiently map applications onto the heterogeneous HPC architectures in order to fully exploit their performance potential. For the methodology, we develop strategies to map parallel tasks onto different components of the heterogeneous architectures based on their application characteristics and the computing demands. A general parallel execution model beyond SIMD is adopted in the task mapping.
참고문헌 (20)
- "AMD/ATI Radeon? HD 4800 Series"[URL]
- "AMD Fusion Family of APUs"[URL]
- "AMD Multi-Core: Introducing x86 Multi-Core Technology & Dual-Core Processors" (2005)[URL]
- J. Beyer, "OpenMP for Accelerators", Proceedings ofInternational Workshop on OpenMP 2011(IWOMP 2011), pp.108~121
- M. Bauer, "CudaDMA: Optimizing GPU Memory Bandwidth via Warp Specialization", Proceedings of ACM, 2011, ~
- K. Fatahalian, "A Closer Look at GPUs", Comm. of ACM (2008)
- S. Lee, "OpenMPC: Extended OpenMP Programming and Tuning for GPUs", Proceedings of IEEE SuperComputing (SC) Conference (2010)
- "OpenCL--Parallel Computing on the GPU and CPU"[URL]
- "NVidia gtx280"[URL]
- "NVidia CUDA Programming Guide"[URL]
- S. Ohsjima, "OMPCUDA: OpenMP Execution Framework for CUDA Based on Omni OpenMP Compiler", Proceedings of International Workshop on OpenMP (IWOMP) 2010 (2010)
- "OpenCL"[URL]
- "OpenMP Architecture Review Board"[URL]
- "OpenACC"[URL]
- "Parallel Laboratory Project"[URL]
- Matt Pharr, "GPU Gems 2" (2004), Addison Wesley
- M. Quinn, "Parallel Programming in C with MPI and OpenMP" (2004), McGraw Hill
- L. Spracklen, "Chip MultiThreading: Opportunities and Challenges", 11th International Symposium on High- Performance Computer Architecture (HPCA-11), pp.248~252 (2005)
- "Tianhe-1A"[URL]
- V. Volkov, "Benchmarking GPUs to Tune Dense Linear Algebra", Proceedings of the SuperComputing 08
