 Hi, I'm Charles McFarland from Code Play Software. I'm here to talk about a new open standards and open source software project for all accelerators. Now, when you're doing accelerators for artificial intelligence or cloud compute, it is very much dominated by one company, NVIDIA. NVIDIA, you can see on the right there, the market share that they have over the years, somewhere around 80%. But the problem is for NVIDIA, accelerators, their graphics processors, they are using a programming environment called CUDA. It's proprietary, it's defined by CUDA, by NVIDIA, and it's for NVIDIA, it's for their own GPUs. So it's locked to their hardware. It's limited input into, you have limited input to steer and what you contribute into CUDA is very much dictated by NVIDIA and there's some fairly substantial legals around it to limit your use of it. So it really is a proprietary lock-in that you have there. But most people that are doing programming in this environment start off with NVIDIA GPUs as an accelerator and most people use CUDA. So here we talk about, well, what is an open standard and we want to open source. So first of all, let's talk about open standards. So there's a standard called SICL, S-Y-C-L. It's defined by the Cronus organization and they define and work to create with industry many software standards out there. So SICL is very close and an alternative to CUDA. The thing about SICL is though, it's an open standard and anybody can use it. It's based on a modern C++ and it's available and you can run that on multiple pieces of hardware. So already you've removed some of the issues that you have with NVIDIA and the CUDA GPUs. So it's C++, open standard, multiple hardwares out there. So it'll run on GPUs, AI processors, you've got accelerators, FPGAs and there's many other processors out there. Especially today, there's many other AI accelerators out there. So that's the standard part of it. Now what about the open source part of it? The one API is all the other parts that go around it. There's an implementation of this open standard called SICL. There's all the libraries around it. The DNN libraries, the Blaster libraries, it integrates with a lot of the other frameworks, AI frameworks and libraries that are out there. It also provides you with some of the lower levels. So if you've got a new processor, it allows you to build up and enable that processor, these new processors with one API and with SICL. So one API is the whole open source ecosystem around it and it's based on SICL as a programming environment which is open standard. So already you've got application developers and people that develop big systems should be very interested in this by now. So you're starting on the left there, you've got a lot of individual different programming environments going down to your different pieces of hardware and where you want to go to is over to the right to give you a single programming environment where you can program down to heterogeneously the multiple different processor types that are out there. And that includes NVIDIA and AMD who are the leaders in accelerating with their GPUs and you've got Intel, you've got other RISC-5, RISC-5 is an instruction set processor with many people coming out with accelerators based on that and all these other ones that are out there. So the first thing is you've got to move from, and here we talk about CUDA across to SICL. So the portability, so you want to migrate your code from CUDA across on to SICL and use this tool that's part of one API called SICL-O-Matic, an automatic way of migrating across, and it'll do most of your code for you. And the second part is you want to achieve this performance and there are tools to automatically optimize your code and guide you to how to get performance out of it. So performance and portability are two very important components of this. So you've started to coexist with your software in SICL and CUDA, you can run them both back onto your NVIDIA GPU and you're not going to move your hardware until you've got the software worked out. So then you start using these plugins that will take you from SICL down into your NVIDIA hardware or your AMD hardware. And actually that's what our company does, CodePlay software, we provide these plugins to allow you to migrate your code over and run it back onto your existing assets, your GPUs from AMD and NVIDIA. So then when you're ready, you can start migrating to a different set of hardware. And the final slide here is all about performance. There's many studies out there, we're not going to go through these, but I wanted to put them in here so that you could have a reference point for it. So one API in SICL is really the way forward to get platform independence on your software. Thank you everyone, enjoy your evening.