Exemplo n.º 1
0
def runStorage(name='Storage', sim=None, joboptions=True):
    """
  Execute Storage system streaming component to
   - allocate execution slots and
   - write job options.

   Arguments:
   @param name        System name
   @param mgr         PVSS controls manager
   @param sim         List of stream slices for task simulation simulated

   @author M.Frank
  """
    import Online.RunInfoClasses.Storage as RI
    import Online.AllocatorControl as Control
    import Online.Streaming.Allocator as StreamAllocator
    import Online.JobOptions.OptionsWriter as JobOptions
    mgr = _mgr(Params.storage_system_name)
    info = RI.StorageInfoCreator()
    streamer = StreamAllocator.Allocator(mgr, name, info)
    streamer.recv_slots_per_node = 2
    streamer.strm_slots_per_node = 1
    ##streamer.strmAllocationPolicy = StreamAllocator.RoundRobinSlotPolicy
    controllers = [streamer]
    if joboptions:
        controllers.append(JobOptions.StorageOptionsWriter(mgr, name, info))
    ctrl = Control.Control(mgr, name, 'Alloc', controllers).run()
    return (ctrl, run(name, mgr, sim))
Exemplo n.º 2
0
def runStorage(project,name='Storage'):
  """
  Execute Storage system streaming component to
   - allocate execution slots and
   - write job options.

   Arguments:
   @param name        System name
   @param mgr         PVSS controls manager
   @param sim         List of stream slices for task simulation simulated

   @author M.Frank
  """
  import Online.RunInfoClasses.RecStorage  as RI
  import Online.AllocatorControl           as Control
  import Online.Streaming.Allocator        as StreamAllocator
  #import Online.ProcessorFarm.FarmDescriptor as Farm

  mgr      = _mgr(FarmSetup.storage_system)
  info     = RI.StorageInfoCreator()
  print 'Starting storage'
  blk_policy = StreamAllocator.BlockSlotPolicy
  all_policy = StreamAllocator.AllSlotPolicy
  streamer = StreamAllocator.Allocator(mgr,name,info,policy=(blk_policy,all_policy))
  streamer.fsmManip._startupInfo = _startupInfo
  streamer.fsmManip._optsFile = _optsFile
  streamer.fsmManip._fifoName = _fifoName
  streamer.recv_slots_per_node = 25
  streamer.strm_slots_per_node = 25
  streamer.showSetup()
  #writer = Farm.RecStorageOptionsWriter(mgr,name,info)
  #ctrl = Control.Control(mgr,name,'Alloc',[streamer,writer]).run()
  ctrl = Control.Control(mgr,name,'Alloc',[streamer]).run()
  return (ctrl,mgr)
Exemplo n.º 3
0
def runFarm(project,name):
  """
   Arguments:
   @param name        System name
   @author M.Frank
  """
  import Online.AllocatorControl as Control
  import Online.ProcessorFarm.FarmDescriptor as Farm
  mgr  = _mgr(project)
  farm = Farm.FarmConfigurator(mgr,name)
  ctrl = Control.Control(mgr,name,'Alloc',[farm]).run()
  return (ctrl,mgr)
Exemplo n.º 4
0
def run(name='Reco', sim=None):
    import Online.Reco.FarmInfo as RI
    import Online.AllocatorControl as Control
    import Online.JobOptions.OptionsWriter as JobOptions

    info = RI.FarmSliceInfoCreator('Storage')
    mgr = Online.PVSSSystems.controlsMgr('RECOTEST')
    streamer = FarmSliceManager(mgr, name, info)
    #writer   = JobOptions.MonitoringOptionsWriter(mgr,name,info)
    ctrl = Control.Control(mgr, name, 'Alloc', [streamer]).run()
    ctrl.sleep()
    return (ctrl, run(name, mgr, sim))
Exemplo n.º 5
0
def runHLTopts(name='HLT', sim=None):
    """
  Execute job options writer for the HLT farm.

   Arguments:
   @param name        System name
   @param sim         (Dummy)

   @author M.Frank
  """
    import Online.PVSS as PVSS
    import Online.AllocatorControl as Control
    import Online.RunInfoClasses.HLTFarm as RI
    import Online.JobOptions.OptionsWriter as JobOptions

    info = RI.HLTFarmInfoCreator()
    mgr = _mgr(PVSS.defaultSystemName())
    writer = JobOptions.HLTOptionsWriter(mgr, name, info)
    ctrl = Control.Control(mgr, name + 'JobOptions', 'Writer', [writer]).run()
    return (ctrl, run(name, mgr, sim))
Exemplo n.º 6
0
def runCheckpointManager(name='CHKPT'):
    """
  Execute job options writer for the HLT farm.

   Arguments:
   @param name        System name
   @param sim         (Dummy)

   @author M.Frank
  """
    mgr = _mgr(Params.storage_system_name)
    chkpt = CheckpointManager(mgr, 'CheckpointSvc')
    ctrl = Control.Control(mgr, 'Storage', 'Alloc', [chkpt])
    ctrl.run()
    wait = 1
    if wait != 0:
        if not PVSS.batchMode(): print 'Hit CTRL-C to quit!'
        ctrl.sleep()
        print '\n\nDone...\n\n'
        return 1
    return None
Exemplo n.º 7
0
def _runMonitoring(info, name, sim, joboptions=None):
    """
  Execute Monitoring system streaming component to
   - allocate execution slots and
   - write job options.

   Arguments:
   @param name        System name
   @param sim         List of stream slices for task simulation simulated

   @author M.Frank
  """
    import Online.AllocatorControl as Control
    import Online.Streaming.Allocator as StreamAllocator

    mgr = _mgr(Params.monitor_system_name)
    streamer = StreamAllocator.Allocator(mgr, name, info)
    controllers = [streamer]
    if joboptions:
        controllers.append(joboptions(mgr, name, info))
    ctrl = Control.Control(mgr, name, 'Alloc', controllers).run()
    return (ctrl, run(name, mgr, sim))
Exemplo n.º 8
0
def runFarm(project,name):
  """
   Arguments:
   @param name        System name
   @author M.Frank
  """
  import Online.PVSS as PVSS;
  import Online.AllocatorControl as Control
  import Online.ProcessorFarm.FarmDescriptor as Farm
  mgr  = _mgr(project)
  if name=='Unknown':
    rdr = mgr.devReader()
    actor = PVSS.DpVectorActor(mgr)
    typ   = mgr.typeMgr().type('FarmInfo')
    actor.lookupOriginal('*.Name',typ)
    if len(actor.container)>0:
      rdr.add(actor.container)
      if rdr.execute():
        name = actor.container[0].data
  print '---> Starting controller for farm:',name

  farm = Farm.FarmConfigurator(mgr,name)
  ctrl = Control.Control(mgr,name,'Alloc',[farm]).run()
  return (ctrl,mgr)