Skip to content

Latest commit

 

History

History
31 lines (16 loc) · 2.53 KB

perf_intern_guidelines.md

File metadata and controls

31 lines (16 loc) · 2.53 KB

Performance and Internals Guidelines

  1. Scheduler

    1.a. If you're running in WALT, we advise you to NOT using Touch Boosting and instead, picking this commit and this commit into your kernel.

    1.b. Following the prior, we also advise you to not overly boosting everything, because Performance is not "all-about-boosting". Efficiency is all that matters in this case.

    1.c. We advise you to tune your CPUSet according to your SoC, every SoC has its specific CPUSet tuning, so make sure you correctly tune it according to your SoC.

  2. ZRAM

    2.a. We advise you to ship ZRAM depending on your device RAM size

    2.b. We DON'T RECOMMEND keeping the ZRAM compression backend in LZO for performance reasons! We recommend you to use Zstandard (zstd) as default ZRAM and ZSWAP (if your devices use this, Smugsungs?) compression backend as it'll be beneficial for the compression ratio and faster compared to LZO, you also can use lz4 for the compression backend if you favoring performance over compression ratio. Example commit from Disrupt Kernel Xiaomi-sdm845 for zstd zram.

  3. MSM-IRQBalance

    3.a. We advise you to blacklist msm_drm and kgsl_3d0 IRQs, Example commit from AOSPA OnePlus-sdm845, keep in mind that changes may vary between all devices, so make sure you blacklisted the correct IRQ.

    3.b. Following the prior, Divide the IRQ's affinity, Example commit from AOSPA OnePlus-sdm845, following prior guidelines, make sure you divided the correct IRQ.

  4. The use of compilation flags

    We don't advise you to generically build your images under a generic CPU variant. We recommend you to use your SoC-specific optimization flags instead of using generic compilation flags as we aren't going to ship Generic System Image.

  5. Kernel Default Configurations

    5.a. We advise you to ship your kernel default configuration (known as "defconfig") as-is without any masking.

    5.b. The use of Google kernel/configs is recommended.