02 / Systems / 2026
OpenMP and CUDA implementations.
Count Gliders / Histogram / Emboss
01 / SCOPE
Problem and
scope.
Count Gliders counts 3 × 3 patterns in a binary grid; Histogram groups integer values into bins; Emboss applies a 3 × 3 image convolution. I implemented OpenMP and CUDA versions of each supplied serial reference, checked their outputs and profiled execution with Nsight.
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
Workload-specific algorithms.
Use bit-mask lookup tables and reductions for Count Gliders, private histograms for contention control, and two-dimensional thread mapping for image convolution.
CUDA memory and thread layout.
Use constant memory, warp ballot/popcount, grid-stride loops and shared-memory accumulation where the access patterns support them.
End-to-end timing.
Include allocation, host–device transfer, execution and cleanup. In the submitted five-million-value histogram comparison, OpenMP took 0.671 ms and CUDA took 2.606 ms including overhead.
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.
Android property management.
ReCoLA / Android property management