RTS Hypervisor: Workload Consolidation for Real-Time AI
Real-Time Systems explains how its new RTS Hypervisor uses hardware partitioning and Intel® Time Coordinated Computing (TCC) to improve real-time performance and operational consistency for multiple AI-based workloads. The hypervisor allows you to combine any operating system with any Intel® processor, and you can virtualize devices and their IoT connectivity individually. Some functionality is detected and activated automatically.
Host: Hello, and welcome to this session on real-time workload consolidation with RTS hypervisor. Today, we'll be hearing from Michael Reichlin from Real-Time Systems who will explore RTS' hypervisor technology for workload consolidation in industrial automation, where determinism and hard time performance is a must. Let's get started. Michael, take it away.
Michael Reichlin: Hello, everybody. And thank you to joining the breakout session. It's a great pleasure to be speaking here about the real-time workload consolidation with our RTS hypervisor. So of course, workload consolidation is not new, but during my presentation, I will like to show you some details, how to combine the new Intel processors with our RTS hypervisor. So, but before we start or we go into detail, I would like to introduce myself. So my name is Michael Reichlin, I'm the head of sales and marketing here at RTS. RTS is based in Ravensburg, it's a small city in Germany. In 2006, Real-Time System was founded as a spin out from KUKA robotics. And from the beginning, the focus was always on x86 space virtualization for the industrial automation. After three years of development, our first hypervisor version was released to customers. And since there, we got a lot of new projects and during the last couple of years, we support and improve our hypervisor so that you will have the best workload consolidation with our hypervisor on your platform.
Real-Time System virtualization experts are focused 100% on an x86 hypervisor, and the most important thing is hard real-time application. So during the last couple of years, the relationship with Intel gets more and more stronger. And as you can imagine, the improvement of the Intel processors were more and more efficient. So for example, like a GPU performance or the power management is just brief examples of the improvement during the years, but to ensure hard real-time performance and determinism, you need to have the right tools. And of course you need to have the knowledge. And as I said at the beginning, we are very close with Intel. We working together with a development team and that's the reason why we constantly provide additional functionality for increased real-time performances.
But let me just briefly list a few things. Real-Time System is in Intel's early access program. This means we get prototypes before new architecture will be launched by Intel so that we have the possibility to set up, to test, to integrate all the features that are supported by the new platform that our hypervisor can deliver all the features and that at the end, when the new architecture is launched, everything is ready to go. The next thing I would like to talk about is that Real-Time System is doing a co-development with Intel. So the improvement of all the features are always that we are working close together and last but not least at the end, we have early access to confidential Intel documentation.
So let's talk about the basic concept of our hypervisor. The main thing is we will not share any of the cores or any of the CPUs to have the best isolation and the best partitioning of the hardware platform. So it doesn't matter if you have two cores or 16 cores, the basic concept is always the same. So let's assume you have multiple workloads. For example, you're running a motion control at a real-time operating system. You will have high determinism, for example, 125 microseconds, and you're using four cores. And in parallel, you may want to run a vision application or an AI application based on Linux, for example, like OpenVINO and power to a real-time operating system. And as you can see here, it's completely separated, it's isolated.
Industrial industry you normally will find a HMI, or for example, you will have customer application that are based on Microsoft windows. So in this example, we will use five cores to set up the application based on Microsoft windows. And important thing at the end is of course, the connectivity to transfer data to the cloud. Normally you will have external gateway to support this functionality, but the problem is the costs of Xcel-gateway is pretty high. You will have, for example, open sockets or backdoors to assume you should use the last core in this example, to put in HOS to have the data transfer to the cloud. And the HOS of course delivers the security you need.
And so you can see with this basic concept what workload consolidation means. You can have four applications running on a single hardware platform. You have the isolation, we call it partitioning and to have the determinism on your real-time operating system. Of course, you can also use this basic concept as I explained. Smaller systems like you only have two cores, then you will have one core for motion control for the real-time application. And the second core is for HMI. That's perfectly fits into our basic concept. So here we'll just highlight a few things because workload consolidation, as I said at the beginning is not new. So for example, reducing space or reducing weight is very important. And another topic that I want to highlight is the reduced hardware costs because of elimination of separate controllers. So with the knowledge of our basic concept, can you imagine the possibilities will arise for this?
The answer is there are endless possibilities. It just depends on the number of CPUs and this is your choice. So here we have three examples. We have an HMI empowered to real-time application system, or we have an HOS empowered to two real-time operating systems. And at the end, for example, as I explained in the basic concept, you will have HOS in parallel to a GPOS for HMI, and then real time operating system to have the motion control. At the end of the day, you may ask yourself, does that work? Is it possible to have determinism on an x86 architecture with multiple operating system running in parallel? The answer is yes. As I explained, during the basic concept with our RTS hypervisor, we are separating the hardware and we are separating the operating systems. And so we have the isolation to keep the determinism on an x86 architecture.
But of course there are more issues customer, or you had to live with, just for an example, you have an operating systems that generate memory access and your real-time operating system needs data. So you need to take care about share caches. Our next example can be bandwidth. So you have of course limited resources and hardware. Unpredictable impacts. So you need to take care of the power management. And the last thing I would mention here is the impact of concurrent workloads. So you can see in the picture that all of these mentioned issues, you need to take care and handle these to get the determinism on x86 architecture. So the final question here is how to address this. The answer is with a new processor from Intel, like the Atom x6,000E Series or with a Pentium and Celeron N- and J- Series, they brings up new improvements for determinism.
So remember, the question was how to address this. Intel has identified pin points and added new features to optimize determinism. One result is Intel Time Coordinated Computing called Intel TCC. At this point, some of you may ask, so that means I just have to buy the right processors, switch on Intel TCC and everything is okay? It's not that easy. It's not just the processor. You also need to take care about the fabric, firmware and software. This has also to be tuned in order to achieve deterministic behavior. Once again, Intel TCC concern all the components like you can see in the puzzle like firmware, software, processor and fabric, our hypervisor ensure that the components working together in the best fit.
So here's the question. How complicated is it? The answer is pretty easy. We are ready to go because of our strong and sustainable relationship with Intel during the last years, and of course with a close contact, we developed and improved features for real-time applications. To make the hypervisor easy to use, we integrated into TCC in a way that you do not have to take care about details. The thing is that we detect and activate features automatically. One of the most added values is temporal portability. So this means that you can take your installation and move it from one PC to another, keeping the determinism, or you can just use your application running on an Intel Atom processor and move it to a core processor. You're still keeping the determinism. So this is temporal portability. The RTS hypervisor use Intel TCC feature to isolate critical workloads from so-called noisy neighbors to reduce jitter. This is called temporal isolation. Because of the big added value of these isolation of workloads, even for temporal or space, I would like to show you this picture here.
The main thing of isolation is to protect the real-time workloads. It doesn't matter if you have a malicious workload or you have naive workload, your real-time application keeps the determinism because of the isolation of our hypervisor. Sum it up at the end. As I mentioned, because of the partnership, the strong partnership of Intel and RTS, we deliver unique solution for best possible determinism. Intel TCC fits perfectly into the hardware separation and workload consolidation concept of our hypervisor. By using, as I explained our hypervisor, the complexity is reduced significantly. That means, for example, our hypervisor detects some functionality automatically at the beginning of a boot section. Of course Intel and Real-Time System will drive this further so that you will get the best fit of Intel TCC and RTS. So thanks for watching. And if you have any questions, feel free to ask.