02 / Systems / 2026
OpenMP and CUDA implementations.
Count Gliders / Histogram / Emboss
01 / SCOPE
Problem and
scope.
Parallel hardware creates opportunities, but not every workload benefits equally. The task was to implement three workloads, measure their full execution cost and understand where the time went.
I authored the OpenMP and CUDA implementations within a supplied coursework framework. The original serial reference and assignment harness were supplied.
02 / IMPLEMENTATION
Implementation
details.
- 01Serial reference
- 02OpenMP / CUDA
- 03Verify outputs
- 04Profile
- 05Compare end-to-end
Match the implementation to the workload.
Use bit-mask lookup tables and reductions for Count Gliders, private histograms for contention control, and two-dimensional thread mapping for image convolution.
Work with the GPU memory hierarchy.
Use constant memory, warp ballot/popcount, grid-stride loops and shared-memory accumulation where the access patterns support them.
Measure more than the kernel.
Include allocation, host–device transfer, execution and cleanup. The histogram example is especially useful: OpenMP can outperform end-to-end CUDA when overhead dominates.
03 / RESULTS
Results.
COMPARISON
Execution time by workload.
Historical submitted measurements, not a benchmark running in your browser. Bar lengths use the same linear scale within each comparison; switching workloads changes the scale.
Submitted measurements include 2048 × 2048 Count Gliders and Emboss workloads plus five-million-value Histogram runs, using a Release build and 100 iterations on a Ryzen 7600X3D and RTX 5060. End-to-end timings include transfer/allocation costs. These historical results have not been rerun for this website.
Context & limitations
Performance is hardware- and workload-specific. The published demonstration harness was added later; it should not be confused with the original supplied assessment framework.
04 / SUMMARY
The comparison is only meaningful when transfer, allocation and workload-specific behavior are included.Open repository
Android property management.
ReCoLA / Android property management