1. 10 Aug, 2016 1 commit
    • Millian Poquet's avatar
      Towards dynamic jobs: memory management. · e8d4f5c2
      Millian Poquet authored
      Dynamic jobs are now added into Batsim data structures when the server
      received a JOB_SUBMITTED message if needed.
      
      To do so, methods have been added in the data structures (Jobs, Profiles,
      Workloads...).
      
      Furthermore, the JSON parsing is a bit cleaner now to avoid code redundancy.
      e8d4f5c2
  2. 04 Aug, 2016 3 commits
    • Millian Poquet's avatar
      Submitter/Server protocol improved. · b0a3b6a9
      Millian Poquet authored
      Submitters can now identify themselves, which allows
      a callback mechanism when jobs are completed.
      The submitters which want this callback mechanism
      should enable it when saying HELLO to the server,
      then, all jobs submiitted by this submitter will
      generate a callback once they complete.
      b0a3b6a9
    • Millian Poquet's avatar
      Major commit: multiple workloads. · 3ecccd22
      Millian Poquet authored
      This commit is a big step forward to handle multiple workloads at the same time.
      
      Protocol update. Jobs are no longer identified only by a unique number, but
      by a workload_name and a unique number within this workload_name. The separator
      between these two fields is '!'. The default workload, the one read from the
      input JSON file, is called "static". If the scheduler gives an order about
      a job by only calling it by its unique number, the 'static' workload is
      assumed, for compatibility reasons.
      
      Batsim code update. There is no longer "Jobs" and "Profiles" roaming in the
      BatsimContext. Now, Jobs and Profiles are grouped together inside one Workload
      instance. Different Workload instances can be stored into a Workloads (note
      the 's'!), which is just a map<string, Workload*> with wrapping methods
      to simplify job handling. A Workloads is instanciated in the BatsimContext.
      
      Batsim code update. Jobs are now identified by a structure JobIdentifier.
      This struct is just a string (the workload name) and an integer (the unique
      job number within its workload). JobIdentifier are used within most
      ipp messages now. Furthermore, jobs know in which workload they are,
      and Jobs know in which Workload they are.
      
      Batsim tests pass this commit, but a Redis server should be launched to
      avoid assertion fails. Redis is not yet used on the scheduler side,
      this part has not been tested yet. Travis has not been updated yet to
      install and execute Redis, so the tests won't work on Travis at the moment.
      3ecccd22
    • Millian Poquet's avatar
      6139096c
  3. 18 Jul, 2016 2 commits
    • Millian Poquet's avatar
      Travis: function documentation · 68416042
      Millian Poquet authored
      68416042
    • Millian Poquet's avatar
      Batsim: machines' sorting handles numbers now. · bc62d223
      Millian Poquet authored
      Previously, the lexicographical order was used.
      This caused 'machine2' > 'machine10'.
      
      Now, when strings contain digits at the same position,
      the whole integer are read and compared.
      Now, 'machine2' > 'machine10'.
      
      Which means that the first machines are no longer
      'machine1', 'machine10', 'machine11' ..., 'machine100' ...
      but 'machine1', 'machine2', 'machine3' ...
      bc62d223
  4. 12 Jul, 2016 4 commits
  5. 11 Jul, 2016 4 commits
  6. 08 Jul, 2016 5 commits
  7. 07 Jul, 2016 1 commit
  8. 06 Jul, 2016 1 commit
  9. 05 Jul, 2016 2 commits
  10. 04 Jul, 2016 8 commits
  11. 01 Jul, 2016 7 commits
  12. 29 Jun, 2016 1 commit
  13. 27 Jun, 2016 1 commit