-
-
Notifications
You must be signed in to change notification settings - Fork 54
Documentation
The purpose of this page is to give you all information about MAGNETAR.
MAGNETAR requires root privileges to operate. Before entering any MAGNETAR CLI commands, the user must first grant root permission to the terminal emulator using the su
command. Example commands that are executed under #
prefix are executed with root permission.
Example Usages:
$ su
# magnetar --help
$ su -c magnetar --manual
MAGNETAR employs a machine learning algorithm to improve overall user experience by adapting how things are set and/or controlled based on how user interact with the device.
-
train
Begin force training of the algorithm; this command may take some time to execute depending on how much data is already on the device.
-
reset
Reset machine learning data; this command will erase learn rates and may result in incorrect adaptation based on user usage after resetting. Keep in mind that the longer a user uses MAGNETAR, the better it will become at adapting.
Example Usages:
# magnetar --ai train
# magnetar --ai reset
ART performs better than JIT (just-in-time) compilation into bytecode because it uses AOT (ahead-of-time) compilation into native code. ART can be configured to perform this optimization in a variety of ways.
-
disable
Disables MAGNETAR+'s automatic ART optimization; changing the profile will re-enable it.
-
optimize
Run the background dexopt job; this command will optimize the background dexopt job, which may take some time to complete.
-
profile
Recompile native app code to specific profiles; this command requires MAGNETAR+ to function. This allows the user to select optimization profiles such as the ones listed below:
-
balance
Provides a balance between performance and memory usage.
-
everything
Has the most optimizations enabled, which results in the best performance but also the largest memory usage.
-
everything-profile
A version of the
everything
profile that has additional optimizations based on profiling data collected during runtime. -
size
Has optimizations enabled that result in smaller memory usage at the cost of some performance.
-
size-profile
A version of the
size
profile that has additional optimizations based on profiling data collected during runtime. -
space
Has optimizations enabled that result in smaller memory usage, such as more aggressive garbage collection.
-
space-profile
A version of the
space
profile that has additional optimizations based on profiling data collected during runtime. -
speed
Has optimizations enabled that result in faster performance but with a larger memory footprint.
-
speed-profile
A version of the
speed
profile that has additional optimizations based on profiling data collected during runtime.
-
Exanple Usages:
# magnetar --art optimize
# magnetar --art profile speed-profile
MAGNETAR allows users to send a bugreport directly from its CLI; however, user must have an active internet connection to send the file to the bugreport channel. Security-related issues must be reported in accordance to the Bug Bounty Program.
Example Usage:
# magnetar --bugreport
MAGNETAR allows the user to backup, restore, load, unload, and share their settings. Sharing configuration allows several users to use the device-tailored configuration on their device, but it requires an internet connection to be able to share the file. The shared configuration can be obtained in the config channel. Advanced users should see the Guide for Custom Configuration.
-
export
Back up user configuration in the MAGNETAR folder on the internal storage.
-
import
Selece and choose what to be restored as the one listed below:
-
all
Restores all configuration from the chosen file.
-
ai
Restore the machine learning learn-rates from the file.
-
custom
Restore custom configuration from the file.
-
database
Restore all per-app profiling from the file.
-
user
Restore only the common configuration such as mode, thermal, etc. from the file.
-
-
load
Loads the custom-made configuration from MAGNETAR folder on internal storage.
-
unload
Unloads the custom configuration and not to be used by MAGNETAR.
-
view
View loaded custom configuration.
Example Usages:
# magnetar --config import all
# magnetar --config export
# magnetar --config load file
MAGNETAR allows users to manage the CPU cores with variable intensity. This can also be set per-application with MAGNETAR+.
-
dynamic
Automatically controls the CPU cores depending on the device usage.
-
light
Disables one of the big CPU core to reduce power consumption with little to no changes on overall experience.
-
moderate
Disables one of the big CPU core and one of the small CPU cores to further reduce the power consumption with a minor impact on device performance especially under high load
-
aggressive
Disables 2 small CPU cores and 1 big CPU core to extremely cut the power consumption of the device but brings noticeable effects the device's overall performance even on moderate loads.
Example Usages:
# magnetar --core-control dynamic
# magnetar --core-control disable
Adding:
# magnetar --core-control set <profile> <com.package.name>
Removing:
# magnetar --core-control unset <com.package.name>
MAGNETAR allows users to manage and view saved data for per-app profiles such as renderer, refresh rate, kcal, and others...
-
custom
View the custom profiles created.
-
static
Find out which games MAGNETAR might be able to detect automatically on the device.
-
refresh
Updates the static database app list; use this command to allow MAGNETAR to detect a newly installed app.
-
reset
Delete
all
or specific databases, such as the ones listed below:mode
kcal
preload
ram
refresh-rate
renderer
thermal
threshold
touch-rate
Example Usages:
# magnetar --database custom
# magnetar --database static
# magnetar --database reset renderer
In doze mode, the system tries to save battery life by limiting app access to network and CPU-intensive services. It also prevents apps from connecting to the network and postpones their jobs, syncs, and standard alarms. With MAGNETAR, users can select a preset profile to help them restrict apps with varying intensities, as shown below:
-
default
Strikes a balance between conserving battery life and allowing important notifications and updates to come through.
-
light
Prioritizes battery conservation over allowing notifications and updates to come through.
-
moderate
Strikes a balance between conserving battery life and allowing important notifications and updates to come through, with a slightly higher emphasis on battery conservation.
-
aggressive
Prioritizes battery conservation over allowing notifications and updates to come through, and may be more restrictive in terms of which notifications and updates are allowed.
-
extreme
Prioritizes battery conservation above all else and may be very restrictive in terms of which notifications and updates are allowed.
Example Usage:
# magnetar --doze aggressive
MAGNETAR allows compatible kernels to enable or disable the force fast charging feature; enabling this feature may cause the device to overheat due to the faster charging speed.
-
enable
Enable the fast charging feature.
-
disable
Disable the fast charging feature.
Example Usage:
# magnetar --fastcharge disable
MAGNETAR enables a game dashboard-like experience for a more immersive gaming experience.
-
enable
Enable DND and disable automatic brightness while playing games.
-
disable
Turn off this feature completely.
Example Usage:
# magnetar --game enable
MAGNETAR allows users to select different color profiles for the device's screen as well as set per-app color profiles; however, setting per-app color profiles requires MAGNETAR+.
-
default
Make use of the device's standard color profile.
-
coffee
Coffee-colored color profile.
-
cozy
A nice looking warm color profile.
-
lucid
Improved color profile for a more appealing appearance.
-
nostalgia
A saturated color profile from an early version of MAGNETAR.
-
obsidian
Deep color profile with a slight saturation boost.
Example Usage:
# magnetar --kcal obsidian
Adding:
# magnetar --kcal set <profile> <com.package.name>
Removing:
# magnetar --kcal unset <com.package.name>
MAGNETAR allows the user to generate a secure key that will be used to register for MAGNETAR+ and/or check the status of the registration.
-
generate
Generates the MAGNETAR+ registration key.
-
verify
Check the status of user verification, whether it is a basic or MAGNETAR+ user.
Example Usages:
# magnetar --key generate
# magnetar --key verify
MAGNETAR allows users to view and/or export logs as needed.
-
activity
Displays user activity logs.
-
debug
Display the debug log, which is displayed whenever MAGNETAR encounters an error while setting something on the user device.
-
export
Save logs to the MAGENTAR folder on internal storage.
Example Usages:
# magnetar --log debug
# magnetar --log export
MAGNETAR enables user to run and/or configure modes per application. Cooldown and sleep modes, for example, cannot be overridden.
-
disable
This will disable tuning profiles and run MAGNETAR as daemon-only mode in which other functionality like kcal, refresh-rate, etc. will still work.
-
adaptive
(Recommended)This mode employs MAGNETAR's machine learning and includes all available modes; it will dynamically adjust device tuning as the ML predicts the best mode for the scenario.
-
endurance+
This mode reduces CPU and GPU frequencies by 30%, favoring battery life over performance and giving user an extra screen on time. This option is not available through the CLI, but it can be enabled by enabling system battery saver or automatically by the powersave option.
-
endurance
This mode reduces CPU and GPU frequencies by about 25%, allowing user to gain an extra screen on time at the expense of performance.
-
balance
This mode reduces CPU and GPU frequencies by about 20%, giving user just enough performance while saving battery life.
-
balance+
This mode will still reduce frequencies by 10% of CPU and GPU, enough to handle heavy tasks but not all the way through.
-
extreme
In this mode, the CPU and GPU frequency limiter is removed to maintain good quality performance suitable for heavy tasks and/or games at the expense of battery life.
-
game
In this mode, the CPU frequency limitation is disabled, input boost frequencies are set to maximum, and the GPU frequency is also set to maximum to maintain excellent gaming performance at the expense of battery life. This option is not available via CLI, but it will be activated automatically in adaptive mode when playing games for basic users. Only MAGNETAR+ users have the ability to lock and/or configure per-app game mode.
-
cooldown
This mode gradually reduces performance; the longer it is active, the lower the performance the user will receive to prevent the device from overheating. This action can be sped up or slowed down by lowering or raising the threshold value and/or charging the device.
-
sleep
This mode will be activated after the device has been put to sleep, and it will perform other maintenance tasks before pausing MAGNETAR's processes, which will resume once the device is turned back on.
Example Usage:
# magnetar --mode balance+
Adding:
# magnetar --mode set <profile> <com.package.name>
Removing:
# magnetar --mode unset <com.package.name>
The user has the option to disable or enable the MAGNETAR notification service.
-
enable
Turn on notification service.
-
disable
Turn of notification service.
Example Usage:
# magnetar --notification disable
With MAGNETAR, user can set an automatic power saver between 0 and 50 percent battery capacity.
-
0-50
A value between 1 and 50 tells MAGNETAR when to enable endurance+ mode and overrides other modes. If set to 0, this functionality is disabled.
Example Usage:
# magnetar --powersave 25
With MAGNETAR, the user can preload applications in physical RAM, which speeds up read speeds. This feature requires MAGNETAR+ to function.
-
load
Loads the application into the RAM.
-
unload
Unload the preloaded application from RAM.
Example Usage:
# magnetar --preload unload <com.package.name>
MAGNETAR gives the user the ability to manage RAM in a variety of ways. This can also be configured per application, but only if the user is registered with MAGNETAR+.
-
disable
Disables the LMK tuning. This option requires reboot.
-
dynamic
Adjusts the LMK behavior based on the amount of free RAM available on the system.
-
balance
Strikes a balance between conserving memory and preserving system performance.
-
light
Prioritizes preserving system performance over conserving memory and may be less aggressive in killing processes.
-
moderate
Strikes a balance between conserving memory and preserving performance, with a slightly higher emphasis on memory conservation.
-
aggressive
Prioritizes conserving memory over preserving performance and may be more aggressive in killing processes.
Example Usage:
# magnetar --ram dynamic
Adding:
# magnetar --ram set <profile> <com.package.name>
Removing:
# magnetar --ram unset <com.package.name>
MAGNETAR allows the user to customize the refresh rate for each application and/or globally. This does not apply to devices that do not support multiple screen refresh rates.
-
disable
Disables the refresh-rate manager.
-
integer
(According to device refresh-rates)Sets the devices' refresh rate. This option may also be available for dynamic refresh-rate.
Example Usage:
# magnetar --refresh-rate 60-120
Adding:
# magnetar --refresh-rate set <profile> <com.package.name>
Removing:
# magnetar --refresh-rate unset <com.package.name>
MAGNETAR allows the user to configure the renderer, even per application. It can also be turned off.
-
opengl
Is a cross-platform, royalty-free 3D graphics API that is widely used on Android devices. It is compatible with a wide range of hardware and provides support for advanced features such as shaders, textures, and lighting.
-
skiagl
Is an OpenGL-based 2D graphics library that is used by many Android applications. It is designed for high performance and provides support for anti-aliasing, blending, and gradients.
-
vulkan
Is a low-level, cross-platform 3D graphics API that is designed for high performance and efficient use of modern graphics hardware. It provides developers with direct control over the GPU, making it ideal for demanding applications such as gaming and virtual reality.
-
disable
Disable renderer manager; setting another renderer activates renderer manager again.
Example Usage:
# magnetar --renderer skiagl
Adding:
# magnetar --renderer set <profile> <com.package.name>
Removing:
# magnetar --renderer unset <com.package.name>
MAGNETAR allows the user to reduce the device's resolution, freeing up GPU resources for improved rendering performance at the expense of graphics quality. Be aware of the setting resolution and confirm that the phone is operational before locking it. This option can also be set per application for Android 12 or newer devices registered with MAGNETAR+.
-
50-90
Select a percentage for device resolution; 100% will set the device's native screen resolution.
-
disable
Disable resolution manager; setting resolution will re-enable it.
-
sync
Synchronize the DPI to allow MAGNETAR to rescale the resolution as it appears on the screen.
-
fix
Resolves UI and in-app elements that break after changing resolution.
Example Usage:
# magnetar --resolution 69
Adding:
# magnetar --resolution set <profile> <com.package.name>
Removing:
# magnetar --resolution unset <com.package.name>
With MAGNETAR, the user can disable or enable system thermals. Disabling may improve performance, but it may cause the phone to heat up faster and degrade battery life more quickly over time. Furthermore, for safety reasons, disabling thermals does not disable MAGNETAR cooldown mode. This option is also available per application, but it is only available to MAGNETAR+ users.
-
enable
Turns on system thermals and, if applicable, custom thermals.
-
disable
Disable and override thermals.
Example Usage:
# magnetar --thermal enable
Adding:
# magnetar --thermal set <profile> <com.package.name>
Removing:
# magnetar --thermal unset <com.package.name>
With MAGNETAR, the user can change the threshold to delay or advance cooldown mode activation. This only allows for a temperature range of 40-50 degrees Celsius, and the base threshold is subtracted by 3 when charging. This option is also available per application, but it is only available to MAGNETAR+ users.
-
40-50
The threshold value at which MAGNETAR's cooldown mode feature is activated. Setting threshold value to 49 or 50 would require MAGNETAR+.
Example Usage:
# magnetar --threshold 45
Adding:
# magnetar --threshold set <profile> <com.package.name>
Removing:
# magnetar --threshold unset <com.package.name>
MAGNETAR allows users to adjust the touch-rate on their device, which can improve the overall touch experience. It also offers per-app touch rate profiling, allowing users to configure different touch rates for different applications for those who have registered with MAGNETAR+. This can improve touch response, particularly for apps that demand faster touch input processing. Touch-rate refers to the pace at which the device registers and processes touch inputs, thus raising the touch-rate can result in faster and more responsive touch interactions.
-
default
The default touch sensitivity is the standard level of responsiveness set by the manufacturer. It is a balanced setting that provides a good balance of sensitivity and accuracy.
-
low
This profile reduces the touch sensitivity to make it easier for users with less dexterity to interact with the screen. It can also help prevent accidental touches.
-
medium
This profile provides a slightly higher level of touch sensitivity than the default profile. This can be useful for users who prefer a more responsive screen, but still want to maintain a good level of accuracy.
-
high
The high touch sensitivity profile provides the maximum level of responsiveness, making it easier to quickly interact with the screen. However, this setting may also result in more accidental touches and a decreased level of accuracy.
Example Usage:
# magnetar --touch-rate medium
Adding:
# magnetar --threshold set <profile> <com.package.name>
Removing:
# magnetar --threshold unset <com.package.name>
MAGNETAR allows users to install/check updates and switch between stable and pre-release update channels. However, only MAGNETAR+ users can install the update from the CLI and/or switch to the pre-release channel.
-
check
To get the latest MAGNETAR updates.
-
stable
Switch updates channel to stable.
-
pre-release
Switch updates channel to pre-release. Switching to pre-release channel requires MAGNETAR+.
Example Usage:
# magnetar --update check
MAGNETAR allows users to check and manage user configurations.
-
view
Show the MAGNETAR configuration.
-
reset
Clear all MAGNETAR configuration.
Example Usage:
# magnetar --user view
Can't seem to find what you're looking for or getting an error message? Some of the commands in the wiki may not be available for all MAGNETAR versions, but it is equipped with a manual to guide users based on the version they have.
Check Out: magnetar --manual