[all-commits] [llvm/llvm-project] c4bacc: [Modules] Add stats to measure performance of buil...

Volodymyr Sapsai via All-commits all-commits at lists.llvm.org
Thu Sep 24 12:24:10 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c4bacc3c9b333bb7032fb96f41d6f5b851623132
      https://github.com/llvm/llvm-project/commit/c4bacc3c9b333bb7032fb96f41d6f5b851623132
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2020-09-24 (Thu, 24 Sep 2020)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [Modules] Add stats to measure performance of building and loading modules.

Measure amount of high-level or fixed-cost operations performed during
building/loading modules and during header search. High-level operations
like building a module or processing a .pcm file are motivated by
previous issues where clang was re-building modules or re-reading .pcm
files unnecessarily. Fixed-cost operations like `stat` calls are tracked
because clang cannot change how long each operation takes but it can
perform fewer of such operations to improve the compile time.

Also tracking such stats over time can help us detect compile-time
regressions. Added stats are more stable than the actual measured
compilation time, so expect the detected regressions to be less noisy.

rdar://problem/55715134

Reviewed By: aprantl, bruno

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




More information about the All-commits mailing list