SST/macro
|
#include <packet_flow_packetizer.h>
Public Member Functions | |
packet_flow_nic_packetizer () | |
std::string | to_string () const |
virtual void | init_factory_params (sprockit::sim_parameters *params) |
virtual | ~packet_flow_nic_packetizer () |
void | setNotify (event_handler *handler) |
bool | spaceToSend (int vn, int num_bits) const |
We assume the injection buffer has infinite occupancy. More... | |
void | inject (int vn, long bytes, long byte_offset, message *payload) |
void | set_output (int port, connectable *output, int credits) |
Set up the injection/ejection links to the switch the NIC is connected to. More... | |
void | set_input (int port, connectable *input) |
virtual void | set_event_parent (event_scheduler *m) |
Set the eventmanager for this scheduler. More... | |
virtual void | finalize_init () |
void | set_acker (event_handler *handler) |
double | injection_bandwidth () const |
Public Member Functions inherited from sstmac::hw::packet_flow_packetizer | |
void | handle (event *ev) |
Public Member Functions inherited from sstmac::hw::packetizer | |
virtual | ~packetizer () |
void | start (int vn, message *payload) |
void | packetArrived (int vn, packet *pkt) |
void | sendWhatYouCan (int vn) |
void | setNotify (packetizer_callback *handler) |
int | packetSize () const |
Public Member Functions inherited from sprockit::factory_type | |
virtual void | init_factory_params (sim_parameters *params) |
Public Member Functions inherited from sstmac::event_subscheduler | |
event_subscheduler () | |
timestamp | now () const |
get the current time More... | |
void | schedule (timestamp t, event_handler *handler, event *ev) |
Add an event to the event queue, where msg will get delivered to handler at time t. More... | |
void | schedule (timestamp t, event_queue_entry *ev) |
void | schedule_now (event_queue_entry *ev) |
void | schedule_now (event_handler *handler, event *ev) |
void | schedule_delay (timestamp delay, event_handler *handler, event *ev) |
void | schedule_delay (timestamp delay, event_queue_entry *ev) |
void | send_self_event (timestamp arrival, event *ev) |
void | send_delayed_self_event (timestamp delay, event *ev) |
void | send_now_self_event (event *ev) |
void | send_self_event_queue (timestamp arrival, event_queue_entry *ev) |
void | send_delayed_self_event_queue (timestamp delay, event_queue_entry *ev) |
void | send_now_self_event_queue (event_queue_entry *ev) |
event_scheduler * | parent () const |
Public Member Functions inherited from sstmac::event_handler | |
virtual | ~event_handler () |
event_loc_id | event_location () const |
virtual bool | ipc_handler () const |
Whether an event handler is a "fake" handler that represents logical process boundary. More... | |
int | thread_id () const |
virtual void | deadlock_check (event *ev) |
virtual void | deadlock_check () |
Protected Member Functions | |
void | recv_packet_common (packet_flow_payload *pkt) |
virtual void | recv_credit (packet_flow_credit *credit) |
Protected Member Functions inherited from sstmac::hw::packetizer | |
packetizer () | |
void | bytesArrived (int vn, uint64_t unique_id, int bytes, message *parent) |
Protected Member Functions inherited from sstmac::event_handler | |
event_handler () | |
void | init_loc_id (event_loc_id id) |
void | init_thread_id (int id) |
Protected Attributes | |
double | inj_bw_ |
double | ej_bw_ |
int | buffer_size_ |
packet_flow_injection_buffer * | inj_buffer_ |
packet_flow_eject_buffer * | ej_buffer_ |
recv_cq | completion_queue_ |
node_id | my_addr_ |
packet_sent_stats * | stat_collector_ |
packet_sent_stats * | buf_stats_ |
packet_allocator * | pkt_allocator_ |
Protected Attributes inherited from sstmac::event_subscheduler | |
event_scheduler * | parent_ |
Additional Inherited Members | |
Static Public Attributes inherited from sstmac::event_handler | |
static const int | null_lpid = -1 |
static const int | null_threadid = -1 |
Definition at line 32 of file packet_flow_packetizer.h.
sstmac::hw::packet_flow_nic_packetizer::packet_flow_nic_packetizer | ( | ) |
|
virtual |
|
virtual |
Reimplemented from sprockit::factory_type.
|
virtual |
Reimplemented from sstmac::hw::packetizer.
|
virtual |
Implements sstmac::hw::packetizer.
|
inline |
Definition at line 79 of file packet_flow_packetizer.h.
References sstmac::hw::packet_flow_packetizer::recv_credit().
|
protectedvirtual |
Implements sstmac::hw::packet_flow_packetizer.
|
protected |
void sstmac::hw::packet_flow_nic_packetizer::set_acker | ( | event_handler * | handler | ) |
|
virtual |
Set the eventmanager for this scheduler.
Unfortunately, this always has to be called after an event_scheduler is constructed.
m | the simulation eventmanager |
Reimplemented from sstmac::event_subscheduler.
void sstmac::hw::packet_flow_nic_packetizer::set_input | ( | int | port, |
connectable * | input | ||
) |
void sstmac::hw::packet_flow_nic_packetizer::set_output | ( | int | port, |
connectable * | output, | ||
int | credits | ||
) |
Set up the injection/ejection links to the switch the NIC is connected to.
sw | The switch that injects/ejects |
void sstmac::hw::packet_flow_nic_packetizer::setNotify | ( | event_handler * | handler | ) |
|
virtual |
We assume the injection buffer has infinite occupancy.
Implements sstmac::hw::packetizer.
|
inlinevirtual |
Reimplemented from sstmac::event_subscheduler.
Definition at line 40 of file packet_flow_packetizer.h.
References sprockit::factory_type::finalize_init(), sstmac::hw::packetizer::init_factory_params(), sstmac::hw::packetizer::inject(), sprockit::printf(), sstmac::event_subscheduler::set_event_parent(), sstmac::hw::packetizer::setNotify(), and sstmac::hw::packetizer::spaceToSend().
|
protected |
Definition at line 102 of file packet_flow_packetizer.h.
|
protected |
Definition at line 93 of file packet_flow_packetizer.h.
|
protected |
Definition at line 97 of file packet_flow_packetizer.h.
|
protected |
Definition at line 95 of file packet_flow_packetizer.h.
|
protected |
Definition at line 92 of file packet_flow_packetizer.h.
|
protected |
Definition at line 94 of file packet_flow_packetizer.h.
|
protected |
Definition at line 91 of file packet_flow_packetizer.h.
|
protected |
Definition at line 99 of file packet_flow_packetizer.h.
|
protected |
Definition at line 103 of file packet_flow_packetizer.h.
|
protected |
Definition at line 101 of file packet_flow_packetizer.h.