當前位置: 首頁>>代碼示例>>Python>>正文


Python MatrixReader.prepare方法代碼示例

本文整理匯總了Python中Configuration.PyReleaseValidation.MatrixReader.MatrixReader.prepare方法的典型用法代碼示例。如果您正苦於以下問題:Python MatrixReader.prepare方法的具體用法?Python MatrixReader.prepare怎麽用?Python MatrixReader.prepare使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Configuration.PyReleaseValidation.MatrixReader.MatrixReader的用法示例。


在下文中一共展示了MatrixReader.prepare方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: runSelected

# 需要導入模塊: from Configuration.PyReleaseValidation.MatrixReader import MatrixReader [as 別名]
# 或者: from Configuration.PyReleaseValidation.MatrixReader.MatrixReader import prepare [as 別名]
def runSelected(opt):

    mrd = MatrixReader(opt)
    mrd.prepare(opt.useInput, opt.refRel, opt.fromScratch)

    ret = 0
    if opt.show:
        mrd.show(opt.testList, opt.extended, opt.cafVeto)
        if opt.testList : print('testListected items:', opt.testList)
    else:
        mRunnerHi = MatrixRunner(mrd.workFlows, opt.nProcs, opt.nThreads)
        ret = mRunnerHi.runTests(opt)

    if opt.wmcontrol:
        if ret!=0:
            print('Cannot go on with wmagent injection with failing workflows')
        else:
            wfInjector = MatrixInjector(opt,mode=opt.wmcontrol,options=opt.wmoptions)
            ret= wfInjector.prepare(mrd,
                                    mRunnerHi.runDirs)
            if ret==0:
                wfInjector.upload()
                wfInjector.submit()
    return ret
開發者ID:ZihengChen,項目名稱:cmssw,代碼行數:26,代碼來源:runTheMatrix.py

示例2: MatrixOpts

# 需要導入模塊: from Configuration.PyReleaseValidation.MatrixReader import MatrixReader [as 別名]
# 或者: from Configuration.PyReleaseValidation.MatrixReader.MatrixReader import prepare [as 別名]
    if bdir != None:
      sys.path.insert(0,bdir+'/src/Configuration/PyReleaseValidation/scripts')
    bdir=os.getenv('CMSSW_BASE', None)
    if bdir != None:
      sys.path.insert(0,bdir+'/src/Configuration/PyReleaseValidation/scripts')
    from runTheMatrix import MatrixReader
    from runTheMatrix import MatrixRunner

  newWorkFlows = False
  opts = MatrixOpts()
  try:
    mrd = MatrixReader()
  except:
    mrd = MatrixReader(opts)
    newWorkFlows = True
  mrd.prepare()

  for wf in mrd.workFlows:
    if str(wf.numId) not in testList: continue
    print "processing ", wf.numId

    if newWorkFlows: updateNewWF(wf)
    else: updateOldWF(wf)

  ret = 0
  if show:
    if not newWorkFlows:
      for i in range(0,len(testList)): testList[i] = float(testList[i])
    mrd.show(testList)
    print 'selected items:', testList
  else:
開發者ID:cms-sw,項目名稱:int-build,代碼行數:33,代碼來源:runPerfMatrix.py

示例3: __init__

# 需要導入模塊: from Configuration.PyReleaseValidation.MatrixReader import MatrixReader [as 別名]
# 或者: from Configuration.PyReleaseValidation.MatrixReader.MatrixReader import prepare [as 別名]
class MatrixToProcess:

    def __init__(self,what='standard',strict=True):
        from Configuration.PyReleaseValidation.MatrixReader import MatrixReader
        self.mrd = MatrixReader(what,noRun=True)
        self.mrd.prepare('all','',None)
        self.configBuilders={}
        self.processes={}
        self.strict=strict
    def getKey(self,wfNumber,step):
        return str(wfNumber)+':'+str(step)
    
    def getProcess(self,wfNumber,step):
        key=self.getKey(wfNumber,step)
        if not key in self.configBuilders:
            self.load(wfNumber,step)
        if not key in self.configBuilders:
            return None
        return self.configBuilders[key].process

    def load(self,wfNumber,step):
        from Configuration.PyReleaseValidation.ConfigBuilder import ConfigBuilder
        from Configuration.PyReleaseValidation.cmsDriverOptions import OptionsFromCommand
        import copy

        if len(self.configBuilders)!=0 and self.strict:
            raise Exception('one should never be loading more than one process at a time due to python loading/altering feature')
        key=self.getKey(wfNumber,step)
        if key in self.configBuilders:
            return True
        
        for wf in self.mrd.workFlows:
            if float(wf.numId)!=wfNumber: continue

            if not hasattr(wf,'cmdStep%d'%(step)): continue
            if not getattr(wf,'cmdStep%d'%(step)): continue
            
            command=getattr(wf,'cmdStep%d'%(step))
            opt=OptionsFromCommand(command)
            if opt:
                cb = ConfigBuilder(opt,with_input=True,with_output=True)
                cb.prepare()
                self.configBuilders[key]=copy.copy(cb)
                return True
        print "could not satisfy the request for step",step,"of workflow",wfNumber
        return False
                             
    def getConfig(self,wfNumber,step):
        key=self.getKey(wfNumber,step)
        if not key in self.configBuilders:   self.getProcess(wfNumber,step)
        if not key in self.configBuilders: return None
        return self.configBuilders[key].pythonCfgCode

    def identityTest(self,wfNumber,step):
        self.getProcess(wfNumber,step)
        key=self.getKey(wfNumber,step)
        if not key in self.configBuilders: return None

        cb=self.configBuilders[key]
        #need to compare those two for identity
        cb.process
        cd.pythonCfgCode

                    
    def listAll(self):
        for wf in self.mrd.workFlows:
            step=1
            print '---------------------' 
            print 'process workflow',wf.numId
            print
            while self.load(float(wf.numId),step):
                p=self.getProcess(float(wf.numId),step)
                print ', '.join(s.label() for s in p.schedule)
                #print p.outputModules()
                step+=1
開發者ID:12345ieee,項目名稱:cmg-cmssw,代碼行數:77,代碼來源:MatrixToProcess.py


注:本文中的Configuration.PyReleaseValidation.MatrixReader.MatrixReader.prepare方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。