language-icon Old Web
English
Sign In

Application Use Cases

2016 
Platform atomics provide memory consistency and atomicity across the heterogeneous architecture. They allow the latency compute units (CPU cores) and the throughput compute units (graphics processing unit, GPU cores) to simultaneously access the same memory locations. This chapter describes three case studies of algorithm patterns that benefit from platform atomics. The first case study is a task queue system in which the CPU produces tasks that are processed by the GPU. It avoids kernel relaunch and ensures load balancing. The second case study implements the breadth-first search as an example of an application that identifies dynamically the most appropriate cores (CPU or GPU) to execute a task. Thus, program execution can occasionally swap between the CPU and the GPU, depending on workload characteristics. The third case study is a data layout conversion routine that simultaneously uses the CPU and the GPU to shift elements of an array in-place. It represents a pattern of close collaboration between the CPU and the GPU to process a pool of fine-grained tasks.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    15
    References
    1
    Citations
    NaN
    KQI
    []