[all-commits] [llvm/llvm-project] a5228b: [Darwin] Limit parallelism for sanitizer tests tha...

Julian Lettner via All-commits all-commits at lists.llvm.org
Thu Mar 31 14:43:41 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a5228bcaad9c57e7ede95d900a730c59f5243d35
      https://github.com/llvm/llvm-project/commit/a5228bcaad9c57e7ede95d900a730c59f5243d35
  Author: Julian Lettner <julian.lettner at apple.com>
  Date:   2022-03-31 (Thu, 31 Mar 2022)

  Changed paths:
    M compiler-rt/test/asan/Unit/lit.site.cfg.py.in
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/sanitizer_common/Unit/lit.site.cfg.py.in
    M compiler-rt/test/tsan/Unit/lit.site.cfg.py.in
    M compiler-rt/unittests/lit.common.unit.cfg.py
    R compiler-rt/unittests/lit_unittest_cfg_utils.py

  Log Message:
  -----------
  [Darwin] Limit parallelism for sanitizer tests that use shadow memory on AS

On Darwin, we want to limit the parallelism during test execution for
sanitizer tests that use shadow memory.  The reason is explained by this
existing comment:

> Only run up to 3 processes that require shadow memory simultaneously
> on 64-bit Darwin. Using more scales badly and hogs the system due to
> inefficient handling of large mmap'd regions (terabytes) by the
> kernel.

Previously we detected 3 cases:
* on-device: limit to 1 process
* 64-bit: macOS & simulators, limit to 3 processes
* others (32-bit): no limitation

We checked for the 64-bit case like this: `if arch in ['x86_64',
'x86_64h']` which misses macOS running on AS. Additionally, we don't
care about 32-bit anymore, so I've simplified this to 2 cases: on-device
and everything else.

Differential Revision: https://reviews.llvm.org/D122751




More information about the All-commits mailing list