Diff for /wikisrc/projects/project/tickless.mdwn between versions 1.2 and 1.3

version 1.2, 2016/02/22 20:52:49 version 1.3, 2017/08/03 14:35:58
Line 25  But today, CPUs run at GHz; timers on mo Line 25  But today, CPUs run at GHz; timers on mo
  10 ms resolution for sleep times; and mandatory periodic activity on   10 ms resolution for sleep times; and mandatory periodic activity on
  idle machines wastes power.   idle machines wastes power.
   
 There are three main miletones to this project:  There are four main miletones to this project:
   
 1. Design a machine-independent high-resolution timer API, implement it  1. Choose a data structure for high-resolution timers, and a way to
  on a couple machines, and develop tests to confirm that it works, in   request high-resolution vs low-resolution sleeps, and adapt the
  order to enable high-resolution sleeps.   various timeout functions (`cv_timedwait`, etc.) to use it.
   The current call wheel data structure for callouts provides good
    performance, but only for low-resolution sleeps.
   We need another data structure that provides good performance for
    high-resolution sleeps without hurting the performance of the existing
    call wheel for existing applications.
   
 2. Convert all the functions of the periodic 10 ms timer, `hardclock',  2. Design a machine-independent high-resolution timer device API,
    implement it on a couple machines, and develop tests to confirm that
    it works.
   This might be done by adapting the `struct timecounter` interface to
    arm it for an interrupt, or might be done another way.
   
   3. Convert all the functions of the periodic 10 ms timer, `hardclock`,
  to schedule activity only when needed.   to schedule activity only when needed.
   
 3. Convert the various software subsystems that rely on periodic timer  4. Convert the various software subsystems that rely on periodic timer
  interrupts every tick, or every second, via   interrupts every tick, or every second, via
  [callouts](http://netbsd.gw.com/cgi-bin/man-cgi?callout++NetBSD-current),   [callouts](http://netbsd.gw.com/cgi-bin/man-cgi?callout++NetBSD-current),
  either to avoid periodic work altogether, or to batch it up only when   either to avoid periodic work altogether, or to batch it up only when
Line 43  There are three main miletones to this p Line 54  There are three main miletones to this p
 """  """
 ]]  ]]
   
 [[!tag gsoc]]  
   
   [[!tag gsoc]]

Removed from v.1.2  
changed lines
  Added in v.1.3


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb