SST/macro
Protected Member Functions | Private Member Functions | List of all members
sumi::sumi_transport Class Reference

#include <sumi_transport.h>

Inheritance diagram for sumi::sumi_transport:
Inheritance graph
Collaboration diagram for sumi::sumi_transport:
Collaboration graph

Protected Member Functions

 sumi_transport (const char *name, sstmac::sw::software_id sid)
 
void do_smsg_send (int dst, const message::ptr &msg)
 
void do_rdma_put (int dst, const message::ptr &msg)
 
void do_rdma_get (int src, const message::ptr &msg)
 
void do_nvram_get (int src, const message::ptr &msg)
 
void do_send_terminate (int dst)
 
void do_send_ping_request (int dst)
 
void delayed_transport_handle (const message::ptr &msg)
 
void schedule_ping_timeout (pinger *pnger, double to)
 
void schedule_next_heartbeat ()
 
void go_die ()
 
void go_revive ()
 
- Protected Member Functions inherited from sstmac::sw::library
 library (const std::string &libname, software_id sid)
 
 library (const char *prefix, software_id sid)
 
void register_lib (library *lib)
 This function is provided so that libraries can instantiate, register, and use other libraries. More...
 

Private Member Functions

 ImplementAPI (sumi_transport) public
 
virtual void init ()
 
virtual void finalize ()
 
virtual void init_factory_params (sprockit::sim_parameters *params)
 
void finalize_init ()
 
virtual ~sumi_transport ()
 
virtual sumi::message_ptr handle (sstmac::transport_message *msg)
 
collective_done_message::ptr collective_block (sumi::collective::type_t ty, int tag)
 Block on a collective of a particular type and tag until that collective is complete. More...
 
void cq_notify ()
 
double wall_time () const
 
message::ptr block_until_message ()
 
message::ptr block_until_message (double timeout)
 
void ping_timeout (pinger *pnger)
 
void incoming_event (sstmac::event *ev)
 

Additional Inherited Members

- Public Member Functions inherited from sstmac::sumi_api
 sumi_api (const char *name, sstmac::sw::software_id sid)
 
virtual ~sumi_api ()
 
virtual void init_os (sstmac::sw::operating_system *os)
 
sumi::message_ptr poll_until_notification ()
 
sumi::message_ptr poll_until_notification (timestamp timeout)
 
void incoming_message (transport_message *msg)
 
void transport_send (long byte_length, const sumi::message_ptr &msg, int ty, int dst, bool needs_ack)
 
bool blocked () const
 
- Public Member Functions inherited from sstmac::sw::api
 api (const char *name, software_id sid, const key::category &ty)
 
 api (const char *name, software_id sid)
 
virtual ~api ()
 
timestamp now () const
 
void schedule (timestamp t, event_queue_entry *ev)
 
void schedule_delay (timestamp t, event_queue_entry *ev)
 
virtual void start_api_call ()
 
virtual void end_api_call ()
 
- Public Member Functions inherited from sstmac::sw::library
virtual void unregister_all_libs ()
 
virtual std::string to_string () const
 
virtual std::string lib_name () const
 
virtual void consume_params (sprockit::sim_parameters *params)
 
operating_systemos () const
 
software_id sid () const
 
virtual ~library ()
 
- Public Member Functions inherited from sprockit::factory_type
virtual void init_factory_params (sim_parameters *params)
 
- Public Member Functions inherited from sstmac::sw::process_manager
 process_manager (software_id sid)
 
virtual ~process_manager ()
 
int get_partner (node_id addr) const
 
node_id my_addr () const
 
void kill_node ()
 
void kill_process ()
 
- Protected Attributes inherited from sstmac::sumi_api
event_loc_id loc_
 
int rank_
 
int nproc_
 
- Protected Attributes inherited from sstmac::sw::api
bool hostcompute_
 
Timertimer_
 
long startcount_
 
long endcount_
 
lib_compute_timecompute_
 
- Protected Attributes inherited from sstmac::sw::library
operating_systemos_
 
key::category key_cat_
 
software_id sid_
 

Detailed Description

Definition at line 15 of file sumi_transport.h.

Constructor & Destructor Documentation

virtual sumi::sumi_transport::~sumi_transport ( )
inlineprivatevirtual

Definition at line 38 of file sumi_transport.h.

References block_until_message(), collective_block(), cq_notify(), handle(), ping_timeout(), and wall_time().

Here is the call graph for this function:

sumi::sumi_transport::sumi_transport ( const char *  name,
sstmac::sw::software_id  sid 
)
protected

Referenced by incoming_event().

Member Function Documentation

message::ptr sumi::sumi_transport::block_until_message ( )
private

Referenced by ~sumi_transport().

message::ptr sumi::sumi_transport::block_until_message ( double  timeout)
private
collective_done_message::ptr sumi::sumi_transport::collective_block ( sumi::collective::type_t  ty,
int  tag 
)
private

Block on a collective of a particular type and tag until that collective is complete.

Parameters
ty
tag
Returns

Referenced by ~sumi_transport().

void sumi::sumi_transport::cq_notify ( )
private

Referenced by ~sumi_transport().

void sumi::sumi_transport::delayed_transport_handle ( const message::ptr &  msg)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_nvram_get ( int  src,
const message::ptr &  msg 
)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_rdma_get ( int  src,
const message::ptr &  msg 
)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_rdma_put ( int  dst,
const message::ptr &  msg 
)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_send_ping_request ( int  dst)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_send_terminate ( int  dst)
protected

Referenced by incoming_event().

void sumi::sumi_transport::do_smsg_send ( int  dst,
const message::ptr &  msg 
)
protected

Referenced by incoming_event().

virtual void sumi::sumi_transport::finalize ( )
privatevirtual

Reimplemented from sstmac::sumi_api.

Referenced by ImplementAPI().

void sumi::sumi_transport::finalize_init ( )
privatevirtual

Reimplemented from sstmac::sw::api.

Referenced by ImplementAPI().

void sumi::sumi_transport::go_die ( )
protected

Referenced by incoming_event().

void sumi::sumi_transport::go_revive ( )
protected

Referenced by incoming_event().

virtual sumi::message_ptr sumi::sumi_transport::handle ( sstmac::transport_message msg)
privatevirtual

Implements sstmac::sumi_api.

Referenced by ~sumi_transport().

sumi::sumi_transport::ImplementAPI ( sumi_transport  )
inlineprivate

Definition at line 19 of file sumi_transport.h.

References finalize(), finalize_init(), init(), and init_factory_params().

Here is the call graph for this function:

void sumi::sumi_transport::incoming_event ( sstmac::event ev)
inlineprivatevirtual
virtual void sumi::sumi_transport::init ( )
privatevirtual

Reimplemented from sstmac::sumi_api.

Referenced by ImplementAPI().

virtual void sumi::sumi_transport::init_factory_params ( sprockit::sim_parameters *  params)
privatevirtual

Reimplemented from sstmac::sumi_api.

Referenced by ImplementAPI().

void sumi::sumi_transport::ping_timeout ( pinger *  pnger)
private

Referenced by ~sumi_transport().

void sumi::sumi_transport::schedule_next_heartbeat ( )
protected

Referenced by incoming_event().

void sumi::sumi_transport::schedule_ping_timeout ( pinger *  pnger,
double  to 
)
protected

Referenced by incoming_event().

double sumi::sumi_transport::wall_time ( ) const
private

Referenced by ~sumi_transport().


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