Taking Stock of How Far We’ve Come

Intel® Developer Tools and oneAPI

Get the Latest on All Things CODE

author-image

作者

When we introduced Intel compilers, libraries, and performance analysis tools over thirty years ago, the market was skeptical. With more than three decades of proven value, the recent introduction of Intel’s 2024 software development tools is accepted as a key value that Intel brings to software developers. In 2018, when Intel introduced the idea of “open accelerated computing” support with oneAPI, once again the reception was skeptical. The idea was accepted as good, but the obstacles faced in a proprietary world were cited as being possibly too large for anyone — even Intel — to overcome. But I can feel a change happening, and it’s taking root! Please allow me to share a perspective on the important shift that is happening because it will affect us all and will really matter for everyone involved with creating and using accelerators. 

Two Key Announcements 

Two recent announcements attest to the progress being made in advancing a standards-based approach and delivering tools to support them: 

  1. Unified Acceleration Foundation Forms to Drive Open Accelerated Compute and Cross-Platform Performance 
  2. Available now: 2024 Software Development Tools from Intel 

Unified Acceleration Foundation 

Open standards and open source excel only with open governance. Ensuring open governance is exactly what happened when the Linux Foundation announced the creation of the Unified Acceleration Foundation (UXL). This is the future of oneAPI, which first took form in 2019. It was a different approach for a major vendor (Intel) to take with their software stack for accelerated computing because it emphasized open standards and embraced support for every device, regardless of vendor or architecture. 

Fast forward from 2019 to now, and we see that oneAPI has enjoyed enough support for multiple architectures and vendors to make it obvious this is a promising idea. Some vendors still resist, but as more innovative hardware appears on the market their opinions matter less and less. Therefore, it was time for full-fledged, Linux Foundation-style governance for the oneAPI specification and oneAPI projects. Intel is contributing all our oneAPI open-source projects to the foundation so that our voice in their direction is now just one of many. Open governance is best for us all. 

Intel® Software Development Tools for 2024 

Intel’s software development tools are established and trusted worldwide. Intel® compilers and libraries have product histories spanning over three decades. Intel tools have always excelled at supporting open standards, including C, C++, Fortran, Python*, OpenMP*, MPI, and SYCL*. With the advent of AI, FPGAs, and GPUs, new libraries and tools have been added with the same commitment to “second to none” support of Intel® hardware. Since the release of oneAPI in 2019, the tools have opened to include support for non-Intel hardware in the best way possible: by using plug-ins to access the best support available. For instance, the Intel® C/C++ compiler needs to produce code for non-Intel accelerators when code is written in SYCL. This is because the SYCL standard (from the Khronos Group Inc.) aims to maintain support for all vendors and all architectures while presenting a “single source” coding style. Therefore, the Intel compiler allows plug-ins that add other support. For example, current plug-ins from Codeplay add NVIDIA and AMD support. The open-source support for NVIDIA and AMD GPUs in the LLVM ecosystem makes this possible. The results are highly competitive. In both 2022 and 2023, tests have shown that CUDA* vs. SYCL and HIP vs. SYCL results on NVIDIA and AMD hardware are roughly equivalent. 

The oneAPI Math Kernel Library (oneMKL) effectively does a plug-in model, too. Using a common API, code is dispatched efficiently to Intel® oneMKL for best performance on Intel, cuBLAS for NVIDIA* GPUs, and rocBLAS for AMD* GPUs. Another example of aiming to ensure support for each architecture/vendor is the best of the best. 

Use the Whole Computer 

For the best results, we must program our computers holistically. In other words, we need to use all the capabilities in the system, regardless of vendor and architecture. To do this, we need open standards, open source, open governance, and open minds to solve all the problems needed to make this happen. The good news is that the two announcements highlighted above demonstrate that much of what we need exists today. This wasn’t true four years ago. 

More than a few development projects have succeeded at foregoing proprietary approaches in favor of being fully open. We need open standards with open governance. Thank you, ISO, ANSI, Khronos, OpenMP, and Linux Foundation. We need great implementations that do not hinder access to the best support for any hardware, as needed. Thank you Intel for giving us that with Intel tools. 

Why is Intel so excited about open? Because we know it is what developers want — those developing innovative software to use accelerated computing and those developing innovative new accelerator hardware. Sometimes it feels like the early days of Linux when many detractors asked why we were not simply happy with Windows and UNIX. It was all about open then, and it is all about being open now. I am proud to be part of a team helping Intel be a leading advocate for open accelerated computing. 

Of course, we have a certain bias towards Intel hardware designs, but that is now complemented by a love of hardware designs from non-Intel designers who are trusting in Intel fabs to produce their parts in the future. That is why you can count on Intel’s commitment to open. No wonder our CEO published An Open Letter to an Open Ecosystem two years ago! 

Open Is the Future 

There is a growing community of users hooked on the open approach of oneAPI, and the dependability and value of Intel tools. Intel tools have over three decades of strong standards support and a history of helping with performance optimization. Intel tools have been boosted by four years of oneAPI, with the philosophy of favoring open accelerator support. oneAPI has been picked up for open governance by the Linux Foundation. The future for a truly open way to program accelerated computing is in our grasp. Get involved! Try the tools. Try the approaches. Get involved in UXL. It is not perfect, but your interest and feedback will help make it better. Open is what we all need. Even the few that might still doubt it today.