1. 09 Nov, 2020 1 commit
  2. 05 Nov, 2020 1 commit
  3. 04 Nov, 2020 6 commits
  4. 03 Nov, 2020 2 commits
  5. 02 Nov, 2020 2 commits
  6. 28 Oct, 2020 1 commit
  7. 27 Oct, 2020 3 commits
    • CARDOSI Paul's avatar
      Fix issue : lastIdx should be subtracted step in case where the item to be... · 291678d6
      CARDOSI Paul authored
      Fix issue : lastIdx should be subtracted step in case where the item to be removed is the last element.
      291678d6
    • CARDOSI Paul's avatar
      Merge branch 'taskwait-equivalent' into 'master' · cd415494
      CARDOSI Paul authored
      Implementation of finish method of task graph.
      
      See merge request bramas/spetabaru!29
      cd415494
    • CARDOSI Paul's avatar
      Implementation of finish method of task graph. · 31f3f7ec
      CARDOSI Paul authored
      History of commit messages:
      Trying to implement equivalent of taskwait.
      
      Strange segfault.
      
      Bug is very obscure.
      
      Remove uneccessary task graph pointer vector.
      
      Add quick sort test.
      
      Adjust parameters.
      
      Allow a compute engine to be created without any workers. Remove fibonacci and quicksort tests.
      
      Simplify locking logic in task insertion. Remove unnecessary condition in thisTaskIsReady method of SpTaskGraph.
      
      Fix issue : workers access task graph in postTaskExecution after task graph has already been destroyed.
      
      PrioScheduler getNbTasks should return value of atomic counter of ready tasks (to avoid having to acquire mutex in worker loop).
      
      Add comments explaining issue.
      
      Revert back to old locking scheme.
      31f3f7ec
  8. 09 Sep, 2020 3 commits
  9. 08 Sep, 2020 3 commits
  10. 07 Sep, 2020 5 commits
  11. 04 Sep, 2020 2 commits
    • CARDOSI Paul's avatar
      Merge branch 'split-workers-from-runtime-at-interface-level' into 'master' · 123c779e
      CARDOSI Paul authored
      Separate task graph from work execution.
      
      See merge request bramas/spetabaru!27
      123c779e
    • CARDOSI Paul's avatar
      Separate task graph from work execution. · 40ae356e
      CARDOSI Paul authored
      Squashed commit messages :
      Draft.
      
      Draft 2.
      
      Draft 3.
      
      Deadlock.
      
      Lock worker lock and compute engine lock in the same order everywhere.
      
      Forward SpRuntime nbThreads argument to SpComputeEngine constructor. Remove debug printouts.
      
      Lock all locks in scoped ordered lock through a unique_lock instance.
      
      Implement svg trace function in SpTaskGraph. Implement stopAllThreads function in SpRuntime. Use plain mutexes in SpScopedOrderedLock.
      
      Allow compute engine pointer of worker to be changed by main thread.
      
      Remove unnecessary boolean variable.
      
      Optimize for the case where workers just keep popping the next task from the same compute engine.
      
      Begin work on detachWorkers function.
      
      Begin remodeling code to allow workers to be detached.
      
      Deadlock.
      
      Working version.
      
      Remove unnecessary shouldBeMigrated member variable.
      
      Properly stop workers and compute engine.
      
      Fix broken svg trace generation function.
      
      Remove unused classes.
      
      Add compute engine and task graph unit tests. Fix avaiable workers logic.
      
      Use small_vector in compute engine.
      
      Refactor compute engine unit test.
      
      Remove redundant synchronization.
      
      Forgot to add lock back into bindTo function.
      
      Trying to add atomics for most common case (broken).
      
      Seems to work.
      
      Bind to ce should be release/acquire.
      
      Stop flag memroy operations should be memory order relaxed. Load of ce inside mutex protected region should be relaxed. Add comment explaining choice of memory order for atomic load of ce in worker loop.
      
      Set thread id in worker constructor.
      
      Change comment about ce load memory order.
      
      Condition inside waitOnCe was wrong.
      
      Forgot to remove duplicate code. Change update logic for waiting worker counters.
      40ae356e
  12. 26 Aug, 2020 3 commits
  13. 18 Jun, 2020 2 commits
  14. 03 Jun, 2020 1 commit
  15. 02 Jun, 2020 2 commits
  16. 28 May, 2020 2 commits
    • CARDOSI Paul's avatar
      Merge branch 'callable-wrappers' into 'master' · 0dc80b8a
      CARDOSI Paul authored
      Add support for gpu callables on task method interface
      
      See merge request bramas/spetabaru!23
      0dc80b8a
    • CARDOSI Paul's avatar
      Add interface support for gpu callables. · efe644a0
      CARDOSI Paul authored
      Patition and check task method call arguments for both tasks created by the user and tasks created internally by the runtime.
      Replace index_sequence unpacking logic with a foreach_in_tuple template function.
      Restructure SpRuntime source file.
      Use g++-8 for ci tests.
      efe644a0
  17. 08 Apr, 2020 1 commit