Subcore APK is a root daemon that systematically applies different usage profiles based on sensors on the device. Instead of relying on the CPU governor to estimate the workload offset, a balance is achieved based on the user's workload. It is determined which profile a device fits into by reading and writing to numerous kernel files.
The following interfaces are available:
During a loading scene, the game may pause momentarily as a result of a custom prediction. A user-predictive algorithm is implemented by Subcore to prevent this from happening, and maintain fluidity even when the load is low. Sleeping longer when the load is consistent is determined by detecting repetitive load averages. Unlike other tools, Subcore has direct access to battery statistics because it is a low-level (although user-defined) tool.
Subcore boosts performance to provide consistent UI/UX regardless of power limitations when charging (and turning on the screen). Also, if the device has less than 15% charge, the app will reduce the load average by half. To load the next profile, the CPU has to work twice as hard. Additionally, It locks the device into the lowest battery profile for deep sleep or inactivity at 5% battery or less, sacrificing performance to conserve power.
This app allows you to disable this setting by toggling "Disable Power Aware". My term for this new concept is RUPG. It implements it. As a result of its compatibility with almost any device, Subcore stands out from the competition. A lot of data is collected at runtime by the app so that it can create many device-specific profiles based on various factors. The profiles generated for each device are highly optimized, ensuring the best software for the hardware/software available to the user. At the end of Subcore's execution, these profiles are marked for deletion in memory.
To determine which profile the device should be placed in, Subscore reads and writes numerous kernel files.
There are several interfaces available, including:
- CPU load on active computers
- Frequencies, cores, and governors of available CPUs
- GPU load and GPU frequency available
- Capacities of current batteries
- The state of the battery (charged/discharged)
- Currently displayed on the screen
- It is the primary choice to notify the state
- Suspend on power (secondary option)
- A tertiary choice is the framebuffer interface
- The amount of device memory available
- The maximum memory of the device
- The schedulers that are available for IO
- Readahead blocks, swappiness, cache pressure, and dirty rations