| 
    SST/macro
    
   | 
 
#include <multithreaded_event_container.h>


Classes | |
| struct | send_recv_thread_functor | 
| struct | vote_thread_functor | 
Public Member Functions | |
| multithreaded_event_container (parallel_runtime *rt) | |
| ~multithreaded_event_container () throw () | |
| virtual void | init_factory_params (sprockit::sim_parameters *params) | 
| virtual void | finalize_init () | 
| virtual void | run () | 
| Run the eventmanager.  More... | |
| virtual void | schedule_stop (timestamp until) | 
| void | multithread_schedule (int srcthread, int dstthread, uint32_t seqnum, event_queue_entry *ev) | 
| std::list< event_queue_entry * > & | pending_events (int srcthread, int dstthread) | 
| virtual void | set_interconnect (hw::interconnect *interconn) | 
| virtual void | receive_incoming_events () | 
| void | schedule_incoming (int thread_id, clock_cycle_event_map *mgr) | 
| void | send_recv_barrier (int thread_id) | 
| timestamp | time_vote_barrier (int thread_id, timestamp min_time) | 
| virtual timestamp | vote_next_round (timestamp my_time) | 
| event_manager * | ev_man_for_thread (int thread_id) const | 
| virtual void | finish_stats (stat_collector *main, const std::string &name, timestamp end) | 
  Public Member Functions inherited from sstmac::native::clock_cycle_event_map | |
| clock_cycle_event_map (parallel_runtime *rt) | |
| virtual | ~clock_cycle_event_map () throw () | 
| bool | vote_to_terminate () | 
| virtual void | ipc_schedule (timestamp t, event_loc_id dst, event_loc_id src, uint32_t seqnum, event *ev) | 
  Public Member Functions inherited from sstmac::native::event_map | |
| event_map (parallel_runtime *rt) | |
| ~event_map () throw () | |
| void | clear (timestamp zero_time=timestamp(0)) | 
| Clear all events and set time back to a zero of your choice.  More... | |
| void | cancel_all_messages (event_loc_id mod) | 
| bool | empty () const | 
  Public Member Functions inherited from sstmac::native::event_container | |
| virtual | ~event_container () throw () | 
| Goodbye.  More... | |
  Public Member Functions inherited from sstmac::event_manager | |
| virtual std::string | to_string () const | 
| bool | is_complete () | 
| virtual | ~event_manager () | 
| Goodbye.  More... | |
| timestamp | now () const | 
| void | register_stat (stat_collector *stat, bool reduce_all=true, bool dump_all=false, bool dump_main=true) | 
| stat_collector * | register_thread_unique_stat (stat_collector *stat, bool reduce_all=true, bool dump_all=false, bool dump_main=true) | 
| partition * | topology_partition () const | 
| parallel_runtime * | runtime () const | 
| void | finish_stats () | 
| void | stop () | 
| int | me () const | 
| int | worker_id () const | 
| int | nproc () const | 
| int | nworker () const | 
| virtual int | lpid () const | 
| int | thread_id () const | 
| int | nthread () const | 
  Public Member Functions inherited from sprockit::factory_type | |
| virtual void | init_factory_params (sim_parameters *params) | 
Additional Inherited Members | |
  Public Types inherited from sstmac::native::clock_cycle_event_map | |
| enum | vote_type_t { vote_max, vote_min } | 
  Static Public Member Functions inherited from sstmac::event_manager | |
| static int | current_thread_id () | 
  Static Public Attributes inherited from sstmac::event_manager | |
| static event_manager * | global | 
  Protected Types inherited from sstmac::native::event_map | |
| typedef std::set< event_queue_entry *, event_compare > | queue_t | 
  Protected Member Functions inherited from sstmac::native::clock_cycle_event_map | |
| virtual void | schedule_incoming (const std::vector< void * > &mpi_buffers) | 
| void | do_next_event () | 
| timestamp | next_event_time () const | 
| virtual timestamp | vote_next_round (timestamp my_time, vote_type_t ty) | 
| int64_t | do_vote (int64_t time, vote_type_t ty=vote_min) | 
  Protected Member Functions inherited from sstmac::native::event_map | |
| event_queue_entry * | pop_next_event () | 
| void | add_event (event_queue_entry *ev) | 
| Called by schedule. Child class must implement.  More... | |
  Protected Member Functions inherited from sstmac::native::event_container | |
| event_container (parallel_runtime *rt) | |
| void | schedule (timestamp start_time, uint32_t seqnum, event_queue_entry *ev) | 
| Set off the given eventhandler at the given time.  More... | |
| void | finish () | 
| Called at end of run().  More... | |
  Protected Member Functions inherited from sstmac::event_manager | |
| event_manager (parallel_runtime *rt) | |
| void | set_now (const timestamp &ts) | 
  Static Protected Attributes inherited from sstmac::event_manager | |
| static std::vector< pthread_t > | pthreads_ | 
| static std::vector< pthread_attr_t > | pthread_attrs_ | 
Definition at line 39 of file multithreaded_event_container.h.
      
  | 
  inline | 
Definition at line 43 of file multithreaded_event_container.h.
      
  | 
  inline | |||||||||||||
Definition at line 46 of file multithreaded_event_container.h.
References sstmac::run().

      
  | 
  virtual | 
Reimplemented from sstmac::event_manager.
      
  | 
  virtual | 
Reimplemented from sstmac::native::clock_cycle_event_map.
      
  | 
  virtual | 
Reimplemented from sstmac::event_manager.
      
  | 
  virtual | 
Reimplemented from sstmac::native::clock_cycle_event_map.
      
  | 
  virtual | 
Reimplemented from sstmac::event_manager.
      
  | 
  inline | 
Definition at line 68 of file multithreaded_event_container.h.
References main.
      
  | 
  virtual | 
Reimplemented from sstmac::native::clock_cycle_event_map.
      
  | 
  virtual | 
Run the eventmanager.
The eventmanager shall return control when no more messages remain.
Reimplemented from sstmac::native::clock_cycle_event_map.
| void sstmac::native::multithreaded_event_container::schedule_incoming | ( | int | thread_id, | 
| clock_cycle_event_map * | mgr | ||
| ) | 
      
  | 
  virtual | 
Reimplemented from sstmac::event_manager.
| void sstmac::native::multithreaded_event_container::send_recv_barrier | ( | int | thread_id | ) | 
      
  | 
  virtual | 
Reimplemented from sstmac::native::clock_cycle_event_map.
| timestamp sstmac::native::multithreaded_event_container::time_vote_barrier | ( | int | thread_id, | 
| timestamp | min_time | ||
| ) | 
      
  | 
  virtual | 
      
  | 
  protected | 
Definition at line 123 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 124 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 125 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 121 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 118 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 114 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 116 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 119 of file multithreaded_event_container.h.
      
  | 
  protected | 
Definition at line 104 of file multithreaded_event_container.h.
 1.8.11