Highlights from ISC 2023 in Hamburg, Germany
We have exciting updates from the recent ISC Conference & Exhibition, where renowned industry experts demystified the latest technologies, tools, trends, and techniques in high performance computing, machine learning, data analytics, and quantum computing.
Attendees were delighted to meet face-to-face to network and discuss new trends, especially when it came to oneAPI and SYCL, which were two of several important topics highlighted at the conference to drive open accelerated computing.
What is ISC?
ISC High Performance 2023 is an international conference and exhibition where technology titans and enthusiasts unite to fuel the growth of a global High-Performance Computing (HPC) community of technology providers and users. This growing community now includes pioneers from the realms of machine learning, data analytics, and quantum computing.
From its humble beginnings in 1986, the ISC conference has evolved into an unparalleled gathering of the brightest minds who come to exchange visions, ideas, and knowledge. Held in the captivating city of Hamburg, Germany, from May 21 to 25, ISC 2023 beckoned over 3,000 international attendees to imagine the dawn of a limitless future.
Multi-Architecture Computing and the oneAPI Standard
https://www.youtube.com/watch?v=MEvo8rgELck
Doug Black, editor-in-chief at Inside HPC, interviewed Joe Curley from Intel about the company’s support for multi-architecture computing and open software development. They discussed oneAPI, which is a standard programming model that allows developers to utilize different types of accelerators from one source code. This means that developers can write one program that can run on CPUs, GPUs, FPGAs and accelerators without having to write new code for each one.
oneAPI is important in today’s multi-processing and workload-intensive environment because as data-intensive jobs and computing for data continue to grow, there is a need for various novel computer architectures. Because oneAPI enables developers to write software for multiple platforms, it helps boost application performance, increase productivity, and allow for greater innovation.
A large emphasis was placed on artificial intelligence (AI) at this year’s ISC conference as AI plays a crucial role in high-performance computing (HPC) by enhancing its capabilities and enabling breakthroughs in various fields. HPC involves using powerful computers to process vast amounts of data and perform complex calculations at incredible speeds. AI brings the ability to analyze and understand this data, which makes HPC systems smarter and more efficient. By incorporating AI techniques such as machine learning and deep learning into HPC, researchers and scientists can uncover valuable insights, discover patterns, and solve intricate problems that were previously unfeasible. AI algorithms can optimize HPC workflows, enhance system performance, and automate tasks, thereby accelerating scientific discoveries, enabling advanced simulations, improving healthcare diagnostics, optimizing energy consumption, and aiding in many other critical applications. In essence, AI empowers HPC to leverage its computational power effectively, making it an indispensable tool for innovation and progress in numerous domains.
During the pandemic, AI powered by HPC was behind many of the crucial breakthroughs in the battle against COVID-19, from rapidly sequencing the genomes of new virus strains to designing drugs and vaccines.
Heterogeneous Programming in Modern C++ with SYCL
Headed by Rod Burns—VP of Ecosystem at Codeplay Software and oneAPI Community Forum Steering Committee Chair—along with other notable speakers, this tutorial provided developers with the knowledge they need to start creating parallel applications using C++ and the SYCL programming model. SYCL sits at the heart of oneAPI, with many of its components using this to bring portable performance to different processors. Its aim was to empower attendees with the skills required to build high-performance applications that can be used in fields like HPC and AI. These applications can also be deployed on different hardware platforms.
Parallel programming is a technique that allows developers to make the most of different types of computer processors, such as GPUs, FPGAs, XPUs, IPUs, TPUs, or specialized units on CPUs. By using parallel programming, developers can greatly improve the performance of applications.
SYCL is an open standard programming model that enables developers to support various processors from different manufacturers using a single code base written in modern standard C++. This means that they don’t have to write separate code for each processor, making their work easier and more efficient.
The tutorial explored how SYCL can be used to write complex applications, and it introduced developers to tools and libraries that support the development of SYCL applications to provide additional functionality, expand capabilities, and make it easier for developers to utilize SYCL for parallel programming across a range of hardware platforms.
Attendees were able to actively engage in hands-on exercises that represented common design patterns encountered by those developing software for accelerators such as GPUs. By the end, attendees had achieved practical experience in deploying their code to multiple processors from different manufacturers.
Heterogeneous Programming in Modern C++ with Khronos SYCL
This discussion included a panel of engineers and computer scientists from organizations involved in implementing SYCL as well as developers of applications using SYCL. The discussion covered topics such as the features of SYCL, its portability, the tools available, and the overall ecosystem. The speakers offered their insights and answered questions from the audience, with the aim of introducing newcomers to SYCL and providing support for those already working with SYCL to deliver HPC workloads efficiently.
SYCL helps scientists and researchers write code for powerful hardware accelerators used in HPC. It offers a way to program these accelerators in a consistent and portable manner, regardless of the specific hardware being used. SYCL is an open standard, meaning it’s free for anyone to use and participate in its development under the guidance of Khronos, the organization overseeing the standard.
There are several implementations of SYCL available, both open source and commercial, supporting a wide range of hardware devices. These implementations make it possible to take advantage of accelerators for various computing tasks, opening up new possibilities for faster and more efficient calculations.
SYCL has emerged as a widely adopted programming model for dispatching modern C++ workloads to different types of powerful devices, enabling the next level of computing called “EXAscale.” It has gained popularity due to its compatibility with accelerators from major hardware vendors. SYCL is developed and maintained by multiple members within the Khronos organization, who are actively involved in defining and advancing heterogeneous parallelism in ISO C++, a widely used C++ programming standard.
Porting numerical integration codes from CUDA to oneAPI: a case study
Computer Science Ph.D. candidate Ioannis Sakiotis shared his research and experience with adapting optimized CUDA programs to work with oneAPI. Specifically, he focused on numerical integration, particularly the CUDA implementations of PAGANI and m-Cubes. During his research, he encountered a number of difficulties that led to a decrease in performance when porting the programs to oneAPI. These challenges included differences in how registers are used by each thread, variations in compiler optimizations, and the need to find equivalent functions in the oneAPI framework to replace the CUDA library calls. Sakiotis and fellow researchers took steps to address these challenges to ensure that the oneAPI versions of PAGANI and m-Cubes were functioning properly.
To evaluate the effectiveness of their porting efforts, the researchers conducted tests using various types of integrals with different characteristics. They measured the performance of both the CUDA and oneAPI implementations on the Nvidia V100 GPU, and collected important data to compare the two versions.
Their findings revealed that, in many cases, the oneAPI ports performed similarly to the original CUDA versions. The differences in performance were minimal, with the oneAPI versions being at most 10% slower than their CUDA counterparts. This demonstrates that the efforts put into adapting the programs to oneAPI were successful in maintaining comparable performance levels.
Overview of oneAPI ISC DevSummit 2023
The topics included at this year’s ISC were expansive and meant to be a timely response to the challenges in HPC, machine learning, data analytics, and quantum computing. Topics covered included system architecture, parallel programming models and performance modeling, as well as applications and algorithms.
System architecture determines the foundation and capabilities of high-performance computing systems. By exploring system architecture at the summit, attendees enhanced their understanding for how to optimize the design of these systems to meet the increasing demands of computational tasks.
Parallel programming models and performance modeling are essential in maximizing the efficiency and scalability of applications running on parallel computing architectures. With the growing complexity of parallel systems, it becomes crucial to develop effective programming models and techniques that can leverage the available resources efficiently. Performance modeling helps in analyzing and predicting the behavior of applications, aiding in optimization and resource allocation.
Applications and algorithms play a vital role in driving advancements in HPC, machine learning, and data analytics. Attendees were able to explore innovative applications and algorithms to address real-world challenges. By discussing practical use cases and algorithmic advancements, attendees were better able to understand the development of efficient and effective solutions.
Machine learning has emerged as a transformative technology in various domains. By exploring machine learning, participants gained insights into the latest advancements, algorithms, and applications in this field. This knowledge enabled them to better harness the power of machine learning to solve complex problems and make informed decisions.
Quantum computing represents the next frontier in computation. Its potential to solve problems that are currently intractable by classical computers makes it a significant area of interest. By exploring quantum computing at this year’s summit, attendees were able to better understand its principles, algorithms, and applications, and contribute to the advancement of this rapidly evolving field.
Watch the entire ISC 2023 summit on demand to enhance your knowledge and skills in the field of HPC and learn about the latest technologies, tools, programming models, and best practices to gain valuable insights and expertise that can be applied to your own projects with improved proficiency.
Go to oneAPI.io to learn more about the programming model.
You can also access a curated list of awesome oneAPI and SYCL projects for solutions across industry and community at https://github.com/oneapi-community/awesome-oneapi