00001 /* #start# *********************************************************** 00002 00003 Scheduling Simulator 00004 Lehrstuhl f"ur Effiziente Algorithmen 00005 Technische Universit"at M"unchen 00006 00007 File : $Id: SLudwigTiwari.h,v 1.3 2003/01/08 18:57:11 meierb Exp $ 00008 00009 Purpose : Malleable Parallel Task Scheduling 00010 00011 RCS-Log: 00012 $Log: SLudwigTiwari.h,v $ 00013 Revision 1.3 2003/01/08 18:57:11 meierb 00014 added randomized release times 00015 00016 Revision 1.1.1.1 2002/12/02 22:26:19 meierb 00017 my_schedule 00018 00019 Revision 1.1 2002/08/29 12:59:58 taeubig 00020 Added the sources 00021 00022 Revision 1.3 2000/07/05 21:51:35 mayerh 00023 added method getLeaBibEntry and made some changes 00024 00025 Revision 1.2 2000/05/24 12:21:07 taeubig 00026 New compiler (gcc-2.95) and new Qt (2.1) 00027 Replaced "list" by "leda_list" etc. 00028 00029 Revision 1.1 2000/04/18 00:06:54 taeubig 00030 Added algorithm for Malleable Parallel Task Scheduling 00031 proposed by W. Ludwig and P. Tiwari 00032 00033 00034 * #end# ************************************************************* */ 00035 00036 #ifndef SLUDWIGTIWARI_H 00037 #define SLUDWIGTIWARI_H 00038 00039 // system header files 00040 00041 // project header files 00042 #include "SSchedAlgorithm.h" 00043 00044 class SLudwigTiwari : public SSchedAlgorithm { 00045 public: 00046 00047 virtual ~SLudwigTiwari() {}; 00048 virtual void startup(); 00049 virtual double innerLoop(const leda_list<STSysSchedEvent>& rEvents); 00050 virtual const leda_string getDescription() const; 00051 virtual const leda_string &getName() const; 00052 virtual const SClassification &getClassification() const; 00053 virtual SLeaBibEntry &getLeaBibEntry() const; 00054 00055 protected: 00056 // remaining available jobs of the current level 00057 leda_set<SJob*> currentLevelJobs; 00058 00059 }; 00060 00061 #endif //SLUDWIGTIWARI_H