llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
27.72k stars 11.41k forks source link

Should recent Apple CPUs use the new model instead of `CycloneModel`? #98729

Open DianQK opened 1 month ago

DianQK commented 1 month ago

We recently discovered a performance issue with the apple m1 series in https://github.com/rust-lang/rust/issues/126937#issuecomment-2226834122. I believe this is due to EarlyIfConversion using an outdated mispredict penalty. The mispredict penalty from apple-a7 to apple-m4 uses CycloneModel's definition of 16, which I assume is an outdated value?

cc @fhahn @TNorthover

llvmbot commented 1 month ago

@llvm/issue-subscribers-backend-aarch64

Author: DianQK (DianQK)

We recently discovered a performance issue with the apple m1 series in https://github.com/rust-lang/rust/issues/126937#issuecomment-2226834122. I believe this is due to EarlyIfConversion using an outdated mispredict penalty. The mispredict penalty from apple-a7 to apple-m4 uses `CycloneModel`'s definition of 16, which I assume is an outdated value? cc @fhahn @TNorthover