[all-commits] [llvm/llvm-project] 97579d: [MCA] Introducing incremental SourceMgr and resuma...

Min-Yih Hsu via All-commits all-commits at lists.llvm.org
Fri Jun 24 15:41:46 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 97579dcc6d3cd129c75b0502f7c43a18292d44b1
      https://github.com/llvm/llvm-project/commit/97579dcc6d3cd129c75b0502f7c43a18292d44b1
  Author: Min-Yih Hsu <minyihh at uci.edu>
  Date:   2022-06-24 (Fri, 24 Jun 2022)

  Changed paths:
    A llvm/include/llvm/MCA/IncrementalSourceMgr.h
    M llvm/include/llvm/MCA/Pipeline.h
    M llvm/include/llvm/MCA/SourceMgr.h
    M llvm/include/llvm/MCA/Stages/EntryStage.h
    M llvm/include/llvm/MCA/Stages/Stage.h
    M llvm/lib/MCA/Pipeline.cpp
    M llvm/lib/MCA/Stages/EntryStage.cpp
    M llvm/lib/MCA/Stages/Stage.cpp
    M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
    M llvm/tools/llvm-mca/llvm-mca.cpp
    M llvm/unittests/tools/CMakeLists.txt
    A llvm/unittests/tools/llvm-mca/CMakeLists.txt
    A llvm/unittests/tools/llvm-mca/MCATestBase.cpp
    A llvm/unittests/tools/llvm-mca/MCATestBase.h
    A llvm/unittests/tools/llvm-mca/X86/CMakeLists.txt
    A llvm/unittests/tools/llvm-mca/X86/TestIncrementalMCA.cpp
    A llvm/unittests/tools/llvm-mca/X86/X86TestBase.cpp
    A llvm/unittests/tools/llvm-mca/X86/X86TestBase.h

  Log Message:
  -----------
  [MCA] Introducing incremental SourceMgr and resumable pipeline

The new resumable mca::Pipeline capability introduced in this patch
allows users to save the current state of pipeline and resume from the
very checkpoint.
It is better (but not require) to use with the new IncrementalSourceMgr,
where users can add mca::Instruction incrementally rather than having a
fixed number of instructions ahead-of-time.

Note that we're using unit tests to test these new features. Because
integrating them into the `llvm-mca` tool will make too many churns.

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


  Commit: b847692ed8e18a0cf06dec67e00fe01d557e0c0b
      https://github.com/llvm/llvm-project/commit/b847692ed8e18a0cf06dec67e00fe01d557e0c0b
  Author: Min-Yih Hsu <minyihh at uci.edu>
  Date:   2022-06-24 (Fri, 24 Jun 2022)

  Changed paths:
    M llvm/include/llvm/MCA/IncrementalSourceMgr.h
    M llvm/include/llvm/MCA/InstrBuilder.h
    M llvm/include/llvm/MCA/Instruction.h
    M llvm/lib/MCA/CMakeLists.txt
    A llvm/lib/MCA/IncrementalSourceMgr.cpp
    M llvm/lib/MCA/InstrBuilder.cpp
    M llvm/lib/MCA/Instruction.cpp
    M llvm/unittests/tools/llvm-mca/X86/TestIncrementalMCA.cpp

  Log Message:
  -----------
  [MCA] Allow mca::Instruction-s to be recycled and reused

This patch introduces a new feature that allows InstrBuilder to reuse
mca::Instruction recycled from IncrementalSourceMgr. This significantly
reduces the memory footprint.
Note that we're only recycling instructions that have static InstrDesc
and no variadic operands.

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


Compare: https://github.com/llvm/llvm-project/compare/048e6bb46bc2...b847692ed8e1


More information about the All-commits mailing list