Need help with KTweak?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

tytydraco
143 Stars 41 Forks GNU General Public License v3.0 310 Commits 3 Opened issues

Description

A no-nonsense kernel tweak script for Linux and Android systems, backed by evidence.

Services available

!
?

Need anything else?

Contributors list

KTweak

A no-nonsense kernel tweak script for Linux and Android systems, backed by evidence.

Another "kernel optimizer"?

No. Well, yes. However, a "kernel optimizer" is a poor way to put it. KTweak performs kernel adjustments based on facts and evidence, unlike other optimizers with poorly written or heavily obfuscated code.

  • NFS Injector uses closed source, compiled binaries with various typos in the README. It also provides a "pro" version that costs money.
  • MAGNETAR also uses closed source, compiled binaries. I'd love to say more about this, but I can't even find out what the module even does.
  • FDE.AI also uses closed source, compiled binaries with a paid variant.
  • LKT sets random nonsensical build.props that don't even exist.
  • ZeetaTweaks is a clone of KTweak with the values changed. As of the V11 zip, it disables essential system services, deletes files permanently from /data/data, kills perfd (which is the userspace boosting daemon), disables SELinux, disables fsync, and various other detrimental changes.

What's different about KTweak?

Unlike other "kernel optimizers", KTweak is:

  • Entirely open source with no compiled components
  • Concise, at less than 200 lines long
  • Backed by benchmarks and evidence
  • Designed by an experienced kernel developer
  • Non-intrusive and completely systemless

Benchmarks

The following benchmarks were performed on a OnePlus 7 Pro running the stock kernel provided by the OEM on Android 10. KTweak sacrifices throughput for latency, since latency correlates to UI / UX smoothness. This explains the slight regression with the scheduler throughput.

Scheduler latency via
schbench
(lower is better)

  • Stock:

    50.0th: 4052
    75.0th: 14288
    90.0th: 26848
    95.0th: 32960
    *99.0th: 45120
    99.5th: 49856
    99.9th: 59200
    min=0, max=73600
  • KTweak:

    50.0th: 1054
    75.0th: 1790
    90.0th: 2628
    95.0th: 3836
    *99.0th: 8880
    99.5th: 11472
    99.9th: 18080
    min=0, max=32781

Synthmark Latencymark (lower is better)

  • Stock: 10 / 12
  • KTweak: 4 / 4

Scheduler throughput via
perf bench sched messaging
(lower is better)

  • Stock: 0.331 seconds
  • KTweak: 0.808 seconds

Scheduler throughput via
perf bench sched pipe
(lower is better)

  • Stock: 16.159 seconds
  • KTweak: 18.599 seconds

The Tweaks

Head over to the script itself to learn what everything does. It is documented in the comments.

Contact

You can find me on telegram at @tytydraco. Feel free to email me at [email protected]

Join the releases channel at @ktweak, or the discussion channel at @ktweak_discussion.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.