Abstract
As the demand for high-performance computing continues to surge, harnessing the full potential of multicore architectures has become paramount. This paper explores a pragmatic approach to transition from sequential to parallel programming, capitalizing on the computational prowess of modern hardware systems. Recognizing the challenges of enforcing parallelism in early software development phases, we advocate for a focus on the implementation stage, where architects, designers, and developers can seamlessly introduce parallel constructs while preserving software integrity. To facilitate this paradigm shift, we introduce the “SDLC model with Parallel Constructs,” a modified Software Development Life Cycle (SDLC) framework comprising additional phases: “Parallel Constructs” and “Test Parallel Constructs.” This model empowers development teams to integrate parallel computing efficiently, enhancing performance and maintaining a structured development process. Our observations reveal intriguing dynamics. Initially, the single-threaded program outperforms its parallel counterpart for smaller datasets, but as data sizes grow, the parallel version demonstrates superior performance. We underscore the pivotal role of available CPU cores and task partitioning in determining efficiency. Our analysis also evaluates the programmer’s effort, measured by lines of code, needed for the transition. Leveraging OpenMP constructs streamlines this transition, reducing programming complexity.
Reference8 articles.
1. Shin Woochang et al, “Performance Comparison of Parallel Programming Frameworks in Digital Image Transformation (DIT)”. https://www.earticle.net/Article/A361091. (2019).
2. Kuhn Bob et.al, “OpenMP versus Threading in C/C++”, Concurrency Practice and Experience 12(12):1165-1176, DOI:10.1002/1096-9128(200010)12:12<1165::AID-CPE529>3.0.CO;2-L
3. Gu Ruidong et. All., “A Comparative Study of Parallel Programming Frameworks, (2000), for Distributed GPU Applications”, CF’19: Proceedings of the 16th ACM International Conference on Computing Frontiers April 2019 Pages 268-273, https://doi.org/10.1145/3310273.3323071, (2019)
4. Schewtschenko Jascha, “Implementation of Parallelization OpenMP, PThreads and MPI” http://icg.port.ac.uk/~schewtsj/hpc2018/lecture-implemention.pdf. (2018).
5. Swahn Henrik, “Pthreads and OpenMP A performance and productivity study” (2016), http://www.diva-portal.org/smash/record.jsf?pid=diva2%3A944063&dswid=3598
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献