Charades
optimistic.h
1 #ifndef _OPTIMISTIC_H_
2 #define _OPTIMISTIC_H_
3 
4 #include "scheduler.h"
5 
6 #include "lp.h" // Included for LPToken
7 
8 using std::vector;
9 
10 class OptimisticScheduler : public CBase_OptimisticScheduler {
11  private:
12  // TODO: Do we need a separate cancel queue, or can we treat it like FC?
15  public:
17  void execute();
18 
20  void gvt_resume();
21  void gvt_done(Time gvt, bool lb);
24  void collect_fossils(Time gvt);
25  void balancing_complete();
26  void process_cancel_q();
27  void update_min_cancel(Time);
28  Time get_min_time() const;
29 };
30 
31 #endif
void collect_fossils(Time gvt)
Extra methods for dealing with speculative events.
Definition: optimistic.C:65
void gvt_done(Time gvt, bool lb)
Partially overridden to add FC.
Definition: optimistic.C:60
void update_min_cancel(Time)
Update min_cancel_time.
Definition: optimistic.C:85
Time min_cancel_time
minumum event time in the cancel queue
Definition: optimistic.h:13
Time get_min_time() const
Overriden to include min_cancel_time.
Definition: optimistic.C:37
Definition: optimistic.h:10
void execute()
Execute events in batches until the trigger dictates it's GVT time.
Definition: optimistic.C:46
void process_cancel_q()
Process the LPs in the cancel_q.
Definition: optimistic.C:77
void gvt_resume()
Method overrides for GVT control flow.
Definition: optimistic.C:56
Declarations for classes/variables/methods related to LPs.