Abstract

Physical simulation is a valuable tool in many fields of engineering for the tasks of design, prototyping, and testing. General-purpose operating systems (GPOS) are designed for real-fast tasks, such as offline simulation of complex physical models that should finish as soon as possible. Interfacing hardware at a given rate (as in a hardware-in-the-loop test) requires instead maximizing time determinism, for which real-time operating systems (RTOS) are designed. In this paper, real-fast and real-time performance of RTOS and GPOS are compared when simulating models of high complexity with large time steps. This type of applications is usually present in the automotive industry and requires a good trade-off between real-fast and real-time performance. The performance of an RTOS and a GPOS is compared by running a tire model scalable on the number of degrees-of-freedom and parallel threads. The benchmark shows that the GPOS present better performance in real-fast runs but worse in real-time due to nonexplicit task switches and to the latency associated with interprocess communication (IPC) and task switch.

Highlights

  • Real-time operating systems (RTOS) are present in the automotive industry mainly in two scenarios

  • The algorithm used for the parallelization of the solver makes the total time required for computing the time step (Ts) depend on (i) the total number of elements (n), (ii) the number of elements assigned to each thread (e = ⌊n/i⌋), (iii) the latencies associated with semaphore lock (Tipc), with task switch (Tswitch), and with the computation of a spring force (Tspring) and a mass position and velocity (Tmass), (iv) the average number of task switches (Nswitch) not due to semaphore lock and of semaphore locks (Nipc)

  • The physical simulation is run with a large time step, which means that the computation of one single step is closer to the nature of real-fast tasks

Read more

Summary

Introduction

Real-time operating systems (RTOS) are present in the automotive industry mainly in two scenarios. In the case of real-time, the performance of the system is analyzed in terms of hard real-time [6], which means that, instead of measuring the difference between the desired rate and the achieved rate (the value of Tw), we want to measure the binary condition: the system can work at this rate or not (Tw ≥ 0) This is the condition desired in HIL testing, where losing the synchronization with the ECU may cause a system failure and more in an embedded system where the consequence can be critical with the loss of human lives. To test real-fast performance, 60 seconds of simulation was run for each configuration (number of bodies and threads) without a fixed rate (Tw = Ti = 0), and the total computation time was measured. Independent results are presented for visualization of hard and soft real-time performance as well as for real-fast performance

Related Work
Choosing a Real-Time Operating System
Findings
Comparing Real-Time and General-Purpose Operating Systems
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call