1. 22 Jan, 2016 1 commit
    • Peter W. Draper's avatar
      Merge branch 'kernels' into 'master' · b46be395
      Peter W. Draper authored
      Corrected the Wendland C2 kernel.
      
      Still needs checking. @jwillis, can you check whether the number of neighbours is sensible with this version ?
      
      The definition of kernels is still not completely optimal so minor changes may appear at a later stage in the project when nothing more urgent needs attention.
      
      See merge request !77
      b46be395
  2. 21 Jan, 2016 3 commits
    • Peter W. Draper's avatar
      Merge branch 'numa_affinity' into 'master' · 14418b1d
      Peter W. Draper authored
      NUMA-aware affinity
      
      Resolves #76. Yes, ```hyperthreads_present``` is bonkers - it's easy to detect whether the processor supports the technology, but this is the best I've found to tell whether it's enabled.
      
      See merge request !78
      14418b1d
    • Angus Lepper's avatar
      NUMA-aware affinity checks whether HT is disabled · b564d32d
      Angus Lepper authored
      * Alternative: does .../thread_siblings contain more than a single 1?
        n.b. May or may not contain a comma if so.
      b564d32d
    • Angus Lepper's avatar
      NUMA-aware affinity for workers · 61b0165e
      Angus Lepper authored
      * This is not vectorisation-specific.
      * There may be better trade-offs between HT and NUMA.
      * Maybe print a warning when we require multiple NUMA nodes.
      * Must also detect when Hyper-Threading is not present.
      * Probably better as a configure flag, rather than conditional only upon
        the availability of libnuma.
      * ~15-40% performance improvement on COSMA.
      61b0165e
  3. 20 Jan, 2016 1 commit
  4. 18 Jan, 2016 1 commit
  5. 13 Jan, 2016 3 commits
  6. 12 Jan, 2016 3 commits
    • Peter W. Draper's avatar
      Merge branch 'overlapping_tasks' into 'master' · 2c31f0e5
      Peter W. Draper authored
      Overlapping tasks
      
      This is a back-port of some changes I made to QuickSched: instead of taking the first lockable task with the largest weight, look for a task that maximally overlaps with the previously executed task.
      
      This is done to maximize cache re-use, i.e. tasks with similar priorities operating on similar data will be scheduled closer to each other. I was already trying to do this by favouring tasks with the same super-cell as the previous task, but that was a bit of a mess. This should work much better.
      
      Peter, can you check this both for correctness and if it doesn't cause a performance regression? I don't really expect a measurable performance gain directly, but this will have a strong effect on some caching that @alepper is currently working on.
      
      Cheers!
      
      See merge request !75
      2c31f0e5
    • Peter W. Draper's avatar
      Merge branch 'big_io' · e166fb0f
      Peter W. Draper authored
      conflict in src/scheduler.c.
      e166fb0f
    • Peter W. Draper's avatar
      Merge branch 'scheduler_fix' into 'master' · 9c9b9c84
      Peter W. Draper authored
      init tasks and tasks_ind to make sure they're not freed.
      
      Fixes the bungled push to master I did just recently.
      
      See merge request !74
      9c9b9c84
  7. 11 Jan, 2016 10 commits
  8. 10 Jan, 2016 5 commits
  9. 08 Jan, 2016 1 commit
  10. 07 Jan, 2016 12 commits