Sierra Toolkit Version of the Day

Sierra Toolkit. More...

Namespaces

namespace  io
namespace  linsys
namespace  rebalance

Classes

class  AlgorithmInterface
class  CudaMemoryMgr
struct  LogControlRule
 Interface LogControlRule describes the interface to a log control rule. More...
struct  LogControlRuleAlways
 Class LogControlRuleAlways is a log control rule that always wants to write to the log file. More...
class  LogControl
 Class LogControl provides a mechanism for reducing excessive output. The output is redirected to a cache where it can be written to the log stream where and error condition arises. More...
class  ProductRegistry
 Class ProductRegistry maps product names and attributes to brief descriptive values. Each added product has at a minimum the NAME value initialized. A region type product also has the PRODUCT_TYPE set to PRODUCT_TYPE_REGION. More...
class  RuntimeDoomedAdHoc
 Class RuntimeDoomedAdHoc reports an ad hoc doomed message to the report system. More...
class  RuntimeDoomedSymmetric
 Class RuntimeDoomedSymmetric reports a fatal error message to the report system. More...
class  RuntimeDoomedDeferred
 Class RuntimeDoomedDeferred reports a deferred fatal error message to the report system. More...
struct  Throttle
 Class Throttle describes the cutoff limits for a message throttle. More...
struct  MessageCode
 Class MessageCode declares a message identifier and throttle characteristics for a message. THESE MUST BE DECLARED STATIC. More...
class  RuntimeWarningAdHoc
 Class RuntimeWarningAdHoc reports an ad hoc warning message to the report system. More...
class  RuntimeWarningSymmetric
 Class RuntimeWarningSymmetric reports a symmetric warning message to the report system. More...
class  RuntimeWarningDeferred
 Class RuntimeWarningDeferred reports a deferred warning message to the report system. More...
struct  BroadcastArg
 Class BroadcastArg creates a copy of argc and argv after broadcasting them from processor 0. More...
class  Bootstrap
 Class Bootstrap serves as a bootstrapping mechanism for products in the sierra toolkit and elsewhere. More...
class  CSet
 Set of entities of arbitrary types. More...
class  basic_indent_streambuf
 Class basic_indent_streambuf implements a output streambuf that performs indentation, blank line removal and outline bracing, sending the result character stream to another output stream buffer. More...
struct  IndexList
 Compile-time list of indices. More...
struct  IndexListAt
 Access member of compile-time list of indices.
Defines enum { value = index_at_J }; More...
struct  Marshal
 Struct Marshal is a data packer for sending and receiving parallel messages. The data put-to (<<) is appended to the stream as a string of bytes, likewise data gotten-from (>>) is extracted from the stream into the object as a string of bytes. More...
class  SameType
 Member enum { value = ... }; is true if T1 and T2 are the same type. More...
struct  StaticAssert
 Compile-time assertionIf the compile-time expression is true then defines. More...
struct  EqualCase
 Case-insensitive equality compare binary function object. More...
struct  NotEqualCase
 Case-insensitive inequality compare binary function object. More...
struct  LessCase
 Case-insensitive less-than compare binary function object. More...
struct  LessEqualCase
 Case-insensitive less-than-or-equal-to compare binary function object. More...
struct  GreaterCase
 Case-insensitive greater-than compare binary function object. More...
struct  GreaterEqualCase
 Case-insensitive greater-than-or-equal-to compare binary function object. More...
class  basic_tee_streambuf
 Class basic_tee_streambuf maintains a list of destination output stream buffers to send written characters to. Many destination output stream buffers may be added. For each character written to this stream buffer, the same character is written to each destination stream buffer. More...
class  TypeList
 A link within a linked list of types.A linked list of types where Tail is required to either terminate the list with TypeListEnd or continue the list with another instantiation of TypeList . More...
class  TypeListLength
 Member enum { value = ... }; is the length of the type list. More...
class  TypeListAt
 Member typedef ... type ; is the type of the member of ListType at location ordinal if ordinal is less than the type list length. More...
class  TypeListIndex
 Member enum { value = ... }; is the location within ListType of occurance I of type TestValue . If this occurance does not exist then value = -1 . More...
class  TypeListCount
 Member enum { value = ... }; is the number of occurances of TestValue within ListType . More...
class  TypeListMember
 Member enum { value = ... }; is true if TestValue is a member of ListType . More...
class  TypeListUnique
 Member enum { value = ... }; is true if each member of ListType appears exactly once. More...
class  TypeListDisjoint
 Member enum { value = ... }; is true if all members of ListA are not a member ListB . More...
class  TypeListFirst
 Member typedef ... type ; is the first member of ListType . More...
class  TypeListLast
 Member typedef ... type ; is the last member of ListType . More...
class  TypeListAppend
 Member typedef ... type ; is defined by appending T to the end of ListA . More...
class  TypeListJoin
 Member typedef ... type ; is defined by joining ListB to the end of ListA . More...
class  TypeListEraseAt
 Member typedef ... type ; is defined by erasing member at ordinal from ListType . More...
class  TypeListClean
 Member typedef ... type ; is defined by truncating ListType at the first occurance of TypeListEnd . Used by MakeTypeList to generate a clean type list. More...
class  MakeTypeList
 Member typedef ... type ; is a type list constructed from the template arguments. More...

Typedefs

typedef std::vector< AlgField * > AlgFieldVector
typedef size_t MemorySize
typedef unsigned long TimeFormat
typedef
stk::basic_tee_streambuf< char,
std::char_traits< char > > 
tee_streambuf
 Tee stream buffer for char.
typedef void(* REH )(const char *message, int type)
 Type definition REH is a pointer to a function of type void that takes a const std::exception reference as a parameter.
typedef void(* ErrorHandler )(const char *expr, const std::string &location, std::ostringstream &message)
 ErrorHandler defines the signature of functions that can be used to handle errors. expr is the expression of the failing error-check, location is a raw code location (something like file:line, no prose), and message is the error message.
typedef std::ostream &(* OStreamFunctionPtr )(std::ostream &)
typedef std::ios_base &(* IOSBaseFunctionPtr )(std::ios_base &)
typedef ptrdiff_t MessageId
 Typedef MessageId defines a message identifier.
typedef MPI_Comm ParallelMachine
typedef MPI_Datatype ParallelDatatype
typedef
stk::basic_indent_streambuf
< char > 
indent_streambuf

Enumerations

enum  LogMask {
  LOG_ALWAYS = 0x00000000,
  LOG_TRACE = 0x00000001,
  LOG_TRACE_STATS = 0x00000002,
  LOG_TRACE_SUB_CALLS = 0x00000004,
  LOG_MEMBERS = 0x00000008,
  LOG_STREAM_COMMON = LOG_TRACE | LOG_TRACE_STATS,
  LOG_PARAMETERS = 0x00000100
}
 Enumeration LogMask enumerates global bit assignments.
enum  {
  TIMEFORMAT_NONE = 0x00,
  TIMEFORMAT_HMS = 0x01,
  TIMEFORMAT_SECONDS = 0x02,
  TIMEFORMAT_STYLE_MASK = 0x0F,
  TIMEFORMAT_MILLIS = 0x10
}
enum  State {
  ON,
  CACHE
}
 Enumeration State describes the current state of the caching for this controller. More...
enum  MessageType {
  MSG_WARNING = 0,
  MSG_DOOMED = 1,
  MSG_EXCEPTION = 2,
  MSG_INFORMATION = 3,
  MSG_TYPE_MASK = 0x0FFFFFFF,
  MSG_SYMMETRIC = 0x80000000,
  MSG_DEFERRED = 0x40000000,
  MSG_UNUSED0 = 0x20000000,
  MSG_UNUSED1 = 0x10000000
}
 Enumeration MessageType declares the global message types. More...
enum  ThrottleGroup {
  MSG_APPLICATION = 0,
  MSG_TIME_STEP = 1
}
 Enumeration ThrottleGroup lists defined throttling groups. More...
enum  {
  STK_MPI_TAG_SIZING = 0,
  STK_MPI_TAG_DATA = 1
}

Functions

AlgorithmRunnerInterface * algorithm_runner_non_thread ()
AlgorithmRunnerInterface * algorithm_runner_tpi (int nthreads)
AlgorithmRunnerInterface * algorithm_runner_tbb (int nthreads)
template<typename T >
PrintTable & operator<< (PrintTable &table, const T &t)
PrintTable & operator<< (PrintTable &tout, const at &m)
PrintTable & operator<< (PrintTable &tout, const cell_width &m)
PrintTable & operator<< (PrintTable &tout, const indent &m)
PrintTable & operator<< (PrintTable &tout, const justify &m)
PrintTable & end_col (PrintTable &tout)
PrintTable & end_row (PrintTable &tout)
PrintTable & end_header (PrintTable &tout)
PrintTable & end_format (PrintTable &tout)
PrintTable & push (PrintTable &tout)
PrintTable & pop (PrintTable &tout)
PrintTable & span (PrintTable &tout)
std::ostream & operator<< (std::ostream &os, const PrintTable &table)
diag::Writeroperator<< (diag::Writer &dout, const PrintTable &table)
template<class T >
Marshaloperator<< (Marshal &mout, const diag::Timer::Metric< T > &t)
Marshaloperator<< (Marshal &mout, const diag::Timer &t)
Marshaloperator>> (Marshal &min, diag::ParallelTimer &t)
double cpu_time ()
 Member function cpu_time returns the accumulated cpu time for the process as a double precision value in seconds to "millisecond" accuracy.
const char * demangle (const char *symbol)
 Function demangle returns the demangled C++ symbol from the mangled C++ symbol. The mangled named is obtained from the type_info name() function. From some compilers, the name is already demangled.
std::string formatMemorySize (double size)
std::string formatMemorySize (MemorySize size)
std::string formatTime (double time, TimeFormat time_format)
void create_log_file (const std::string &name, const std::string &path)
 Function create_log_file opens a log file at the specified path and adds it to the registry of log files with the specified name. This name is be used at to locate the path of the file or it's output stream from the registry using the get_log_file_path() and get_log_file_ostream() functions.
void close_log_file (const std::string &name)
 Function close_log_file close the log file with the specified name and removes it from the registry of log files.
void register_log_ostream (std::ostream &os, const std::string &name)
 Function register_log_ostream takes an existing std::ostream and makes it available for output redirection.
void unregister_log_ostream (std::ostream &os)
 Function register_log_ostream takes an existing std::ostream and makes it available for output redirection.
const std::string & get_log_path (const std::string &name)
 Function get_log_path returns the file path of the log file with the specified name from the log file registry. If the specified name does not exist in the registry, an empty string is returned.
std::ostream * get_log_ostream (const std::string &name)
 Function get_log_file_ostream return the output stream of the log file with the specified name from the log registry. If the specified name does not exist in the registry, a null pointer is returned.
void register_ostream (std::ostream &os, const std::string &name)
 Function register_ostream registers an output stream with the output stream registry. The registration process creates an intermediate tee streambuf.
void unregister_ostream (std::ostream &os)
 Function unregister_ostream unregisters an output stream.
std::ostream * get_ostream_ostream (const std::string &name)
 Function get_ostream_streambuf locates the output stream registered with the specified name. If the specified output stream does not exist in the registry, a null pointer is returned.
tee_streambufget_ostream_tee_streambuf (const std::string &name)
std::ostream * get_ostream_tee_ostream (const std::string &name)
 Function get_ostream_tee_streambuf locates the tee streambuf registered with the specified name. If the specified output stream does not exist in the registry, a null pointer is returned.
bool is_registered_ostream (const std::string &name)
 Function is_registered_ostream returns true if an output stream of the specified name is registered.
void bind_output_streams (const std::string &output_description)
 Function bind_output_streams parses the output_description and opens and registers the log streams and binds the registered output streams to the registered log streams.
boost::program_options::options_description & get_options_description ()
 Function get_options_description is a singleton used to store the command line option descriptions for the boost::program_options library. This option descriptions should be populated with options by each module using Bootstrap object callback functions. This allows modules to populate these prior to main's execution of the boost::parse_command_line() functions.
boost::program_options::variables_map & get_variables_map ()
 Function get_variabel_map is a singleton used to store the variables parsed from the line option descriptions.
void default_report_handler (const char *message, int type)
 Function default_report_handler is the default error reporter for sierra exceptions. Note that it is implemented in Fmwk_sierra.C so that it can participate.
void report (const char *message, int type)
 Function report calls the current exception reporter to report the message in x.
REH set_report_handler (REH reh)
 Function set_report_handler sets the exception report function to be called when an report_exception() is called.
std::string source_relative_path (const std::string &path)
 Function source_relative_path strips everything through "/src/", "/include/", "/App_", or "/stk_" so that error message output doesn't mention names.
void default_assert_handler (const char *expr, const std::string &location, std::ostringstream &message)
void default_error_handler (const char *expr, const std::string &location, std::ostringstream &message)
void default_invalid_arg_handler (const char *expr, const std::string &location, std::ostringstream &message)
ErrorHandler set_assert_handler (ErrorHandler handler)
ErrorHandler set_error_handler (ErrorHandler handler)
ErrorHandler set_invalid_arg_handler (ErrorHandler handler)
void handle_assert (const char *expr, const std::string &location, std::ostringstream &message)
void handle_error (const char *expr, const std::string &location, std::ostringstream &message)
void handle_invalid_arg (const char *expr, const std::string &location, std::ostringstream &message)
unsigned int get_doomed_count ()
 Function get_doomed_count returns the accumulated doomed count.
void reset_doomed_count ()
 Function reset_doomed_count sets the accumulated doomed count to zero.
void set_max_doomed_count (unsigned int max_messages)
 Function set_max_messages sets the maximum number of doomed before no more doomed will be displayed.
unsigned get_max_doomed_count ()
 Function set_max_messages sets the maximum number of doomed and doomed messages displayed before the message is thrown as a RuntimeError exception.
void report_doomed (const char *message, const MessageCode &message_code=MessageCode::s_defaultMessageCode)
 Function report_symmetric_doomed sends a doomed message to the reporter.
void report_symmetric_doomed (const char *message, const MessageCode &message_code=MessageCode::s_defaultMessageCode)
 Function report_symmetric_doomed sends a doomed message to the reporter.
void report_deferred_doomed (const char *message, const char *aggregate, const MessageCode &message_code)
 Member function report_deferred_doomed ...
bool is_doomed ()
 Function is_doomed returns true if get_doomed_count() > 0.
void register_message_type (unsigned message_type, unsigned max_count, const char *name)
 Member function set_message_name ...
unsigned get_message_count (unsigned message_type)
 Member function get_message_count ...
unsigned increment_message_count (unsigned message_type)
void reset_message_count (unsigned message_type)
 Member function reset_message_count ...
const std::string & get_message_name (unsigned message_type)
 Member function get_message_name ...
void set_max_message_count (unsigned message_type, unsigned max_count)
 Member function set_max_message_count ...
unsigned get_max_message_count (unsigned message_type)
 Member function get_max_message_count ...
void report_message (const char *message, unsigned message_type, const MessageCode &message_code)
 Member function report_message ...
void reset_throttle_group (int throttle_group)
 Function reset_message_group sets the count to zero of all messages in the specified throttle group.
void add_deferred_message (int message_type, MessageId message_id, size_t throttle_cutoff, int throttle_group, const char *header, const char *aggegrate)
 Function add_deferred_message adds a message to the deferred message queue.
void report_deferred_messages (ParallelMachine comm)
 Function report_deferred_messages aggregates and reports the message on the root processor.
void aggregate_messages (ParallelMachine comm, std::ostringstream &os, const char *separator=", ")
 Function aggregate_messages writes a message message to the output string by joining the messages from each processor, in order. Each message is separated by the specified separation string.
std::ostream & operator<< (std::ostream &os, const MessageType &message_type)
 Function operator<< writes the message type name to the output stream. If the symmetric bit is set, "parallel" is prefixed to the name.
unsigned get_warning_count ()
 Function get_warning_count returns the accumulated warning count.
void reset_warning_count ()
 Function reset_warning_count sets the accumulated warning count to zero.
void set_max_warning_count (unsigned int max_messages)
 Function set_max_messages sets the maximum number of warning before no more warning will be displayed.
unsigned get_max_warning_count ()
 Function set_max_messages sets the maximum number of warning and doomed messages displayed before the message is thrown as a RuntimeError exception.
void report_warning (const char *message, const MessageCode &message_code=MessageCode::s_defaultMessageCode)
 Member function report_warning ...
void report_symmetric_warning (const char *message, const MessageCode &message_code=MessageCode::s_defaultMessageCode)
 Function report_symmetric_warning sends a warning message to the reporter.
void report_deferred_warning (const char *message, const char *aggregate, const MessageCode &message_code)
 Member function report_deferred_warning ...
double wall_time ()
 Member function wall_time returns the epoch as a double precision value in seconds to "millisecond" accuracy.
double wall_dtime (double &t)
template<typename Mesh >
generic_mesh_traits< Mesh >
::entity_local_id 
add_entity (Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::entity_local_id 
add_entity (const typename generic_mesh_traits< Mesh >::entity_value &entity_value, Mesh &mesh)
template<typename Mesh , typename PartInputIterator >
generic_mesh_traits< Mesh >
::entity_local_id 
add_entity (PartInputIterator first, PartInputIterator last, Mesh &mesh)
template<typename Mesh , typename PartInputIterator >
generic_mesh_traits< Mesh >
::entity_local_id 
add_entity (const typename generic_mesh_traits< Mesh >::entity_value &entity_value, PartInputIterator first, PartInputIterator last, Mesh &mesh)
template<typename Mesh >
void remove_entity (typename generic_mesh_traits< Mesh >::entity_local_id entity_lid, Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::relation_descriptor 
add_relation (generic_mesh_traits< Mesh >::entity_local_id entity_from, generic_mesh_traits< Mesh >::entity_local_id entity_to, Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::relation_descriptor 
add_relation (generic_mesh_traits< Mesh >::entity_local_id entity_from, generic_mesh_traits< Mesh >::entity_local_id entity_to, const generic_mesh_traits< Mesh >::relation_value &relation, Mesh &mesh)
template<typename Mesh >
void remove_relation (generic_mesh_traits< Mesh >::relation_descriptor relation_d, Mesh &mesh)
template<typename Mesh >
const generic_mesh_traits
< Mesh >::entity_value & 
get_entity (generic_mesh_traits< Mesh >::entity_local_id entity_lid, const Mesh &Mesh)
template<typename Mesh >
const generic_mesh_traits
< Mesh >::entity_value & 
get_entity (generic_mesh_traits< Mesh >::entity_descriptor entity_d, const Mesh &Mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::entity_local_id 
entity_descriptor_to_local_id (typename generic_mesh_traits< Mesh >::entity_descriptor entity_d, const Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::entity_descriptor 
entity_local_id_to_descriptor (typename generic_mesh_traits< Mesh >::entity_local_id entity_lid, const Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::entity_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::entity_descriptor_iterator > 
get_entities (Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::bucket_entity_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::bucket_entity_descriptor_iterator > 
get_entities (typename generic_mesh_traits< Mesh >::bucket_descriptor bucket_descriptor, Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::relation_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::relation_descriptor_iterator > 
get_relations (generic_mesh_traits< Mesh >::entity_local_id entity_lid, Mesh &mesh)
template<typename Mesh >
std::pair< generic_mesh_traits
< Mesh >
::relation_descriptor_iterator,
generic_mesh_traits< Mesh >
::relation_descriptor_iterator > 
get_relations (generic_mesh_traits< Mesh >::entity_descriptor entity_d, Mesh &mesh)
template<typename Mesh , typename Selector >
std::pair< generic_mesh_traits
< Mesh >
::selected_relation_descriptor_iterator,
generic_mesh_traits< Mesh >
::selected_relation_descriptor_iterator > 
get_relations (generic_mesh_traits< Mesh >::entity_local_id entity_lid, Selector &selector, Mesh &mesh)
template<typename Mesh , typename Selector >
std::pair< generic_mesh_traits
< Mesh >
::selected_relation_descriptor_iterator,
generic_mesh_traits< Mesh >
::selected_relation_descriptor_iterator > 
get_relations (generic_mesh_traits< Mesh >::entity_descriptor entity_d, Selector &selector, Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::bucket_descriptor 
get_bucket (typename generic_mesh_traits< Mesh >::entity_descriptor entity, Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::bucket_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::bucket_descriptor_iterator > 
get_buckets (const Mesh &mesh)
template<typename Mesh , typename Selector >
std::pair< typename
generic_mesh_traits< Mesh >
::selected_bucket_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::selected_bucket_descriptor_iterator > 
get_buckets (const Selector &selector, Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::part_bucket_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::part_bucket_descriptor_iterator > 
get_buckets (typename generic_mesh_traits< Mesh >::part_descriptor part_descriptor, Mesh &mesh)
template<typename Mesh >
generic_mesh_traits< Mesh >
::part_descriptor 
add_part (const typename generic_mesh_traits< Mesh >::part_value &part_value, Mesh &mesh)
template<typename Mesh >
void remove_part (typename generic_mesh_traits< Mesh >::part_descriptor part_descriptor, Mesh &mesh)
template<typename Mesh , typename AddPartInputIterator , typename RemovePartInputIterator >
generic_mesh_traits< Mesh >
::bucket_descriptor 
move_entity (typename generic_mesh_traits< Mesh >::entity_descriptor entity_descriptor, AddPartInputIterator add_first, AddPartInputIterator add_last, RemovePartInputIterator remove_first, RemovePartInputIterator remove_last, Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::part_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::part_descriptor_iterator > 
get_parts (const Mesh &mesh)
template<typename Mesh >
std::pair< typename
generic_mesh_traits< Mesh >
::bucket_part_descriptor_iterator,
typename generic_mesh_traits
< Mesh >
::bucket_part_descriptor_iterator > 
get_parts (typename generic_mesh_traits< Mesh >::bucket_descriptor bucket_descriptor, Mesh &mesh)
template<typename Mesh >
bool modification_begin (Mesh &mesh)
template<typename Mesh >
bool modification_end (Mesh &mesh)
template<typename Mesh >
bool is_modifiable (const Mesh &mesh)
template<typename Mesh >
void rotate_multistate_fields (Mesh &mesh)
unsigned parallel_machine_size (ParallelMachine parallel_machine)
 Member function parallel_machine_size ...
unsigned parallel_machine_rank (ParallelMachine parallel_machine)
 Member function parallel_machine_rank ...
void parallel_machine_barrier (ParallelMachine parallel_machine)
 Member function parallel_machine_barrier ...
ParallelMachine parallel_machine_null ()
 parallel_machine_null returns MPI_COMM_NULL if MPI is enabled.
ParallelMachine parallel_machine_init (int *argc, char ***argv)
 parallel_machine_init calls MPI_Init.
void parallel_machine_finalize ()
 parallel_machine_finalize calls MPI_Finalize.
bool comm_dense_sizes (ParallelMachine comm, const unsigned *const send_size, unsigned *const recv_size, bool local_flag)
bool comm_sizes (ParallelMachine comm, const unsigned num_msg_bound, unsigned &num_msg_maximum, const unsigned *const send_size, unsigned *const recv_size, bool local_flag)
void all_write_string (ParallelMachine, std::ostream &, const std::string &)
 Write string from any or all processors to the ostream on the root processor.
void all_reduce (ParallelMachine arg_comm, ParallelReduceOp arg_op, void *arg_in, void *arg_out, unsigned arg_len)
void all_reduce_sum (ParallelMachine, const double *local, double *global, unsigned count)
 Parallel summation to all processors.
void all_reduce_sum (ParallelMachine, const float *local, float *global, unsigned count)
 Parallel summation to all processors.
void all_reduce_sum (ParallelMachine, const int *local, int *global, unsigned count)
 Parallel summation to all processors.
void all_reduce_sum (ParallelMachine, const size_t *local, size_t *global, unsigned count)
 Parallel summation to all processors.
void all_reduce_bor (ParallelMachine, const unsigned *local, unsigned *global, unsigned count)
 Parallel bitwise-or to all processors.
template<class ReduceOp >
void all_reduce (ParallelMachine, const ReduceOp &)
IdentifierA operator+ (const IdentifierA &identifier1, const IdentifierA &identifier2)
IdentifierA operator+ (const IdentifierA &identifier1, const std::string &string2)
std::string operator+ (const std::string &string1, const IdentifierA &identifier2)
std::ostream & operator<< (std::ostream &os, const IdentifierA &identifier)
std::istream & operator>> (std::istream &is, IdentifierA &identifier)
bool operator< (const std::string &s1, const IdentifierA &s2)
bool operator< (const IdentifierA &s1, const std::string &s2)
bool operator< (const IdentifierA &s1, const char *s2)
bool operator< (const IdentifierA &s1, const IdentifierA &s2)
bool operator== (const std::string &s1, const IdentifierA &s2)
bool operator== (const IdentifierA &s1, const std::string &s2)
bool operator== (const IdentifierA &s1, const char *s2)
bool operator== (const IdentifierA &s1, const IdentifierA &s2)
bool operator<= (const std::string &s1, const IdentifierA &s2)
bool operator<= (const IdentifierA &s1, const std::string &s2)
bool operator<= (const IdentifierA &s1, const char *s2)
bool operator<= (const IdentifierA &s1, const IdentifierA &s2)
bool operator> (const std::string &s1, const IdentifierA &s2)
bool operator> (const IdentifierA &s1, const std::string &s2)
bool operator> (const IdentifierA &s1, const char *s2)
bool operator> (const IdentifierA &s1, const IdentifierA &s2)
bool operator>= (const std::string &s1, const IdentifierA &s2)
bool operator>= (const IdentifierA &s1, const std::string &s2)
bool operator>= (const IdentifierA &s1, const char *s2)
bool operator>= (const IdentifierA &s1, const IdentifierA &s2)
bool operator!= (const std::string &s1, const IdentifierA &s2)
bool operator!= (const IdentifierA &s1, const std::string &s2)
bool operator!= (const IdentifierA &s1, const char *s2)
bool operator!= (const IdentifierA &s1, const IdentifierA &s2)
std::ostream & operator<< (std::ostream &os, const IdentifierB &identifier)
std::istream & operator>> (std::istream &is, IdentifierB &identifier)
IdentifierB operator+ (const IdentifierB &identifier1, const IdentifierB &identifier2)
IdentifierB operator+ (const IdentifierB &identifier1, const std::string &string2)
IdentifierB operator+ (const IdentifierB &identifier1, const char *string2)
std::string operator+ (const std::string &string1, const IdentifierB &identifier2)
bool operator< (const IdentifierB &s1, const std::string &s2)
bool operator< (const IdentifierB &s1, const char *s2)
bool operator< (const IdentifierB &s1, const IdentifierB &s2)
bool operator== (const std::string &s1, const IdentifierB &s2)
bool operator== (const IdentifierB &s1, const std::string &s2)
bool operator== (const IdentifierB &s1, const char *s2)
bool operator== (const IdentifierB &s1, const IdentifierB &s2)
bool operator<= (const std::string &s1, const IdentifierB &s2)
bool operator<= (const IdentifierB &s1, const std::string &s2)
bool operator<= (const IdentifierB &s1, const char *s2)
bool operator<= (const IdentifierB &s1, const IdentifierB &s2)
bool operator> (const std::string &s1, const IdentifierB &s2)
bool operator> (const IdentifierB &s1, const std::string &s2)
bool operator> (const IdentifierB &s1, const char *s2)
bool operator> (const IdentifierB &s1, const IdentifierB &s2)
bool operator>= (const std::string &s1, const IdentifierB &s2)
bool operator>= (const IdentifierB &s1, const std::string &s2)
bool operator>= (const IdentifierB &s1, const char *s2)
bool operator>= (const IdentifierB &s1, const IdentifierB &s2)
bool operator!= (const std::string &s1, const IdentifierB &s2)
bool operator!= (const IdentifierB &s1, const std::string &s2)
bool operator!= (const IdentifierB &s1, const char *s2)
bool operator!= (const IdentifierB &s1, const IdentifierB &s2)
bool operator< (const std::string &s1, const IdentifierB &s2)
template<class Ch , class Tr >
std::basic_ostream< Ch, Tr > & push (std::basic_ostream< Ch, Tr > &os)
template<class Ch , class Tr >
std::basic_ostream< Ch, Tr > & pop (std::basic_ostream< Ch, Tr > &os)
IndentFlags indent_flags (int flags)
template<class Ch , class Tr >
std::basic_ostream< Ch, Tr > & operator<< (std::basic_ostream< Ch, Tr > &os, IndentFlags indent_flags)
template<>
Marshaloperator<< (Marshal &mout, const std::type_info &t)
 Function operator<< write the crc32 encoding of the name from the type information to the packed byte stream. When the bytes are read, the crc32 encoding of the type being read is varified.
template<>
Marshaloperator>> (Marshal &min, const std::type_info &t)
 Function operator<< reads the crc32 encoding of the name from the type information from the packed byte stream. The read crc32 is compared to the crc32 encoding of the name from the type information passed. If the two are different and exception is thrown.
template<>
Marshaloperator<< (Marshal &mout, const signed char &t)
template<>
Marshaloperator<< (Marshal &mout, const unsigned char &t)
template<>
Marshaloperator<< (Marshal &mout, const char &t)
template<>
Marshaloperator<< (Marshal &mout, const short &t)
template<>
Marshaloperator<< (Marshal &mout, const unsigned short &t)
template<>
Marshaloperator<< (Marshal &mout, const int &t)
template<>
Marshaloperator<< (Marshal &mout, const unsigned int &t)
template<>
Marshaloperator<< (Marshal &mout, const long &t)
template<>
Marshaloperator<< (Marshal &mout, const unsigned long &t)
template<>
Marshaloperator<< (Marshal &mout, const long long &t)
template<>
Marshaloperator<< (Marshal &mout, const unsigned long long &t)
template<>
Marshaloperator<< (Marshal &mout, const float &t)
template<>
Marshaloperator<< (Marshal &mout, const double &t)
template<>
Marshaloperator<< (Marshal &mout, const std::string &s)
template<>
Marshaloperator>> (Marshal &min, signed char &t)
template<>
Marshaloperator>> (Marshal &min, unsigned char &t)
template<>
Marshaloperator>> (Marshal &min, char &t)
template<>
Marshaloperator>> (Marshal &min, short &t)
template<>
Marshaloperator>> (Marshal &min, unsigned short &t)
template<>
Marshaloperator>> (Marshal &min, int &t)
template<>
Marshaloperator>> (Marshal &min, unsigned int &t)
template<>
Marshaloperator>> (Marshal &min, long &t)
template<>
Marshaloperator>> (Marshal &min, unsigned long &t)
template<>
Marshaloperator>> (Marshal &min, long long &t)
template<>
Marshaloperator>> (Marshal &min, unsigned long long &t)
template<>
Marshaloperator>> (Marshal &min, float &t)
template<>
Marshaloperator>> (Marshal &min, double &t)
template<>
Marshaloperator>> (Marshal &min, std::string &s)
template<typename T >
Marshaloperator<< (Marshal &mout, const T &t)
 Function operator<< writes the object to the packed byte stream. This is the template class and has no implementation. You must specialize this class to write an object.
template<typename T >
Marshaloperator>> (Marshal &min, T &t)
 Function operator>> reads the object from the packed byte stream. This is the template class and has no implementation. You must specialize this class to read an object.
template<class T >
Marshaloperator<< (Marshal &mout, const std::vector< T > &v)
template<class T >
Marshaloperator>> (Marshal &min, std::vector< T > &v)
template<class T >
Marshaloperator<< (Marshal &mout, const std::list< T > &l)
template<class T >
Marshaloperator>> (Marshal &min, std::list< T > &l)
template<class T >
Marshalwrite (Marshal &mout, const T &t)
template<typename T >
Marshalread (Marshal &min, T &t)
template<class It >
boost::iterator_range< It >
::const_iterator 
const_begin (const boost::iterator_range< It > &range)
template<class It >
boost::iterator_range< It >
::const_iterator 
const_end (const boost::iterator_range< It > &range)
template<class It >
boost::iterator_range< It >
::iterator 
begin (const boost::iterator_range< It > &range)
template<class It >
boost::iterator_range< It >
::iterator 
end (const boost::iterator_range< It > &range)
template<class T >
boost::iterator_range< T >
::const_iterator 
const_begin (const boost::sub_range< T > &range)
template<class T >
boost::iterator_range< T >
::const_iterator 
const_end (const boost::sub_range< T > &range)
template<class T >
boost::iterator_range< T >
::iterator 
begin (const boost::sub_range< T > &range)
template<class T >
boost::iterator_range< T >
::iterator 
end (const boost::sub_range< T > &range)
bool equal_case (const char *lhs, const char *rhs)
 Case-insensitive equality compare.
bool not_equal_case (const char *lhs, const char *rhs)
 Case-insensitive inequality compare.
bool less_case (const char *lhs, const char *rhs)
 Case-insensitive less-than compare.
bool less_equal_case (const char *lhs, const char *rhs)
 Case-insensitive less-than-or-equal-to compare.
bool greater_case (const char *lhs, const char *rhs)
 Case-insensitive greater-than compare.
bool greater_equal_case (const char *lhs, const char *rhs)
 Case-insensitive greater-than-or-equal-to compare.
bool equal_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive equality compare.
bool not_equal_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive inequality compare.
bool less_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive less-than compare.
bool less_equal_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive less-than-or-equal-to compare.
bool greater_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive greater-than compare.
bool greater_equal_case (const std::string &lhs, const std::string &rhs)
 Case-insensitive greater-than-or-equal-to compare.

Variables

static const char PUSH = '\016'
 Meta-character to increase indentation.
static const char POP = '\017'
 Meta-character to decrease indentation.
static const char LEFT = '\021'
 Meta-character to force left justification.

Detailed Description

Sierra Toolkit.

Author:
H. Carter Edwards
H. Carter Edwards <hcedwar@sandia.gov>
Date:
June 2008

------------------------------------------------------------ Copyright 2003 - 2011 Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive license for use of this work by or on behalf of the U.S. Government. Export of this program may require a license from the United States Government. ------------------------------------------------------------


Enumeration Type Documentation

enum stk::State

Enumeration State describes the current state of the caching for this controller.

Enumerator:
ON 

Output is to be written to the log stream.

CACHE 

Output is to be written to the cache stream.

Definition at line 181 of file LogControl.hpp.


Function Documentation

AlgorithmRunnerInterface * stk::algorithm_runner_non_thread ( )

A local-serial algorithm runner

Definition at line 98 of file AlgorithmRunner.cpp.

AlgorithmRunnerInterface * stk::algorithm_runner_tpi ( int  nthreads)

A local-parallel algorithm runner using pthreads

Definition at line 139 of file AlgorithmRunnerTPI.cpp.

AlgorithmRunnerInterface * stk::algorithm_runner_tbb ( int  nthreads)

A local-parallel algorithm runner using TBB

Definition at line 204 of file AlgorithmRunnerTBB.cpp.

double stk::cpu_time ( )

Member function cpu_time returns the accumulated cpu time for the process as a double precision value in seconds to "millisecond" accuracy.

Returns:
a double value of the accumulated process CPU runtime.

Definition at line 16 of file CPUTime.cpp.

const char * stk::demangle ( const char *  symbol)

Function demangle returns the demangled C++ symbol from the mangled C++ symbol. The mangled named is obtained from the type_info name() function. From some compilers, the name is already demangled.

Parameters:
symbola char const pointer to the symbol.
Returns:
a std::string value of the demangled name.

Definition at line 103 of file Demangle.cpp.

double stk::wall_time ( )

Member function wall_time returns the epoch as a double precision value in seconds to "millisecond" accuracy.

Returns:
a double value of the seconds since the 1/1/1970 epoch.

Definition at line 16 of file WallTime.cpp.

unsigned stk::parallel_machine_size ( ParallelMachine  parallel_machine)

Member function parallel_machine_size ...

Parameters:
ma ParallelMachine ...
Returns:
an unsigned int ...

Definition at line 18 of file Parallel.cpp.

unsigned stk::parallel_machine_rank ( ParallelMachine  parallel_machine)

Member function parallel_machine_rank ...

Parameters:
ma ParallelMachine ...
Returns:
an unsigned int ...

Definition at line 29 of file Parallel.cpp.

bool stk::comm_dense_sizes ( ParallelMachine  ,
const unsigned *const  send_size,
unsigned *const  recv_size,
bool  local_flag = false 
)

If the communication is known to be dense.

Definition at line 771 of file ParallelComm.cpp.

bool stk::comm_sizes ( ParallelMachine  ,
const unsigned  num_msg_bound,
unsigned &  num_msg_maximum,
const unsigned *const  send_size,
unsigned *const  recv_size,
bool  local_flag = false 
)

Given the send sizes determine the receive sizes. Send and receive size arrays are dimensioned to the size of the parallel machine. Return global parallel logical OR of the input local flag. This parallel reduction is aggregated into the required communication for determining the sparse sizes. Output the receive sizes and maximum number of send or receive messages for a single processor. A dense all-to-all communication is used if: num_msg_bound < num_msg_maximum otherwise a set of point-to-point messages are used.

Definition at line 844 of file ParallelComm.cpp.

template<>
Marshal & stk::operator<< ( Marshal &  mout,
const std::type_info &  t 
)

Function operator<< write the crc32 encoding of the name from the type information to the packed byte stream. When the bytes are read, the crc32 encoding of the type being read is varified.

Parameters:
mouta Marshal reference to the marshaller.
ta std::type_info const reference to the type information to write for verification when read on extraction.
Returns:
a Marshal reference to the marhsaller.

Definition at line 211 of file Marshal.cpp.

template<>
Marshal & stk::operator>> ( Marshal &  min,
const std::type_info &  t 
)

Function operator<< reads the crc32 encoding of the name from the type information from the packed byte stream. The read crc32 is compared to the crc32 encoding of the name from the type information passed. If the two are different and exception is thrown.

Parameters:
mina Marshal reference to the marshaller.
ta std::type_info const reference to the type information to compare with the what was read from the packed byte stream.
Returns:
a Marshal reference to the marhsaller.

Definition at line 217 of file Marshal.cpp.

template<typename T >
Marshal& stk::operator<< ( Marshal &  mout,
const T &  t 
)

Function operator<< writes the object to the packed byte stream. This is the template class and has no implementation. You must specialize this class to write an object.

Parameters:
mouta Marshal reference to the marshaller.
ta T const reference to the object to write.
Returns:
a Marshal reference to the marhsaller.
template<typename T >
Marshal& stk::operator>> ( Marshal &  min,
T &  t 
)

Function operator>> reads the object from the packed byte stream. This is the template class and has no implementation. You must specialize this class to read an object.

Parameters:
mina Marshal reference to the marshaller.
ta T const reference to the object to read.
Returns:
a Marshal reference to the marhsaller.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines