You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

1. Use cases:

1.1. Wrapper modes:

  • interactive - user code is run directly from wrapper
  • batch - user executable is sent to a queue

1.2. Execution modes

User code can be:

  • Sequential
  • Parallel:
    • MPI, and/or
    • OpenMP

1.3. Debugging modes:

  • standalone - debugger launches executable containing user code in a separate process
  • attach - debugger attaches to running process executing user code

2. Arguments passed to wrapper - current status

def actor_name(
integer0,
integer1,

exec_type='ctypes',
**kwargs):

2.1. User code arguments (IN/OUT)

Argument can be

  • IDS
  • primitive type
  • array of primitive types
  • string

2.2. Execution type

BP: IMHO it should be removed and defined in other way, as execution modes requires additional set of info

Current values of exec_type :

  • ctypes - interactive execution (yes - this name is REALLY MISLEADING)
  • mpi_local
    • kwargs: mpi_processes
  • dbg 
    • kwargs: dbgmode


3. Arguments passed to wrapper - new 

only kwargs !!!!

def actor_name(**kwargs):

All arguments will be stored in data holding objects and wrapper will check what is defined inside kwargs.

Separate objects will hold info about:

  • user code arguments - autogenerated
  • diagnostic info
  • execution modes
  • debug



  • No labels