Merge branch 'master' of github.com:mininet/mininet into patches/fix_sshd
Conflicts: examples/cpu.py
This commit is contained in:
+6
-2
@@ -8,7 +8,7 @@ from mininet.net import Mininet
|
||||
from mininet.node import CPULimitedHost
|
||||
from mininet.topolib import TreeTopo
|
||||
from mininet.util import custom, waitListening
|
||||
from mininet.log import setLogLevel, output
|
||||
from mininet.log import setLogLevel, output, info
|
||||
|
||||
from time import sleep
|
||||
|
||||
@@ -26,7 +26,11 @@ def bwtest( cpuLimits, period_us=100000, seconds=5 ):
|
||||
host = custom( CPULimitedHost, sched=sched,
|
||||
period_us=period_us,
|
||||
cpu=cpu )
|
||||
net = Mininet( topo=topo, host=host )
|
||||
try:
|
||||
net = Mininet( topo=topo, host=host )
|
||||
except:
|
||||
info( '*** Skipping host %s\n' % sched )
|
||||
break
|
||||
net.start()
|
||||
net.pingAll()
|
||||
hosts = [ net.getNodeByName( h ) for h in topo.hosts() ]
|
||||
|
||||
@@ -2,6 +2,17 @@
|
||||
|
||||
"""
|
||||
Test for cpu.py
|
||||
|
||||
results format:
|
||||
|
||||
sched cpu client MB/s
|
||||
|
||||
cfs 45.00% 13254.669841
|
||||
cfs 40.00% 11822.441399
|
||||
cfs 30.00% 5112.963009
|
||||
cfs 20.00% 3449.090009
|
||||
cfs 10.00% 2271.741564
|
||||
|
||||
"""
|
||||
|
||||
import unittest
|
||||
@@ -16,8 +27,9 @@ class testCPU( unittest.TestCase ):
|
||||
def testCPU( self ):
|
||||
"Verify that CPU utilization is monotonically decreasing for each scheduler"
|
||||
p = pexpect.spawn( 'python -m mininet.examples.cpu' )
|
||||
# matches each line from results( shown above )
|
||||
opts = [ '([a-z]+)\t([\d\.]+)%\t([\d\.]+)',
|
||||
'please enable RT_GROUP_SCHED', pexpect.EOF ]
|
||||
pexpect.EOF ]
|
||||
scheds = []
|
||||
while True:
|
||||
index = p.expect( opts, timeout=600 )
|
||||
@@ -27,11 +39,9 @@ class testCPU( unittest.TestCase ):
|
||||
bw = float( p.match.group( 3 ) )
|
||||
if sched not in scheds:
|
||||
scheds.append( sched )
|
||||
previous_bw = 10 ** 4 # 10 GB/s
|
||||
self.assertTrue( bw < previous_bw )
|
||||
else:
|
||||
self.assertTrue( bw < previous_bw )
|
||||
previous_bw = bw
|
||||
elif index == 1:
|
||||
self.skipTest( 'please enable RT_GROUP_SCHED' )
|
||||
else:
|
||||
break
|
||||
|
||||
|
||||
Reference in New Issue
Block a user