[PATCH] D54889: Fiber support for thread sanitizer

Joachim Protze via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 12 08:14:26 PST 2020


protze.joachim added a comment.

I work on integrating this for OpenMP task into openmp/tools/archer/ompt-tsan.cpp
I just submitted a patch for review to make the interface dynamic linkable: https://reviews.llvm.org/D74487

Initial experiments of the integration into ompt-tsan show two issues:

- switching overhead for small tasks is significant (70x over the execution without switching fibers)

- for large numbers of fibers (~15k) I get allocation errors, although top doesn't show significant memory usage by the application:

  ==274531==FATAL: ThreadSanitizer: internal allocator is out of memory trying to allocate 0x3fb58 bytes

or

  ==274830==ERROR: ThreadSanitizer failed to deallocate 0x41000 (266240) bytes at address 0x7f8813fd2000
  ==274830==ERROR: ThreadSanitizer failed to deallocate 0x43000 (274432) bytes at address 0x0e2050cf1000
  FATAL: ThreadSanitizer CHECK failed: /home/pj416018/TSAN/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_posix.cc:61 "(("unable to unmap" && 0)) != (0)" (0x0, 0x0)


Repository:
  rCRT Compiler Runtime

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D54889/new/

https://reviews.llvm.org/D54889





More information about the llvm-commits mailing list