[Google Pixel 7 Pro] NCVol:
There are some nice benefits with no real downsides.

The latest A14 changes to Kirisakura are:

- Update kernel to Android 14

- Retain all previous features and updates

- Bump prebuilt clang to 17.0.4

- Linux-Stable 5.10.197

- EEVDF scheduler patches from latest linux-kernel

- kernel is build in a monolithic fashion, thanks to @Sultanxda

- latest f2fs-stable patches

- lockless shrinkers

- loads of improvements from latest linux to mm subsystem

- latest updates/fixes to maple tree

- scheduler improvements from latest linux

- scheduler improvements from QPR 14 beta

- improvements/fixes to RCU subsystem

- improvements to QoS from @Sultanxda

- improved IRQ balancing, thanks to @Sultanxda

- improvements to GPU driver performance from QPR beta

- lockless slab shrinker

- unify powerhint module for panther and cheetah (please delete the old powerhint module before flashing the new one)

- rework powerhint module to account for all changes

- rework powerhint module to reduce energy usage

- more changes please look at my github

And the original changes are:

The kernel aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security, stability and performance!

This includes Linux-Stable, F2FS-Stable and kernel/common!

If that got you curious, have a read about linux-stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

By merging linux-stable regularly we get most security updates months ahead of the stock kernel and also before they even end up in the android security bulletin.

The kernel includes a lot of improvements and contributions from other developers as well. Without those contributtion this kernel would not exist as it is.

A big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.

A big thanks to all of them at this place!

Now lets continue with a list of features in the next paragraph!

Features:

Main Features:

- Based on latest A13 kernel sources from Google, Kernel is made for Android 13 Stable

- Linux-Stable-Upstream included to 5.10.197

- Compiled with prebuilt Google clang 17.0.4

- EEVDF scheduler patches

- lockless slab shrinker

- Backport entire RCU subsystem to latest linux

- Lazy RCU which should result in power-savings while the device is lightly-loaded or idling, more information here

- Backport Maple tree from Linux 6.1

- improve preallocations from maple tree (affects especially android)

- reduce necessity to rewalk the maple tree

- Per VMA-locks in conjunction with Maple Tree RCU-Mode (improve app launch time, this feature in general benefits greatly from lazy rcu!)

- further improve maple tree/per-vma locks introduced in an earlier release

- Dynamic Energy Models depending on device state

- make TEO-Cpuidle util-aware (improves latency, performance and decreases energy consumption for certain workloads, more information here)

- introduce runnable boosting, wire it up with pixel_sched

- improve CPU throttling behaviour

- improvements to uclamp, prevent capacity inversion (reduce missed frames)

- greatly speed up camera launch time!

- merged kernel/common (improvements to android-common-kernel straight from google)

- MM subsystem reworked (more info and some patchsets linked in this post)

- Multi-gen LRU backported/reworked and enabled (more info here, here as well and here) to improve mm and reduce cpu cycles, latest V15 state

- pelt multiplier tied into powerhal to speed up scheduler during interaction (more info here)

- prevent frequency spikes caused by small transient tasks when the device is idle(more info here)

- tie mechanism to prevent frequency spikes caused by small tasks also into powerhal

- scheduler improvements for RT (realtime) tasks

- introduce and setup PMU limiter (prevents CPU from spiking to max when it isn´t needed, based on PMU reads, more information here)

- improve camera performance by tuning the powerhal during recording

- bias tasks of rt, sf and ta groups to prefer high capacity cpus during app launches, interactions

- improve app launches via powerhal

- restrict maximum CPU-Freqs during screen off/ idle to 1.4GHZ for all clusters to save power

- introduce unfair f2fs rwsems to prevent writer starvation and improve IO perf under heavy load

- fuse: give wakeup hints to scheduler to speed up compress/decompress in internal storage (details)

- enable RCU_BOOST (details here), also fix RCU_BOOST behaviour

- F2FS-Stable updated

- merge and enable f2fs block_age-based extent cache (improve the accuracy for data temperature classification, reduce the garbage collection overhead after long-term data updates)

- TCP backports from mainline

- SSG IO scheduler for reduced overhead and less CPU cycles (more lightweight and android optimized)

- scheduler backports from linux-main

- mm updates from linux-main

- locking updates frm linux-main

- improve memory performance by tweaking google´s eh zram implementation

- fix sysfs endpoint for googles eh zram

- affine IRQS to CPU 7 during camera usage for improved performance as it tends to overload the little cores

- use bbr as default TCP congestion algorithm (fasted algo according to this excellent research from @kdrag0n found here )

- include bbrv2 from google, more info here

- Enable support for TTL spoofing

- important patches from kernel/common for 5.10 (here are more details)

- increase priority of GPU work

- several updates from QPR beta, and a few from Pixel 6 that googles missed to include in the pixel 7 kernel

- improve thermals

- change compaction proactiveness based on device state for improveed memory management

- improve ZRAM usage

- reduce overhead

- improve performance and efficiency by properly wiring up pixel_sched with teo util awareness (thanks @ada12 for spotting this!)

- update to cpuset/cgroup subsystem (speeds up camera launches, device unlocks etc as cpusets are switched on those conditions, patches reduce overhead in those conditions)

- flashing the kernel will preserve root

CleanSlate Features

- CleanSlate Features from @tbalden, big applause here! (s2s, notification booster, battery saver, flashlight notifications. Please note: cleanslate features that work otherwise with rooted devices like kadaway (adblocking) are not implemented on this kernel since I´m running rooted)

- Check the CleanSlate thread for more information about those features

- The CleanSlate thread also contains the apps that allows you to control those features!

- If you consider those features useful, maybe consider purchasing the apps in the PlayStore or a small donation to @tbalden, he deserves it! Don´t forget to switch to beta channel for those apps, as this is needed for device running A13!

Various Optimizations:

- update several drivers to use power efficient workingqueues (for example wlan driver)

- f2fs: reduce timeout for uncongestion

- f2fs: Demote GC thread to idle scheduler class

- f2fs: set ioprio of GC kthread to idle

- tcp: enable advanced tcp, give user more options for tcp alorithm

- mm: vmstat: use power efficient workingqueues

Wakelock Blocker:

- advanced wakelock blocker with the ability to block kernel wakelocks (dangerous, use with caution, please read this for further info). You should only block kernel wakelocks in case you face uncontrollable scenarios, like company wifi causing a wakelock to be active 100% of the time! Blocking kernel wakelocks to "improve" battery life almost always backfires and causes issues!

Powerhint Module:

- restrict little cluster to 1,4ghz mid cluster to 1,4ghz and big cluster to 1,4ghz during screen off, to reduce battery usage for example during music playback

- only use little cores during screen off/device suspend

- account for scheduler and other changes done to the kernel

- boost memory interface controller during interaction (decreased missed frames, improved soc efficiency according to google docs)

- tie pelt multiplier into the powerhal (more info here)

- prevent frequency spikes caused by small transient tasks during idle operation (more info here)

- boost scheduler using the pelt multiplier during fingerprint unlock operation

- setup and control PMU limiter via powerhal (more info here)

- switch between default and custom idle energy model on device is being interacted with / device idle.

- reduce missed frames during scrolling/device interaction by adjusting uclamp boosts

- dynamically adjust target load for memory interface during interaction.

- remove dynamic GPU policy change as it´s causing instability and is unneeded due to GVFS period

- implement handling during video recording of CPU like Google did on QPR A13

- more small improvements

So it does a lot.