SlideServe
Menu
Préférences
© SlideServe · v2026

Jimi Watson

romeo avatar
21 diapositives · 371 Views · Sep 09, 2014

Supporting Time-Sensitive Applications on a Commodity OS by Ashvin Goel, Luca Abeni, Charles Krasic, Jim Snow, Jonathan Walpole. Jimi Watson. Why?. Time sensitive applications Enhancing resource allocation Throughput Insignificant degradation. Four keys. Timing mechanisms Timer latency

Jimi Watson - slide 1
01 / 21Jimi Watson
1 / 17

Télécharger la présentation

Jimi Watson
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Supporting Time-Sensitive Applications on a Commodity OSbyAshvin Goel, Luca Abeni, Charles Krasic, Jim Snow, Jonathan Walpole Jimi Watson

  2. Why? • Time sensitive applications • Enhancing resource allocation • Throughput • Insignificant degradation

  3. Four keys • Timing mechanisms • Timer latency • Responsive Kernel • Preemption latency • CPU scheduling algorithm • Scheduling latency • Use them all

  4. Timers • Periodic timers • The old model • Shortest period 10msec • One-shot timers • Interrupts at specific instance • Reprogram • Soft timers • Handles events at soft timer points

  5. Timers Comparison • Hard timers • Interrupt handling • Cache pollution • Soft timers • Polling for expired events • Firm timers • Better precision • Fewer interupts

  6. Firm Timers • Combination of soft and one shot timers • Use soft timers to reduce overhead • Use one-shot timers to ensure events are handled • Overshoot

  7. Example of overshoot 0 5 10 Time Last event handled Next event Overshoot

  8. Firm timer implementation • Timer queue • APIC is set to next timer event plus global overshoot value • Possible to have overshoot for separate timers • Apps with tighter constraints incur penalty • Overhead is simply additional queue and overshoot • Periodic timers used for long timeouts • One shot timers only within 1 tick period • POSIX interface calls altered to take advantage of firm timers on TSL

  9. Kernel preemptibility • May not be preemtible • Interrupts disabled • Executing in critical section • Solution • Shorten the length it is not preemptible • Explicit preemption points • Lock breaking preemtible kernel

  10. Scheduling • Proportion-Period scheduling • Priority CPU scheduling

  11. Proportion-Period scheduling • Temporal protection • Every time sensitive task requires specification of proportion and period • Proportion is how much CPU it needs • Period is how often the task needs CPU to guarantee proper function

  12. Proportion Scheduling CPU CPU CPU CPU Time Periods

  13. Priority scheduling • Priority assigned based on application needs • Run in the background • Priority inversion

  14. Priority inversion

  15. Testing • Compare Linux, soft timers, hard timers and firm timers • Multiple applications • Each require 10 msec intervals

  16. 20 processes, 10 msec

  17. 50 processes , 10 msec

  18. 20 processes, 1 msec

  19. Testing • Difference between hard and firm timers • Firm timers have lower overhead when a percentage of soft timers fire per poll • Ns/Nc > 2.1 % • Variation > 400 usec under heavy loads • Low overhead on throughput loads

  20. Conclusions • Better performance for all applications • Gracefully handles soft real time apps • Very little impact on throughput • Useful general purpose OS