blomma-graphs-logo

Sprint 4

16/09 - 23/09

Agenda

  1. Framework updates
  2. Practical evaluation
  3. Theoretical evaluation

Framwork updates

Performance
improvements

  • Cache multiple collections in graph implementation
  • Use sorted tree structures to reduce search time: log(n)
  • Improved performance by factor ~20 for edge access and searching
  • Still much potential for nodes and other search functions

Multiprocessor
improvements

  • Improved task graph set scheduling
  • Split load into multiple threads
  • One thread for each task graph set and each scheduler
  • Still potential for asynchronous writing and reading of files

Practical evaluation

Approach

  • Execute given schedule
  • One Java thread (worker) for each cpu
  • Check dependencies instead of startTime
  • Synchronized results list across all workers
  • Perform fake work with time scale of 1 : 20
    • Time based worker
    • Load based worker
  • Returns schedule of simulated execution

Example

Summary

  • Practical execution takes longer than theoretical values
  • There are some more gaps because of small timing differences
  • Timbased approach is closer to theoretical one than the loadbased one
  • Loadbased approach is strongly influenced by system setup and other load on the system

Theoretical evaluation

Structure

  • Graph overview
  • Group overview
  • Scheduler overview
  • Several diagramtypes
  • Evaluation for 10, 50, 100, 300