Return to search

A systematic performance study of the parallel programming framework SkePU 3 using HPC-benchmarks / En systematisk prestandastudie av parallellprogrammeringsramverket SkePU 3 med hjälp av HPC-benchmarks

With hardware performance no longer following Moore’s law, software optimization becomes more important. In this paper, we discuss parallel programming, which is one way to optimize software. However, writing parallel code is considered more difficult than writing sequential code. There is often a specific framework to be used to write parallel code for each type of parallel hardware. Skeleton programming frameworks are one way to reduce the number of parallel frameworks that a user needs to know. Skeleton programming frameworks implement high-level functions such as Map and Reduce that the user can customize. SkePU is one such framework. In order to understand the viability of SkePU compared to platform-specific frameworks, a performance analysis is performed. For the performance analysis, workloads were selected from the high-performance computing benchmarks Rodinia and PolyBench. The original programs written in CUDA and OpenMP are then compared performance-wise to an equivalent SkePU-implementation. There is also a code understandability survey between CUDA, OpenMP, and SkePU. SkePU performs best in the understandability survey. The observed difference between the frameworks, however, is not statistically significant. When execution times are compared, SkePU performs comparably to less optimized programs. SkePU is outperformed by hand-optimized code. The sample size for hand-optimized code is small and skewed due to algorithmic differences.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:liu-189148
Date January 2022
CreatorsTedhamre, Erik
PublisherLinköpings universitet, Programvara och system
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.002 seconds