Dates and Events: |
OSADL Articles:
2023-11-12 12:00
Open Source License Obligations Checklists even better nowImport the checklists to other tools, create context diffs and merged lists
2022-07-11 12:00
Call for participation in phase #4 of Open Source OPC UA open62541 support projectLetter of Intent fulfills wish list from recent survey
2022-01-13 12:00
Phase #3 of OSADL project on OPC UA PubSub over TSN successfully completedAnother important milestone on the way to interoperable Open Source real-time Ethernet has been reached
2021-02-09 12:00
Open Source OPC UA PubSub over TSN project phase #3 launchedLetter of Intent with call for participation is now available |
Real Time Linux Workshops
1999 - 2000 - 2001 - 2002 - 2003 - 2004 - 2005 - 2006 - 2007 - 2008 - 2009 - 2010 - 2011 - 2012 - 2013 - 2014 - 2015
13th Real-Time Linux Workshop from October 20 to 22 at the Faculty of Electrical Engineering, Czech Technical University in Prague
Announcement - Hotels - Directions - Agenda - Paper Abstracts - Presentations - Registration - Abstract Submission - Sponsoring - Gallery
How to cope with the negative impact of a processor's energy-saving features on real-time capabilities?
Carsten Emde, Open Source Automation Development Lab (OSADL) eG
In the early days of using computers for determinism critical tasks, processors mostly were suitable for this purpose, since instruction execution was in sync with the clock frequency. This made it possible to correctly predict the execution time of a given code segment. With the rapidly increasing need for processing power, deterministic execution was abandoned in favor of throughput. In consequence, the peak processing power of a today's state-of-the-art multi-core processor is about 1,000,000 times greater than that of a standard processor 30 years ago. The worst-case performance, however, only improved by a factor of about 10 - and even this may require specific configuration of the processor and the operating system. The main reasons for the lack of progress of the worst-case performance are the introduction of caches and energy-saving features. While the negative impact of caching on the worst-case performance could be studied in recent years and can now be handled reasonably well, the details of energy-saving are less well known. Although energy-saving most of the time boils down to switching off or at least throttling down unneeded processor components, such mechanisms can be implemented in various ways and locations and are often undocumented. It was, therefore, the aim of this project to investigate the latency behavior of modern energy-saving processors and to provide recommendations how to disable or circumvent energy-saving.
To investigate the impact of energy-saving, latency measurements no longer were performed in a short closed loop such as when using the cyclictest utility but with rarely occurring random interrupt triggers at idle state of the processor. This could lead to long latencies which were then attempted to be reduced by specific processor and Linux kernel configurations.
As a result, we now can recommend a number of individual processor settings and configuration items of the Linux kernel to optimize the worst-case system latency when modern energy-saving processors are used. In some cases, however, it was not possible to disable any deleterious effect of energy-saving on a processor's latency, although we tried very hard. Thus, we urgently appeal to semiconductor manufacturers to - whatever mechanisms they invent to reduce power consumption - provide a way to switch them off, if they adversely affect response time. In many cases, energy-saving and fast deterministic reaction to asynchronous events exclude each other.