Difference between revisions of "ZOID"

From ZeptoOS
Jump to navigationJump to search
Line 17: Line 17:
 
Right before a job starts running, and right after the last process of a job has terminated, ZOID daemon attempts to invoke a ''user script'' on I/O nodes.  By default, the daemon invokes <tt>$HOME/zoid-user-script.sh</tt> (this pathname can be [[#user_script|changed]] by an administrator).  A single parameter is passed to the script: <tt>1</tt> at the job startup, and <tt>0</tt> at the termination.
 
Right before a job starts running, and right after the last process of a job has terminated, ZOID daemon attempts to invoke a ''user script'' on I/O nodes.  By default, the daemon invokes <tt>$HOME/zoid-user-script.sh</tt> (this pathname can be [[#user_script|changed]] by an administrator).  A single parameter is passed to the script: <tt>1</tt> at the job startup, and <tt>0</tt> at the termination.
  
A number of environment variables are also passed to the script:
+
Information about the job will be passed to the script in the following environment variables:
 +
; <tt>ZOID_JOB_EXEC</tt>
 +
: name of the job executable,
 +
; <tt>ZOID_JOB_ARGS</tt>
 +
: job arguments, separated by a <tt>:</tt>
 +
; <tt>ZOID_JOB_ENV</tt>
 +
: job environment variables, separated by a <tt>:</tt>
 
; <tt>ZOID_JOB_ID</tt>
 
; <tt>ZOID_JOB_ID</tt>
 
: BG/P control system job id ('''Note:''' this is generally different from the Cobalt job ID; see [[FAQ#Cobalt_job_ID|FAQ]] for the latter),
 
: BG/P control system job id ('''Note:''' this is generally different from the Cobalt job ID; see [[FAQ#Cobalt_job_ID|FAQ]] for the latter),
; <tt>ZOID_JOB_MODE</tt>
 
: <tt>0</tt> for SMP, <tt>1</tt> for VN, and <tt>2</tt> for DUAL,
 
 
; <tt>ZOID_JOB_GLOBAL_SIZE</tt>
 
; <tt>ZOID_JOB_GLOBAL_SIZE</tt>
 
: number of processes in the job (size of <tt>MPI_COMM_WORLD</tt>),
 
: number of processes in the job (size of <tt>MPI_COMM_WORLD</tt>),
 
; <tt>ZOID_JOB_LOCAL_SIZE</tt>
 
; <tt>ZOID_JOB_LOCAL_SIZE</tt>
 
: number of job processes handled by this I/O node,
 
: number of job processes handled by this I/O node,
; <tt>ZOID_JOB_EXEC</tt>
+
; <tt>ZOID_JOB_MODE</tt>
: name of the job executable,
+
: <tt>0</tt> for SMP, <tt>1</tt> for VN, and <tt>2</tt> for DUAL,
; <tt>ZOID_JOB_ARGS</tt>
 
: job arguments, separated by a <tt>:</tt>
 
; <tt>ZOID_JOB_ENV</tt>
 
: job environment variables, separated by a <tt>:</tt>
 
 
; <tt>SHELL</tt>, <tt>PATH</tt>, <tt>USER</tt>, and <tt>HOME</tt>
 
; <tt>SHELL</tt>, <tt>PATH</tt>, <tt>USER</tt>, and <tt>HOME</tt>
: will also be set for your convenience...
+
: will also be set...
  
 
===Pset broadcast===
 
===Pset broadcast===

Revision as of 15:38, 22 April 2009

Other Packages and Utilities | Top | KTAU


Introduction

ZOID is an I/O forwarding component of the ZeptoOS project. Any communication between the compute nodes and I/O nodes (job management, file I/O, sockets) is facilitated by ZOID.

ZOID infrastructure consists of:

  • Multithreaded zoid daemon on the I/O nodes which performs I/O forwarding for the compute nodes and which also communicates with the service node to perform job management,
  • control daemon on the compute nodes which is responsible for job management tasks such as launching application processes, for the forwarding of stdin/out/err data, and for forwarding of IP packets,
  • zoid-fuse daemon on the compute nodes which performs file I/O forwarding for POSIX-compliant applications.

User interface

User script

Right before a job starts running, and right after the last process of a job has terminated, ZOID daemon attempts to invoke a user script on I/O nodes. By default, the daemon invokes $HOME/zoid-user-script.sh (this pathname can be changed by an administrator). A single parameter is passed to the script: 1 at the job startup, and 0 at the termination.

Information about the job will be passed to the script in the following environment variables:

ZOID_JOB_EXEC
name of the job executable,
ZOID_JOB_ARGS
job arguments, separated by a :
ZOID_JOB_ENV
job environment variables, separated by a :
ZOID_JOB_ID
BG/P control system job id (Note: this is generally different from the Cobalt job ID; see FAQ for the latter),
ZOID_JOB_GLOBAL_SIZE
number of processes in the job (size of MPI_COMM_WORLD),
ZOID_JOB_LOCAL_SIZE
number of job processes handled by this I/O node,
ZOID_JOB_MODE
0 for SMP, 1 for VN, and 2 for DUAL,
SHELL, PATH, USER, and HOME
will also be set...

Pset broadcast

Performance counters

Administrator interface

Command line options

-u

Programmer interface

Building a new plugin

Replacement libc?


Other Packages and Utilities | Top | KTAU