Close

Presentation

This content is available for: Workshop Reg Pass. Upgrade Registration
K-means Clustering: An Assignment for OpenMP, MPI, and CUDA/OpenCL
DescriptionWe introduce the sixth example in a series of assignments used in a Parallel Computing course to teach approaches to solving the same problem with different parallel programming models. This assignment is based on the K-means clustering algorithm. The program is intentionally designed to be straightforward and easily understandable for students, while also providing specific parallelization and optimization opportunities. It is a simpler example than the previously presented assignments in this series, focusing mainly on key base concepts that many students find complex to apply in a practical case: Race-conditions, reductions, and collective operations. It proposes a clear and guided parallelization and optimization strategy across the different programming models. This assignment can be used to establish a solid foundation before tackling more advanced concepts or parallel structures. This assignment was successfully used as a practical assignment in a Parallel Computing course in the third year of a Computer Engineering degree.
Event Type
Workshop
TimeMonday, 13 November 20235:05pm - 5:09pm MST
Location506
Tags
Education
State of the Practice
Registration Categories
W