llvm / llvm/llvm-project

GEMM performance regressed after sinking unused l-invariant loads

Open
#166,671 10 comments 0 reactions 0 assignees View on GitHub
new issue
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

I was looking into some performance regression cases in our downstream application and found https://github.com/llvm/llvm-project/pull/157559 changed the generated llvm codes and thus affect the performance.

I'm attaching the before and after .ll file for reference.
https://gist.github.com/yzhang93/f7174c373ec63845d63762997b3ee293

Contributor guide

Open the contributing guide

Research direction

Start by comparing the before and after .ll files in the linked gist, then inspect pull request 157559 to identify the sinking change. Reproduce the downstream GEMM case if available and measure the generated-code performance; done means addressing the regression without losing the intended optimization.

Written by the indexing model from the issue text.

Assessment

Domain
compilers, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.