diff options
author | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2016-01-28 23:10:44 +0000 |
---|---|---|
committer | Jonathan Peyton <jonathan.l.peyton@intel.com> | 2016-01-28 23:10:44 +0000 |
commit | 7d45451a0dab120c94ae4ab3d7041fc223ae00cf (patch) | |
tree | ee6c1ef75f8e67b73931c893581027f6e2faa8cf /lldb/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py | |
parent | cd23fec756a08850836d96af33e53aa12e15c0af (diff) | |
download | bcm5719-llvm-7d45451a0dab120c94ae4ab3d7041fc223ae00cf.tar.gz bcm5719-llvm-7d45451a0dab120c94ae4ab3d7041fc223ae00cf.zip |
Fix task dependency performance problem
In: http://lists.llvm.org/pipermail/openmp-dev/2015-August/000858.html, a
performance issue was found with libomp's task dependencies. The task
dependencies hash table has an issue with collisions. The current table size is
a power of two. This combined with the current hash function causes a large
number of collisions to occurr. Also, the current size (64) is too small for
larger applications so the table size is increased.
This patch creates a two level hash table approach for task dependencies. The
implicit task is considered the "master" or "top-level" task which has a large
static sized hash table (997), and nested tasks will have smaller hash
tables (97). Prime numbers were chosen to help reduce collisions.
Differential Revision: http://reviews.llvm.org/D16640
llvm-svn: 259113
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py')
0 files changed, 0 insertions, 0 deletions