[Google Pixel 4 XL ROMs, Kernels, Recoveries, & Oth] pkgnex:
Change Log

V17 (use for A13)

- Audited script against A13 to ensure compatibility

- Script timing edits to support successful execution on A13 with Magisk 24 (especially ZRAM)

V16 (use for A11 and A12):

Fixed V15! :oops:

- Delayed and slowed ZRAM change to enhance the reliability of it "taking" on each boot

- Made Adrenoboost and power-efficient work queues contingent on those modules actually existing in the user's kernel

- (Did the same with the wakelock blocker while I was at it)

- Fixed a script typo that was the likely root-cause of V15 not running to completion or outputting "failure" for some users.

V15:

Enabled power-efficient work queues by default (most kernels have this functionality built in)

Enabled GPU Adrenoboost module by default, set to low boost (many kernels have this available, on/low seems preferred for a slight / smooth gaming boost without battery life detriment)

Changed vm.vfs_cache_pressure to 50 (was 200, wrong-direction from 100, I now believe after more testing)

Changed vm.dirty_ratio to 10 (from 20; avoids latency when having to write-out data to disk asynchronously by halving the amount of data needing to be written; this could reduce occasional "hang-up's" you may have experienced on this device regardless of kernel or mod - including stock!)

V14:

Increased ZRAM capacity by 50% to 3 GB

Turned off TCP timestamps to reduce overhead

Adjusted VM settings for having more memory

Added a couple minor VM tweaks

Added a minor kernel scheduler tweak

Minor code clean-up and re-ordering

V12:

Small core schedutil up/down rate limit tweaks, making small cores more responsive to increasing frequency and maintaining higher frequencies a bit longer. This should keep more load on small cores / reduce offloading to big cores unless big core utilization is truly necessary. I noted a little less latency and a little better battery life in my testing.

V11:

REMOVED.

V10:

Welcome to 2021.

Minor update - now bbr2>bbr>westwood (depends on what your kernel offers) for TCP congestion control algorithm. As an aside, I reconfirmed txquelen of 512 is still optimal for modern wifi and lte networks.

V9:

Happy holidays!

Added some TCP and kernel cfs tweaks that reduce device latency.

V8:

Stable, slightly improved Android 11 release.

Minor CFQ tunable tweaks that very slightly improved IO in benchmark testing.

Now blocks a single wakelock: qcom_rx_wakelock (if your personal philosophy is to never block any wakelocks, feel free to comment that line out in the script).

Changed TCP congestion avoidance algorithm to BBR2 (if available in kernel) - else, Westwood; based on network speed testing (BBR2 > Westwood > BBR).

V7:

Removed mount tweaks - they no longer do anything useful

Increased DBR slightly

Modified write-out file to not list time/date (for some reason it was being written twice on R). Just look at the file properties in your file manager to see when it was last written, if needed.

V6 is deprecated: Use V7 for R, V5 for Q

V6:

- Updated for Android 11 B1, verified to run without outputting any errors and is 100% stable.

- Removed one schedutil tweak that is no longer available on A11.

- Reverted kernel entropy settings to stock; tweaked settings were no longer increasing entropy pool.

- Users on A10 may use v6 without any issues, but v5 will still provide very slightly better performance on A10.

V5:

- A minor kernel overhead reduction from scheduler statistics

- Force CFQ as scheduler (just in case non-stock kernel isn't already set that way)

- Two CFQ tweaks, one that eliminated backward seeking penalty (makes no sense on non-rotational storage) and one that my testing showed sped up throughput and in theory should also reduce latency (so a true win-win!).

V4:

- Reverted foreground app schedtune boost, swappiness, vfs_cache_pressure, and dirty_ratio to stock

- Reverted IO scheduler to CFQ

- Removed wakelock blocking - verified no / minimal effect on deep sleep (I got 0.12%/hr idle drain overnight)

(for all of the above, thanks to @Freak07 for the advice / education!)

- Re-verified tx_queue_len (512) and tcp_congestion_control (westwood+) are optimized for WiFi and LTE networks

V3:

- Remove fstrim commands for /data and /cache since device is F2FS and fstrim doesn't apply (thanks to @woundman for pointing this out to me)

- Changed to Deadline scheduler with Franco Dev Team tunables - I just verified still benchmarks better after all these years ;)

- If your kernel does not have Deadline available (e.g. stock kernel), the script will still keep you on Noop, as before.

V2:

- Reduce schedutil downrate limit to increase battery life.

- Block some safe wakelocks to increase battery life.

- Oh yeah, and a magic trick to turn off vm dirty write back timer (it still happens, just memory based and not every 5 seconds), to also increase battery life.

V1:

- Initial Pixel-4/XL release.