示例#1
0
文件: lxc.py 项目: kopchik/perftest
def double(Popen, BGPopen, outdir, stat, benches=benches):
  remains = len(benches)**2
  for bgname, bgcmd in benches.items():
    for name, cmd in benches.items():
        wait_idleness(IDLENESS)
        bgp = BGPopen(bgcmd)
        log.debug("warming up for %s" % WARMUP_TIME)
        time.sleep(WARMUP_TIME)

        log.debug("remains %s tests" % remains)
        remains -= 1
        output = "%s/%s/%s" % (outdir, bgname, name)
        if not exists(dirname(output)):
            makedirs(dirname(output))
        # start
        p = Popen(cmd)
        log.debug("warming up for %s" % WARMUP_TIME)
        time.sleep(WARMUP_TIME)
        # measurement
        log.debug("starting measurements")
        stat(output)
        # teardown
        assert p.poll() is None, "test unexpectedly terminated"
        log.debug("finishing tests")
        p.killall()

        assert bgp.poll() is None, "background task suddenly died"
        bgp.killall()
        gc.collect()
示例#2
0
文件: lxc.py 项目: kopchik/perftest
def single(Popen, outdir, stat, benches=benches):
  remains = len(benches)
  for name, cmd in benches.items():
    print("remains %s tests" % remains)
    remains -= 1
    output = outdir + '/' + name
    # prepare
    log.debug("waiting for idleness")
    wait_idleness(IDLENESS)
    log.debug("starting %s" % name)
    # warmup
    p = Popen(cmd)
    log.debug("warming up for %s" % WARMUP_TIME)
    time.sleep(WARMUP_TIME)
    # measurement
    log.debug("starting measurements")
    stat(outdir+'/'+name)
    # teardown
    assert p.poll() is None, "test unexpectedly terminated"
    log.debug("finishing tests")
    p.killall()
    gc.collect()