EmploymentCenter Class Reference

Singleton class to store the state of the multi core runner communicates with the workers and scheduler. More...

Inheritance diagram for EmploymentCenter:

Singleton

List of all members.

Public Member Functions

def __new_instance__
 create a new instance
def reset
 set self.done and self.error to false
def set_alarm
 set the alarm for the amount of time walltime given minus the time of the longest running job
def add_to_waiting_list
 add a worker to wait for a job from the scheduler
def remove_from_waiting_list
 remove a worker from the waiting_list
def add_pid
 add the pid of a running job to the set of pids so they may be killed upon error
def remove_pid
 remove a pid from set
def abort_all
 abort all of the pids of working jobs by the kill command
def idle_add
 add idle worker
def idle_discard
def set_event
def wait_for_avail
 wait for center.set_event()
def wait_for_job
 non synchronous: worker node wait for job to be posted or error
def __enter__
def __exit__
def subscribe
 subscribe worker to the jobs list
def notify
 if nodename and processor are not None set then notify that worker, otherwise notify all
def finished
 add a job to the finished list and add a worker to the idle set notify the scheduler
def dump_finished
 return all finished jobs
def __getitem__
 return a worker's job posting from name,processor
def post
 post a job to the job posting for the (name, processor) worker node
def has_idle
 returns true if the idle set is non empty
def pop
 pop a (name, proc) pair from the idle list
def acquire
 acquire self.lock
def release
def prettyprint
 print info to screen
def format_poc
def display_stats
 display stats of finish scheduler
def pocstat
def get_my_job
def has_todo
 true if there is a job waiting for the (name,proc) worker
def has_nothing_todo
 returns 'not has_todo'

Public Attributes

 lock
 nodes
 env
 done
 error

Static Public Attributes

tuple semaphore = property( _get_semaphore )
tuple node_names = property( _get_nodenames )
tuple error = property( _get_error, _set_error )
tuple done = property( _get_done , _set_done )
tuple idle = property( _get_idle )


Detailed Description

Singleton class to store the state of the multi core runner communicates with the workers and scheduler.

Definition at line 64 of file EmploymentCenter.py.


Member Function Documentation

def __new_instance__ (   self,
  name 
)

create a new instance

Reimplemented from Singleton.

Definition at line 70 of file EmploymentCenter.py.

def reset (   self  ) 

set self.done and self.error to false

Definition at line 106 of file EmploymentCenter.py.

def set_alarm (   self  ) 

set the alarm for the amount of time walltime given minus the time of the longest running job

Definition at line 116 of file EmploymentCenter.py.

def add_to_waiting_list (   self,
  name,
  proc 
)

add a worker to wait for a job from the scheduler

Definition at line 141 of file EmploymentCenter.py.

def remove_from_waiting_list (   self,
  name,
  proc 
)

remove a worker from the waiting_list

Definition at line 164 of file EmploymentCenter.py.

def add_pid (   self,
  pid 
)

add the pid of a running job to the set of pids so they may be killed upon error

Definition at line 175 of file EmploymentCenter.py.

def remove_pid (   self,
  pid 
)

remove a pid from set

Definition at line 183 of file EmploymentCenter.py.

def abort_all (   self,
  kill_signal = SIGKILL 
)

abort all of the pids of working jobs by the kill command

Definition at line 193 of file EmploymentCenter.py.

def idle_add (   self,
  name,
  proc 
)

add idle worker

Definition at line 285 of file EmploymentCenter.py.

def idle_discard (   self,
  name,
  proc 
)

Definition at line 288 of file EmploymentCenter.py.

def set_event (   self  ) 

Definition at line 293 of file EmploymentCenter.py.

def wait_for_avail (   self  ) 

wait for center.set_event()

Definition at line 305 of file EmploymentCenter.py.

def wait_for_job (   self,
  name,
  proc 
)

non synchronous: worker node wait for job to be posted or error

Definition at line 324 of file EmploymentCenter.py.

def __enter__ (   self  ) 

Definition at line 339 of file EmploymentCenter.py.

def __exit__ (   self,
  t,
  v,
  tb 
)

Definition at line 343 of file EmploymentCenter.py.

def subscribe (   self,
  name,
  processor 
)

subscribe worker to the jobs list

Definition at line 355 of file EmploymentCenter.py.

def notify (   self,
  nodename = None,
  processor = None 
)

if nodename and processor are not None set then notify that worker, otherwise notify all

Definition at line 384 of file EmploymentCenter.py.

def finished (   self,
  name,
  processor,
  job 
)

add a job to the finished list and add a worker to the idle set notify the scheduler

Definition at line 404 of file EmploymentCenter.py.

def dump_finished (   self  ) 

return all finished jobs

Definition at line 418 of file EmploymentCenter.py.

def __getitem__ (   self,
  name,
  processor 
)

return a worker's job posting from name,processor

Definition at line 434 of file EmploymentCenter.py.

def post (   self,
  name,
  processor,
  job 
)

post a job to the job posting for the (name, processor) worker node

Definition at line 446 of file EmploymentCenter.py.

def has_idle (   self  ) 

returns true if the idle set is non empty

Definition at line 461 of file EmploymentCenter.py.

def pop (   self  ) 

pop a (name, proc) pair from the idle list

Definition at line 470 of file EmploymentCenter.py.

def acquire (   self  ) 

acquire self.lock

Definition at line 487 of file EmploymentCenter.py.

def release (   self  ) 

Definition at line 490 of file EmploymentCenter.py.

def prettyprint (   self  ) 

print info to screen

Definition at line 501 of file EmploymentCenter.py.

def format_poc (   self,
  proc 
)

Definition at line 522 of file EmploymentCenter.py.

def display_stats (   self  ) 

display stats of finish scheduler

Definition at line 550 of file EmploymentCenter.py.

def pocstat (   self,
  proc 
)

Definition at line 583 of file EmploymentCenter.py.

def get_my_job (   self,
  name,
  proc 
)

Definition at line 598 of file EmploymentCenter.py.

def has_todo (   self,
  name,
  proc 
)

true if there is a job waiting for the (name,proc) worker

Definition at line 608 of file EmploymentCenter.py.

def has_nothing_todo (   self,
  name,
  proc 
)

returns 'not has_todo'

Definition at line 617 of file EmploymentCenter.py.


Member Data Documentation

tuple semaphore = property( _get_semaphore ) [static]

Definition at line 100 of file EmploymentCenter.py.

tuple node_names = property( _get_nodenames ) [static]

Definition at line 298 of file EmploymentCenter.py.

tuple error = property( _get_error, _set_error ) [static]

Definition at line 299 of file EmploymentCenter.py.

tuple done = property( _get_done , _set_done ) [static]

Definition at line 377 of file EmploymentCenter.py.

tuple idle = property( _get_idle ) [static]

Definition at line 481 of file EmploymentCenter.py.

Definition at line 73 of file EmploymentCenter.py.

Definition at line 86 of file EmploymentCenter.py.

env

Definition at line 91 of file EmploymentCenter.py.

Definition at line 107 of file EmploymentCenter.py.

Definition at line 108 of file EmploymentCenter.py.


The documentation for this class was generated from the following file:

Generated on Sun Aug 10 09:11:11 2008 for SLIMpy by  doxygen 1.5.6