Image

Interview: Manju Hegde Talks About AMD's Heterogeneous System Architecture

Nov. 7, 2013
AMD’s Heterogeneous System Architecture (HSA) is a hardware framework that provides Heterogeneous Uniform Memory Access (HUMA) to CPUs and GPUs. The reason for putting it in the software category is because it radically changes the way CPUs and GPUs will interact at the software level.

Manju Hegde is Corporate Vice President, Heterogeneous Applications and Developer Solutions at AMD.

is changing the software equation with its Heterogeneous System Architecture (HSA) design (see Unified CPU/GPU Memory Architecture Raises The Performance Bar). It is a hardware architecture based on their APU (accelerated processing unit) that combines CPU and GPU cores. HSA takes the combination a step further with HSA that provides a single address space for the CPU and GPU cores. The unified approach is going to have a major impact on software development which is why AMD's technology received the Best of 2013 Embedded Software award.

I talked with Manju Hegde, Corporate Vice President, Heterogeneous Applications and Developer Solutions, about HSA.

Wong: What is the Heterogeneous System Architecture?

Hegde: HSA is a revolutionary system architecture intended to make CPU, GPU, DSP and other processors work together in harmony by improving programmability. It provides a much better power efficient computing by unlocking the entire compute performance of the APU or SoC. It does this by giving  all-processors-equitable  access to memory and other resources. HSA is an industry standard designed to improve the programmability of heterogeneous systems.

Wong: What are the main components of HSA?

Hegde: HSA provides a uniform memory architecture for heterogeneous computing devices, and an architected queuing mechanism for efficient processor-to-processor communication. For instance in AMD’s APU

  • hUMA defines how processors inside an APU access memory
  • hQ defines how processors inside an APU interact with each other to handle computational tasks

Wong: Can the architecture work with different CPU and GPU architectures?

Hegde: Yes.  HSA Foundation is an industry standards body  and its members include AMD, ARM, Imagination Technologies, Samsung, Texas Instruments, Qualcomm, and more – these vendors support a wide variety of CPU, GPU, and DSP architectures.

Wong: What impact will HSA have on programming and applications?

Hegde: HSA changes everything with respect to how accelerated devices are programmed.  Programmers can get the power and performance benefits of accelerated devices using the same programming techniques used for multicore CPU devices.

Wong: What software tools are being developed to take advantage of the architecture?

Hegde: HSA acceleration will be supported by popular languages and platforms. On the client side this includes C/C++, OpenCL, JavaScript, and Java/Android Renderscript. On the server side there is Java, C/C++  & Fortran with OpenMP, Python, JavaScript, and R.

Embedded developers will typically use C/C++, OpenCL, and Java. HSA will accelerate widely used libraries. This includes popular “domain” libs such as libraries used for language acceleration. Popular domain-specific libraries for math, media, vision, analytics, and simulation are also in the mix.

HSA has support from the top Linux variants including Ubuntu, RHEL, SLES, Android, and Yocto. These provide comprehensive tools, SDKs and community support.

Wong: How will programmers be able to take advantage of the architecture?

Hegde: Programmers will use existing programming models such as Java or C++.  Similar to multi-core CPU programming, programmers will need to identify parallel code regions, but can benefit from additional performance provided by hardware designed for efficient data-parallel execution such as GPUs.

  • Programmers will be able to create the next wave of game-changing and differentiated GPU-accelerated applications that will work across X86 and ARM platforms using familiar programming tools and existing skill sets. Some of the benefits include:
  • Familiar and Powerful Programming Models. Dramatically ease the programming for heterogeneous parallel devices by using familiar development languages (Python, C++ and Java) and existing skill sets and without the complexity of using special purpose APIs 
  • Low Development Costs. HSA is an industry standard architecture that enables your applications to run across multiple devices and hardware ecosystems.

Wong: When will hardware be available to run the software?

Hegde: Kaveri will be the first APU to take advantage of HSA Features

About the Author

Manju Hegde | Corporate Vice President, Heterogeneous Applications and Developer Solutions

He is responsible for driving and executing AMD’s HSA strategy across the technology, marketing and business functions, engaging the client and server computing ecosystems to shape the next generation of devices, environment, tools, operating systems, and application experiences made possible by AMD’s product family of APUs, discrete GPUs, and CPUs.

Before joining AMD, Hegde was vice president of CUDA technical marketing at NVIDIA, where he focused on training and enabling researchers and developers to leverage the parallel architecture and performance of the GPU for general purpose applications.

Prior to joining NVIDIA in 2008, Hegde was co-founder and CEO of AGEIA Technologies since 2002, when he began his mission to minimize the challenge of physics in game development. Hegde was also a professor of electrical engineering at Washington University in St. Louis and at Louisiana State University.

Hegde earned his Bachelor of Electrical Engineering degree from the Indian Institute of Technology, Bombay, and his Ph. D in Computer Information and Control Engineering from the University of Michigan, Ann Arbor.

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!