Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
GridApplicInterface Class Reference

Derived application interface class which spawns simulation codes using grid services such as Condor or Globus. More...

Inheritance diagram for GridApplicInterface:
ApplicationInterface Interface

List of all members.

Public Member Functions

 GridApplicInterface (const ProblemDescDB &problem_db)
 constructor
 ~GridApplicInterface ()
 destructor
void derived_map (const Variables &vars, const ActiveSet &set, Response &response, int fn_eval_id)
 Called by map() and other functions to execute the simulation in synchronous mode. The portion of performing an evaluation that is specific to a derived class.
void derived_map_asynch (const ParamResponsePair &pair)
 Called by map() and other functions to execute the simulation in asynchronous mode. The portion of performing an asynchronous evaluation that is specific to a derived class.
void derived_synch (PRPQueue &prp_queue)
 For asynchronous function evaluations, this method is used to detect completion of jobs and process their results. It provides the processing code that is specific to derived classes. This version waits for at least one completion.
void derived_synch_nowait (PRPQueue &prp_queue)
 For asynchronous function evaluations, this method is used to detect completion of jobs and process their results. It provides the processing code that is specific to derived classes. This version is nonblocking and will return without any completions if none are immediately available.
int derived_synchronous_local_analysis (const int &analysis_id)
const StringArray & analysis_drivers () const
 retrieve the analysis drivers specification for application interfaces
const AnalysisCodeanalysis_code () const
 return AnalysisCode::fileNameMap when defined for derived Interface class

Public Attributes

SysCallAnalysisCode code
 Used to read/write parameter files and responses.

Protected Member Functions

void derived_synch_kernel (PRPQueue &prp_queue)
 Convenience function for common code between derived_synch() & derived_synch_nowait()
bool grid_file_test (const String &root_file)
 test file(s) for existence based on root_file name

Protected Attributes

IntSet idSet
 Set of function evaluation id's for active asynchronous system call evaluations.
IntShortMap failCountMap
 map linking function evaluation id's to number of response read failures
start_grid_computing_t start_grid_computing
 handle to dynamically linked start_grid_computing function
perform_analysis_t perform_analysis
 handle to dynamically linked perform_analysis grid function
get_jobs_completed_t get_jobs_completed
 handle to dynamically linked get_jobs_completed grid function
stop_grid_computing_t stop_grid_computing
 handle to dynamically linked stop_grid_computing function

Detailed Description

Derived application interface class which spawns simulation codes using grid services such as Condor or Globus.

This class is currently a modified copy of SysCallApplicInterface adapted for use with an external grid dervices library which was dynamically linked using dlopen() services.


Member Function Documentation

int derived_synchronous_local_analysis ( const int &  analysis_id) [inline, virtual]

This code provides the derived function used by ApplicationInterface::serve_analyses_synch().

TODO - allow local analyses?????

Reimplemented from ApplicationInterface.

References GridApplicInterface::code, and SysCallAnalysisCode::spawn_analysis().

void derived_synch_kernel ( PRPQueue &  prp_queue) [protected]

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