lkml.org 
[lkml]   [2008]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: High wake up latencies with FAIR_USER_SCHED
Unfortunately it seems to not be completely fixed, with this script:

#!/usr/bin/python

import os
import time

SLEEP_TIME = 0.1
SAMPLES = 5
PRINT_DELAY = 0.5

def print_wakeup_latency():
times = []
last_print = 0
while True:
start = time.time()
time.sleep(SLEEP_TIME)
end = time.time()
times.insert(0, end - start - SLEEP_TIME)
del times[SAMPLES:]
if end > last_print + PRINT_DELAY:
copy = times[:]
copy.sort()
print '%f ms' % (copy[len(copy)/2] * 1000)
last_print = end

if os.fork() == 0:
if os.fork() == 0:
os.setuid(1)
while True:
pass
else:
os.setuid(2)
while True:
pass
else:
os.setuid(1)
print_wakeup_latency()

I get seemingly unpredictable latencies (with or without the patch applied):

# ./sched.py
14.810944 ms
19.829893 ms
1.968050 ms
8.021021 ms
-0.017977 ms
4.926109 ms
11.958027 ms
5.995893 ms
1.992130 ms
0.007057 ms
0.217819 ms
-0.004864 ms
5.907202 ms
6.547832 ms
-0.012970 ms
0.209951 ms
-0.002003 ms
4.989052 ms

Without FAIR_USER_SCHED, latencies are consistently in the noise.
Also, I forgot to mention that I'm on a single CPU.

Thanks for the help.

--
Guillaume


\
 
 \ /
  Last update: 2008-01-28 21:17    [W:0.071 / U:1.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site