2. INTRODUCTION
Heterogeneous computing refers to systems that use more
than one kind of processor or cores.
System gain performance with dissimilar coprocessors.
Source:- Qualcomm Snapdragon
4. ISSUES WITH LEGACY GPU COMPUTE
• Multiple memory pools
• Multiple address spaces
• Expert programmers
only
Source:-AMD
5. • Two memory pools remain
• Still queue through the OS
• Still requires expert programmers
Source:-AMD
Physical Integration
6. Heterogeneous System Architecture
It allows integration of central processing units and graphics processors on the
same bus, with shared memory and tasks.
HSA is being developed by HSA Foundation.
Aim to reduce communication latency between CPUs, GPUs and other compute
devices, and make devices more compatible from a programmer’s perspective.
7. • Unified Coherent Memory enables data sharing across all
processors
• Processors architected to operate cooperatively
• Designed to enable the application to run on different processors at
different times
This is HSA
Source:-AMD
13. OpenCL
• OpenCL initially developed by Apple Inc.
• OpenCL is a framework for writing programs that execute across
heterogenous platforms
• Allows existing source code to target the CPU and GPU.
CUDA
• CUDA is a parallel computing platform and application programming
interface model created by Nvidia.
• It contains libraries,Compiler directives ,c,c++, and Fortran extensions
• Free but limited to only Nvidia hardware
hUMA
• hUMA stands for Heterogeneous Uniform Memory Access
• Results in support for mainstream languages such as Python, C++ and Java
15. Real World Application of HC
AMD APUs
Smartphones
Laptops
PlayStation 3 and PlayStation 4
Xbox One
16. Pros
Small and efficient processor
Better battery life
Lower cost
Increased performance for parallel applications
17. Cons
A discrete CPU and GPU can provide more power
New software design models
18. References
1. Shan, Amar (2006). Heterogeneous Processing: a Strategy for Augmenting Moore's Law.
Linux Journal.
2. A Survey Of Techniques for Architecting and Managing Asymmetric Multicore Processors,
ACM Computing Surveys, 2015.
3. AMD
4. Wikipedia