NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
|
Common declarations and functions for the MPI-based functionality. More...
Classes | |
class | CSVDistributor |
An implementation of the MPI::Distrbutor abstraction that distribute lines of a text file via work packages. More... | |
class | CSVProcessor |
An implementation of a work package processor that will extract lines (and optionally tokenize) a line from a CSV text file. More... | |
class | CSVResources |
class | Distributor |
A class to represent an MPI task that distributes work to other tasks. More... | |
class | Exception |
class | Receiver |
A class to represent an MPI task that receives WorkPackages containers from the Distributor. More... | |
class | RecordProcessor |
An implementation of a work package processor that will extract record store keys, and optionally, values, from a WorkPackage. More... | |
class | RecordStoreDistributor |
An implementation of the MPI::Distrbutor abstraction that uses a record store for input to create the work packages. More... | |
class | RecordStoreResources |
A class to represent a set of resources needed by an MPI program using a RecordStore for input. More... | |
class | Resources |
A class to represent a set of resources needed by an MPI program. More... | |
class | Runtime |
Runtime support for the startup/shutdown of MPI jobs. More... | |
class | TerminateJob |
An exception that when thrown from a Task should result in the entire job (all tasks) being shut down by the Distributor. More... | |
class | WorkPackage |
A class to represent a piece of work to be acted upon by a processor. More... | |
class | WorkPackageProcessor |
Represents an object that processes the contents of a work package. More... | |
Typedefs | |
using | taskcmd_t = std::underlying_type< TaskCommand >::type |
Storage type for TaskCommand. More... | |
using | taskstat_t = std::underlying_type< TaskStatus >::type |
Storage type for TaskStatus. More... | |
using | msgtag_t = std::underlying_type< MessageTag >::type |
Storage type for MessageTag. More... | |
Enumerations | |
enum class | TaskCommand : int32_t { Continue = 0 , Ignore = 1 , Exit = 2 , QuickExit = 3 , TermExit = 4 } |
The command given to an MPI task. More... | |
enum class | TaskStatus : int32_t { OK = 0 , Failed = 1 , Exit = 2 , RequestJobTermination = 3 } |
The status of an MPI distributor or receiver task. More... | |
enum class | MessageTag : int32_t { Control = 0 , Data = 1 , OOB = 2 } |
The types of messages sent between MPI task processes. More... | |
Functions | |
std::string | generateUniqueID () |
Obtain a unique ID for the current process. More... | |
void | printStatus (const std::string &message) |
Print a status message to stdout. More... | |
void | logEntry (IO::Logsheet &logsheet) |
Send the current log stream to the log device as a debug entry. More... | |
void | logMessage (IO::Logsheet &logsheet, const std::string &message) |
Send a log message to the given Logsheet as a debug entry. More... | |
std::shared_ptr< BiometricEvaluation::IO::Logsheet > | openLogsheet (const std::string &url, const std::string &description) |
Open a Logsheet object for a component of the MPI framework. More... | |
Variables | |
bool | Exit |
bool | QuickExit |
bool | TermExit |
bool | checkpointEnable |
bool | doCheckpointRestore |
Common declarations and functions for the MPI-based functionality.
using BiometricEvaluation::MPI::taskcmd_t = typedef std::underlying_type<TaskCommand>::type |
using BiometricEvaluation::MPI::taskstat_t = typedef std::underlying_type<TaskStatus>::type |
using BiometricEvaluation::MPI::msgtag_t = typedef std::underlying_type<MessageTag>::type |
|
strong |
|
strong |
The status of an MPI distributor or receiver task.
Enumerator | |
---|---|
OK | Normal operation. |
Failed | Failed to complete an operation. |
Exit | Transitioned to the shutdown state. |
RequestJobTermination | Requesting that Distributor stops the job. |
|
strong |
std::string BiometricEvaluation::MPI::generateUniqueID | ( | ) |
Obtain a unique ID for the current process.
The ID is a string that is based on the host name, MPI rank, and process ID, formatted in a manner that can be used to uniquely name files.
void BiometricEvaluation::MPI::printStatus | ( | const std::string & | message | ) |
Print a status message to stdout.
[in] | message | The messasge to be printed. |
void BiometricEvaluation::MPI::logEntry | ( | IO::Logsheet & | logsheet | ) |
Send the current log stream to the log device as a debug entry.
Log messages may be streamed into the Logsheet and written as debug messages to aid tracing. In order to prevent log errors interfering with the MPI job, errors are managed, and therefore, log messages may stop if the Logsheet has failed.
[in] | logsheet | The open Logsheet to write into. |
void BiometricEvaluation::MPI::logMessage | ( | IO::Logsheet & | logsheet, |
const std::string & | message | ||
) |
Send a log message to the given Logsheet as a debug entry.
In order to prevent log errors interfering with the MPI job, errors are managed, and therefore, log messages may stop if the Logsheet has failed.
[in] | logsheet | The open Logsheet to write into. |
[in] | message | The log message. |
std::shared_ptr< BiometricEvaluation::IO::Logsheet > BiometricEvaluation::MPI::openLogsheet | ( | const std::string & | url, |
const std::string & | description | ||
) |
Open a Logsheet object for a component of the MPI framework.
If the empty string is passed in as the URL, then a Null Logsheet object is returned.
[in] | url | The Uniform Resource Locator for the Logsheet. |
[in] | description | The description of the Logsheet. |
Error::ParameterError | Invalid URL. |
Error::Exception | Failed to create the Logsheet object. The exception string will contain more information. |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |