llvm-project/llvm/lib
Vedant Kumar 0bd9907581 [llvm-profdata] Speed up merging by using a thread pool
Add a "-j" option to llvm-profdata to control the number of threads
used. Auto-detect NumThreads when it isn't specified, and avoid spawning
threads when they wouldn't be beneficial.

I tested this patch using a raw profile produced by clang (147MB). Here is the
time taken to merge 4 copies together on my laptop:

  No thread pool: 112.87s user 5.92s system 97% cpu 2:01.08 total
  With 2 threads: 134.99s user 26.54s system 164% cpu 1:33.31 total

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

llvm-svn: 275921
2016-07-18 22:02:39 +00:00
..
Analysis refactor SimplifySelectInst; NFCI 2016-07-18 20:56:53 +00:00
AsmParser Add writeonly IR attribute 2016-07-04 08:01:29 +00:00
Bitcode [ThinLTO] Address review comments from PGO indirect call promotion (NFC) 2016-07-18 18:31:50 +00:00
CodeGen CodeGenPrep: use correct function to determine Global's alignment. 2016-07-18 18:28:52 +00:00
DebugInfo [pdb] Teach MsfBuilder and other classes about the Free Page Map. 2016-07-15 22:17:19 +00:00
ExecutionEngine [LLVM][MIPS] Fix createStubFunction to emit JR encoding based on Arch. 2016-07-15 12:56:37 +00:00
Fuzzer [libFuzzer] add hooks for strstr, strcasestr, strcasecmp, strncasecmp 2016-07-15 23:27:19 +00:00
IR [OptRemark,LDist] RFC: Add hotness attribute 2016-07-15 17:23:20 +00:00
IRReader Remove autoconf support 2016-01-26 21:29:08 +00:00
LTO Move legacy LTO interface headers to legacy/ directory. 2016-07-14 21:21:16 +00:00
LibDriver Object: Replace NewArchiveIterator with a simpler NewArchiveMember class. NFCI. 2016-06-29 22:27:42 +00:00
LineEditor Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
Linker IR: New representation for CFI and virtual call optimization pass metadata. 2016-06-24 21:21:32 +00:00
MC [MC] Separate non-parsing operations from conditional chains. NFC. 2016-07-18 19:35:21 +00:00
Object BPF: Use official ELF e_machine value 2016-07-15 22:27:55 +00:00
ObjectYAML BPF: Use official ELF e_machine value 2016-07-15 22:27:55 +00:00
Option Option parser: class for consuming a joined arg in addition to all remaining args 2016-04-15 00:23:30 +00:00
Passes [PM] Convert Loop Strength Reduce pass to new PM 2016-07-18 21:41:50 +00:00
ProfileData [llvm-profdata] Speed up merging by using a thread pool 2016-07-18 22:02:39 +00:00
Support [Object] Re-apply r275316 now that I have the corresponding LLD patch ready. 2016-07-14 02:24:01 +00:00
TableGen [TableGen] Autobrief-ize Record. NFC. 2016-07-14 14:53:14 +00:00
Target [NVPTX] Make sure we adjust alignment at all call sites 2016-07-18 21:58:48 +00:00
Transforms [PM] Convert Loop Strength Reduce pass to new PM 2016-07-18 21:41:50 +00:00
CMakeLists.txt Move ObjectYAML code to a new library. 2016-03-01 19:15:06 +00:00
LLVMBuild.txt Add LLVMBuild for ObjectYAML. 2016-03-01 21:29:33 +00:00