110 likes | 233 Vues
This research discusses the significance of predictable scheduling in the effective operation of software modems, which rely on host CPU signal processing. The paper highlights the crucial need for low latency responses, particularly in background real-time tasks, to coexist with other system activities. By utilizing different scheduling techniques such as DPC, THR, and RES contexts, it demonstrates how to optimize resource utilization. The findings emphasize that while interrupt handling is important, threads can alleviate unnecessary overhead, ensuring the modem performs well even under real-time constraints.
E N D
Predictable Scheduling for a Soft Modem Michael B. Jones – Microsoft Research Stefan Saroiu – University of Washington
Why Study Soft Modems ? • Signal Processing done on host CPU: • requires predictable scheduling • requires low latency responses • While coexisting with other system activities • Soft Modem is a background real-time task • Successful in home computer market: • Low cost • Easy to update – software upgrade
Driver versions (INT/DPC/THR/RES) • Vendor version (INT) : 1. DMA transfers between A/D and D/A and physical memory 2. when enough data samples, the modem raises an interrupt 3. inside ISR, process incoming data and provide outgoing samples, before buffers exhausted • Signal processing routines executed: • in a DPC context (DPC) • in a thread context (THR) scheduled by NT scheduler • in a thread context (RES) scheduled by a real-time scheduler based on Rialto/NT
Interrupt Rate 3 different phases, interrupts very regular
Elapsed Times in ISR (INT) 1.8 ms on a Pentium II 450 with a repeatable worst case of 3.3 ms PC 99 recommends maximum time during which a driver-based modem disables interrupts should not exceed 100 µs
CPU Utilization 16% sustained CPU load
CPU Reservation Abstraction and Implementation • CPU Reservation abstraction: • ongoing reservation for X time units out of every Y units for a thread • Implementation limitation: • CPU Reservations must be multiples of milliseconds
File Transfer Times Results for 10 copies of 200,000 bytes each For 1/8, 2/15, 3/17, 4/17, 7/20 no test passed
Modem Reservation Ranges Nonlinear behavior If period < 12.5ms, must get 16% to work If period > 12.5ms, (period – amount) >= 12.5ms must also hold
Conclusions • Signal Processing in interrupt context is: • Unnecessary • Detrimental to the predictability and latencies of the coexisting activities • The DPC version has similar problems • Threads help alleviate these problems • Modem runs well with real-time priorities and non-real-time competition • Real-time scheduler allows control over modem’s degree of interference with other time-sensitive activities
For More Information • See Mike Jones (mbj@microsoft.com): • research.microsoft.com/~mbj/ • or me, Stefan Saroiu (tzoompy@cs.washington.edu): • www.cs.washington.edu/homes/tzoompy • Tech Report available shortly