Presented by Seth Hitefield, Jeffrey Vetter and Seyong Lee at GNU Radio Conference 2020 https://gnuradio.org/grcon20 Future heterogeneous computing systems, such as those planned by the DSSoC program, will be extraordinarily complex in terms of processors, memory hierarchies, and interconnection networks. To manage this complexity, architects, system software designers, and application developers need design and programming technologies to be flexible, accurate, efficient, and productive. Recently, our team has redesigned components of example GnuRadio flowgraphs to execute on various heterogeneous systems including GPUs from NVIDIA and AMD, and to NVIDIA Xavier and Qualcomm Snapdragon SoCs. Our goal is to hide the complexity of using these diverse platforms with as few changes to the source code (or interface) as possible. Our current approach uses a directive-based programming model within GR modules to offload computation to heterogeneous devices, and a new intelligent runtime scheduler to execute the workflows. We are also evaluating SYCL as an option as a programming model. The initial directive-based approach uses OpenACC as it is a portable, open programming model for heterogeneous systems; our OpenACC compiler generates tasks that are then queued and scheduled by our intelligent runtime scheduler. Our scheduler offers a configurable policy for mapping work to devices, and it dynamically tracks data placement to orchestrate data movement efficiently. Initial performance results appear promising; however, more automation will further broad deployment. Our software is available as open source software. Seth Hitefield is a Research Scientist in the Computational Sciences and Engineering Division at Oak Ridge National Laboratory. His research focus at ORNL includes software defined infrastructures for science federations and energy systems and signal processing on high-performance heterogeneous embedded systems. Prior to joining ORNL, he earned his Ph.D. and M.S. in Computer Engineering from Virginia Tech. His research focused on wireless communications security where he developed architectures for secure software radios using a defense-in-depth approach to protect system components from exploits. While at Virginia Tech, he also worked at the VT Ground Station and Space@VT on several CubeSat projects that are currently in orbit. Jeffrey Vetter is a staff scientist and group leader at Oak Ridge National Laboratory. You can learn more at https://ft.ornl.gov/~vetter/ Seyong Lee is a Senior Computer Scientist in the Computer Science and Mathematics Division at Oak Ridge National Laboratory. His research interests include parallel programming and performance optimization in heterogeneous computing environments, program analysis, and optimizing compilers. He received his PhD in Electrical and Computer Engineering from Purdue University, USA. He is a member of the OpenMP Language Committee, OpenMP Accelerator Subcommittee, and OpenACC Technical Forum, and he served as a program committee/guest editor/external reviewer for various conferences, journals, and research proposals.
Get notified about new features and conference additions.