Benchkit
Benchkit is a developer-centric toolkit module for Android with a plethora of tools for in-depth profiling and benchmarking. Many of the tools are focused on kernel benchmarking, but userspace (i.e. Android) benchmarking is also covered by some of them. This module aims to make empirical data-driven development more accessible so people can make optimal tuning decisions based on real results.
The only supported CPU architecture is little-endian AArch64, which includes almost all modern Android phones.
Contents
Command-line utilities:
- Bonnie++: General filesystem and I/O benchmark
- callbench:
Measure the speed of simple time syscalls (with and without vDSO) and basic in-memory I/O using
mmap(2)
andread(2)
. A 32-bit version is available ascallbench32
for 32-bit vDSO testing. - cyclictest: Measure timer jitter, useful for real-time latency testing
- Dhrystone: Simple CPU integer performance benchmark typically used for calculating CPU capacities for an EAS energy model
- Flexible I/O Tester (
fio
): Flexible generic I/O tester that can simulate a variety of configurable workloads - GTcycles: Measure the frequency of the CPU’s generic timer
- Hackbench: Scheduler wakeup latency and pipe benchmark
- IOzone: General filesystem and I/O benchmark
- memcpy:
Measure memory bandwidth using libc’s
memcpy(3)
function - perf:
Profiling tool (from Linux 4.9) for kernel and userspace. Some microbenchmarks are also available in
perf bench
. - rt-app:
Flexible real-time application simulator designed to replicate typical mobile workloads in a reproducible manner. Some reference tests from ARM are available in
/system/etc/rt-app
. - schbench: Scheduler wakeup latency benchmark
- stress-ng: Stress-test various hardware and kernel subsystems
- sysbench: Scriptable database and system performance benchmark with several built-in tests
- hyperfine: Advanced benchmark runner that makes it easy to run benchmarks in a statistically sound manner and export results into machine-readable formats
- synthmark: Benchmark CPU performance with real-time audio workloads (by Google; CLI version)
Android apps:
- JankBenchX: joshuous’ modified version of AOSP JankBench for automatic reproducible UIBench testing
- TouchLatency: Test touch latency and jank in simple scenes (from AOSP)
- UIBench: Google’s AOSP app for testing various mobile workloads and UI rendering tasks
- Audio Latency Test (shows as “Latency Test”): Test end-to-end (i.e. speaker to microphone) audio latency (from Superpowered)
- SynthMark: Benchmark CPU performance with real-time audio workloads (by Google; GUI version)
- OboeTester: Various audio-related tests including latency and glitch testing (by Google)
Links
Credits
- ARM for LISA and Workload Automation
- celtare21 for the IOzone executable
- The respective authors of all tests included in this module
Download Link
Module Info
Other modules
Advanced Charging Controller
Advanced Charging Controller (ACC) DESCRIPTION LICENSE DISCLAIMER WARNINGS DONATIONS PREREQUISITES QUICK START GUIDE Notes BUILDING AND/OR INSTALLING FROM SOURCE Dependencies (Build) Build Tarballs and Flashable Zips Notes Install from Local Source or GitHub Notes DEFAULT CONFIGURATION SETUP/USAGE …...
Adreno GPU Developer Preview Drivers
Want to squeeze every ounce of performance from your Android device’s graphics processor? Adreno GPU Developer Preview Drivers offer a way to potentially boost your gaming and graphics rendering capabilities. These drivers, packaged as a Magisk Module, provide access to cutting-edge features …...
Nano NDK Magisk / Kernelsu Module
Nano NDK is a valuable tool for Android enthusiasts and power users who enjoy customizing and tweaking their devices. It brings the popular nano text editor, widely used in Linux environments, to Android devices through Magisk and KernelSU modules. This article explores what Nano NDK is, its …...
Dolby Audio Moto G Pro Magisk Kernelsu Module
This article explores the Dolby Audio Moto G Pro Magisk module, designed to enhance the audio experience on your Moto G Pro smartphone. What is the Dolby Audio Moto G Pro Magisk Module? This module leverages the Magisk framework, a popular tool for modifying system files on rooted Android devices, …...
Dex2oat Optimizer Magisk and kernelsu modules
Run bg-dexopt-job optimization every 3 days automatically Link Download ...
Gps Boost Magisk and kernelsu modules
Optimization of work and boost of GPS for Snapdragon devices Notes Only for Snapdragon devices! Link download ...
Force Dark Mode Chrome
Force Dark mode Chrome Link Download ...
Zygisk Detach
Detaches installed apps from Play Store against its aggressive updating policy which ignores the auto-update option user sets. How Hooks libbinder with zygisk Usage Enable zygisk in Magisk or ZygiskNext module if you are on KernelSU Flash zygisk-detach module Reboot Run the cli in termux: su -c …...
Riru - Clipboard Whitelist
A module of Riru/Zygisk. Allowing apps to access the clipboard in the background on Android 10. Requirements Zygote inject framework installed Riru >= 26.0 Zygisk Android 10+ Feature Allowing apps to access the clipboard in the background on Android 10+. Multi-User Support Add …...
Shamiko - Hide Root Android
Shamiko is a Zygisk module to hide Magisk root, Zygisk itself and Zygisk modules. Shamiko read the denylist from Magisk for simplicity but it requires denylist enforcement to be disabled first. Usage Install Shamiko and enable Zygisk and reboot Configure denylist to add processes for hiding DO NOT …...