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
15th Real Time Linux Workshop, October 28 to 31, 2013 at the Dipartimento Tecnologie Innovative, Scuola Universitaria Professionale della Svizzera Italiana in Lugano-Manno, Switzerland
Announcement - Call for participation (ASCII) - Hotels - Directions - Agenda - Paper Abstracts - Presentations - Registration - Abstract Submission - Sponsors - Gallery
Improving Real-Time Performance on Multicore Platforms
Heechul Yun, University of Kansas
Using multicore processors for real-time systems is challenging because of high performance variations due to contention in the shared hardware resources – e.g., shared last level cache (LLC), hardware prefetcher, DRAM controller, and DRAM.
In our previous work, we presented a kernel level approach, called MemGuard, which minimizes such performance variations by providing per-core memory (DRAM) bandwidth guarantee. It was evaluated using the SPEC2006 benchmark suite on a restricted hardware configuration in which cores use neither shared caches nor hardware prefetchers. However, because it used the SPEC2006 suite (non-real-time applications) and the average instruction-per-cycle (IPC) metric, its impacts on real-time applications were not shown in the work. Also, its effectiveness in the presence of other shared hardware resources---a shared LLC and hardware prefetchers – was not shown, as it was mainly evaluated on a platform with per-core private cache and no hardware prefetchers (manually disabled).
In this work, we present a case study of a real-time system (which runs two applications: a periodic real-time application with a given deadline and a non-real-time application) and demonstrates how MemGuard can be configured to deliver required real-time performance without significantly sacrificing the CPU utilization in three different hardware configurations – including one that shares a LLC and uses hardware prefetchers.
In this study, contention in shared resources cause 31 ~ 108% WCET increases of the real-time application, depending on hardware configurations, resulting 28 ~ 62% deadline violations. Using MemGuard, we can configure the system to eliminate all deadline violations with only causing 14~29% CPU utilization reduction of the non-real-time application. The results suggest that MemGuard can provide controllable real-time performance at a reasonable cost. Moreover, it is shown to be effective even in the presence of the shared LLC and/or hardware prefetchers, albeit to a lesser extent.