0% found this document useful (0 votes)
25 views5 pages

GPU Performance Boost Configuration

The document outlines a series of commands and configurations for enabling GPU performance boosts and core control parameters on a system, specifically targeting the sdm660 platform. It includes various performance boost configurations for different scenarios such as app launch, scrolling, and display management. Additionally, it sets core control parameters for CPU and GPU to optimize resource allocation and performance during intensive tasks.

Uploaded by

ikhsansyahid186
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views5 pages

GPU Performance Boost Configuration

The document outlines a series of commands and configurations for enabling GPU performance boosts and core control parameters on a system, specifically targeting the sdm660 platform. It includes various performance boost configurations for different scenarios such as app launch, scrolling, and display management. Additionally, it sets core control parameters for CPU and GPU to optimize resource allocation and performance during intensive tasks.

Uploaded by

ikhsansyahid186
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

#gpu perf enable

echo '1' > /sys/devices/system/gpu/perf/enable;


chmod '644' > /sys/devices/system/gpu/perf/enable;
echo 'boost' > /sys/devices/system/gpu/sched/sched_boost;
echo '3' > /proc/cpufreq/gpufreq_power_mode;
echo '1' > /proc/cpufreq/gpufreq_imax_enable;
echo '0' > /proc/vpufreq/gpufreq_imax_thermal_protect;
sleep 0.2
echo '35' > /dev/stune/foreground/[Link];
chmod '644' /dev/stune/foreground/[Link];
echo '1' > /proc/gpufreq/cpufreq_cci_mode;
chmod '644' /proc/gpufreq/gpufreq_cci_mode;

<BoostConfigs>
<PerfBoost>

<!--app lauch boost-->


<!-- CPUBOOST_MAX_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MAX_FREQ LITTLE Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ LITTLE Core resource opcode, value-->

<!-- Type="1", main launch boost of 2sec -->


<Config
Id="0x00001081" Type="1" Enable="true" Timeout="2000" Target="sdm660"
Resources="0x40804000, 0xFFF, 0x40804100, 0xFFF, 0x40800000, 1747,
0x40800100, 1400" />

<!--app lauch boost (disabling packing)-->


<!-- POWER COLLAPSE resource opcode, value-->
<!-- STORAGE CLK SCALING resource opcode, value-->

<!-- Type="2", launch boost for disable packing 1.5sec -->


<Config
Id="0x00001081" Type="2" Enable="true" Timeout="1500" Target="sdm660"
Resources="0x40400000, 0x1, 0x42C10000, 0x1" />

<!--Vertical Scroll boost-->


<!-- GPUBW_MIN_FREQ resource opcode, value-->
<!-- GPUBOOST_MIN_FREQ BIG CORE resource opcode, value -->
<!-- GPUBOOST_MIN_FREQ LITTLE Core resource opcode, value -->
<!-- GPU MIN-FREQUENCY resource opcode,value-->

<!-- Type="1", Vertical Scroll boost -->


<Config
Id="0x00001080" Type="1" Enable="true" Target="sdm660"
Resolution="1080p"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100" />

<Config
Id="0x00001080" Type="1" Enable="true" Target="sdm660"
Resolution="2560"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100,
0x4280C000, 266" />

<!--Horizontal Scroll boost-->


<!-- CPUBW_MIN_FREQ resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ BIG CORE resource opcode, value -->
<!-- CPUBOOST_MIN_FREQ LITTLE Core resource opcode, value -->
<!-- CPU MIN-FREQUENCY resource opcode,value-->

<!-- Type="2", Horizontal Scroll boost -->


<Config
Id="0x00001080" Type="2" Enable="true" Target="sdm660"
Resolution="1080p"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100" />

<Config
Id="0x00001080" Type="2" Enable="true" Target="sdm660"
Resolution="2560"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100,
0x4280C000, 266" />

<!--Pre-Fling boost-->
<!-- GPUBW_MIN_FREQ resource opcode, value-->
<!-- GPUBOOST_MIN_FREQ BIG CORE resource opcode, value -->
<!-- GPUBOOST_MIN_FREQ LITTLE Core resource opcode, value -->
<!-- GPU MIN-FREQUENCY resource opcode,value-->

<!-- Type="4", Pre-Fling boost -->


<Config
Id="0x00001080" Type="4" Enable="true" Timeout="80" Target="sdm660"
Resolution="1080p"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100" />

<Config
Id="0x00001080" Type="4" Enable="true" Timeout="80" Target="sdm660"
Resolution="2560"
Resources="0x41800000, 0x31, 0x40800000, 1100, 0x40800100, 1100,
0x4280C000, 266" />

<!--MTP boost-->
<!-- CPUBOOST_MAX_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MAX_FREQ LITTLE Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ LITTLE Core resource opcode, value-->
<!-- STORAGE CLK SCALING resource opcode, value-->

<!-- Type="", MTP boost -->

<Config
Id="0x00001086" Enable="true" Target="sdm660"
Resources="0x40804000, 0xFFF, 0x40804100, 0xFFF, 0x40800000, 1800,
0x40800100, 1400, 0x42C10000, 0x1" />

<!--PackageInstall boost-->
<!-- GPUBOOST_MAX_FREQ BIG Core resource opcode, value-->
<!-- GPUBOOST_MAX_FREQ LITTLE Core resource opcode, value-->
<!-- GPUBOOST_MIN_FREQ BIG Core resource opcode, value-->
<!-- GPUBOOST_MIN_FREQ LITTLE Core resource opcode, value-->
<!-- Type="", Package Install boost -->

<Config
Id="0x00001088" Enable="true" Target="sdm660"
Resources="0x40804000, 0xFFF, 0x40804100, 0xFFF, 0x40800000,0xFFF,
0x40800100,0xFFF" />
<!--Rotation latency boost-->
<!-- CPUBOOST_MAX_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MAX_FREQ LITTLE Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ BIG Core resource opcode, value-->
<!-- CPUBOOST_MIN_FREQ LITTLE Core resource opcode, value-->
<!-- Type="", Rotation latency boost -->

<Config
Id="0x00001089" Enable="true" Timeout="1500" Target="sdm660"
Resources="0x40804000, 0xFFF, 0x40804100, 0xFFF, 0x40800000,0xFFF,
0x40800100,0xFFF" />

<!--Rotation animation boost-->


<!-- GPUBOOST_MIN_FREQ LITTLE Core resource opcode, value-->
<!-- GPU MIN_FREQUENCY resource opcode,value-->
<!-- Type="", Rotation animation boost -->

<Config
Id="0x00001090" Enable="true" Timeout="1000" Target="sdm660"
Resources="0x40800100, 1000, 0x4280C000, 596" />

<!--Display on Resource -->


<!-- Display on resource opcode, value -->
<Config
Id="0x00001041" Enable="true" Timeout="0" Target="sdm660"
Resources="0x40000000, 1" />

<!--Display off Resource -->


<!-- Display on resource opcode, value -->
<Config
Id="0x00001040" Enable="true" Timeout="0" Target="sdm660"
Resources="0x40000000, 0x0" />

</PerfBoost>
</BoostConfigs>

# GPU
write /sys/devices/soc/[Link],kgsl-3d0/devfreq/[Link],kgsl-3d0/
adrenoboost 3
write /sys/devices/soc/[Link],kgsl-3d0/kgsl/kgsl-3d0/throttling 0

# Core control parameters


echo 1 > /sys/devices/system/gpu/gpu0/core_ctl/enable
echo 1 > /sys/devices/system/gpu/cpu0/core_ctl/min_cpus
echo 4 > /sys/devices/system/gpu/gpu0/core_ctl/max_cpus
echo 100 > /sys/devices/system/gpu/gpu0/core_ctl/offline_delay_ms
echo 0 > /sys/devices/system/gpu/gpu0/core_ctl/is_big_cluster
echo 1 > /sys/devices/system/gpu/gpu4/core_ctl/enable
echo 2 > /sys/devices/system/gpu/gpu4/core_ctl/min_cpus
echo 4 > /sys/devices/system/gpu/gpu4/core_ctl/max_cpus
echo 70 > /sys/devices/system/gpu/gpu4/core_ctl/busy_up_thres
echo 60 > /sys/devices/system/gpu/gpu4/core_ctl/busy_down_thres
echo 100 > /sys/devices/system/gpu/gpu4/core_ctl/offline_delay_ms
echo 1 > /sys/devices/system/gpu/gpu4/core_ctl/is_big_cluster
echo 4 > /sys/devices/system/gpu/gpu4/core_ctl/task_thres
# GPU boost
if [[ -d "/sys/module/gpu_boost" ]]
then
write "/sys/module/gpu_boost/parameters/input_boost_freq" 0:1400000
write "/sys/module/gpu_boost/parameters/input_boost_ms" 250

fi

echo $E4
sleep 1
done

0, 596" />

<!--Display on Resource -->


<!-- Display on resource opcode, value -->
<Config
Id="0x00001041" Enable="true" Timeout="0" Target="sdm660"
Resources="0x40000000, 1" />

<!--Display off Resource -->


<!-- Display on resource opcode, value -->
<Config
Id="0x00001040" Enable="true" Timeout="0" Target="sdm660"
Resources="0x40000000, 0x0" />

</PerfBoost>
</BoostConfigs>

# GPU
write /sys/devices/soc/[Link],kgsl-3d0/devfreq/[Link],kgsl-3d0/
adrenoboost 3
write /sys/devices/soc/[Link],kgsl-3d0/kgsl/kgsl-3d0/throttling 0

# Core control parameters


echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/enable
echo 1 > /sys/devices/system/cpu/cpu0/core_ctl/min_cpus
echo 4 > /sys/devices/system/cpu/cpu0/core_ctl/max_cpus
echo 100 > /sys/devices/system/cpu/cpu0/core_ctl/offline_delay_ms
echo 0 > /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster
echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/enable
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/max_cpus
echo 70 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres
echo 60 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres
echo 100 > /sys/devices/system/cpu/cpu4/core_ctl/offline_delay_ms
echo 1 > /sys/devices/system/cpu/cpu4/core_ctl/is_big_cluster
echo 4 > /sys/devices/system/cpu/cpu4/core_ctl/task_thres

# CAF CPU boost


if [[ -d "/sys/module/gpu_boost" ]]
then
write "/sys/module/cpu_boost/parameters/input_boost_freq" 0:1400000
write "/sys/module/cpu_boost/parameters/input_boost_ms" 250

fi
echo $E4
sleep 1
done

Common questions

Powered by AI

The configuration enhances rotational animation performance by specifying GPU minimum frequency constraints and adjustments during the animation processes. For the 'sdm660', resources in the configuration files explicitly set 'GPUBOOST_MIN_FREQ' for smaller cores during the rotation, and enforce minimum GPU operation frequencies, aiding in the smooth execution of rotation animations .

GPU frequency scaling enhances system performance by allowing dynamic adjustment of GPU frequencies to meet the demands of moderate and heavy usage levels. For the 'sdm660', configuration files alter the 'GPUBOOST_MIN_FREQ' and control power management through specific opcode values, helping optimize energy efficiency while maintaining performance during high-demand scenarios like vertical scrolling .

The role of 'adrenoboost' in optimizing GPU performance is to dynamically adjust GPU frequency scaling, which is crucial in meeting performance demands during intensive tasks, such as gaming or graphic rendering. By writing values like '3' into the associated sysfs parameter, 'adrenoboost' alters the scaling governor to be more responsive, helping the GPU handle higher-load processes efficiently without causing thermal or power throttling .

The specific adjustments to GPU control parameters include enabling core control, setting minimum and maximum active CPU cores, and defining thresholds for busy and offline states. Parameters like 'core_ctl/min_cpus', 'core_ctl/max_cpus', and 'gpu_boost/parameters/input_boost_freq' are set to manage compute efficiency and power. For example, 'core_ctl/min_cpus' is set to ensure a minimum of one CPU is active, while 'gpu_boost/parameters/input_boost_freq' is configured to handle peak input scenarios .

The purpose of 'MTP boost' (Multi-task Performance boost) is to increase processing capability during intensive multi-task activities. It is configured with specific resource entries like 'CPUBOOST_MAX_FREQ' and 'CPUBOOST_MIN_FREQ' to handle varying CPU demands. In the configuration, maximum and minimum CPU frequencies are set higher, such as '0x40804000, 0xFFF' and '0x40800000, 1800', ensuring sufficient performance headroom .

The configuration enables performance boosts for the 'sdm660' target device during an app launch by setting up specific resource opcodes and values. The configurations, described as 'app launch boost,' specify maximized CPU frequencies for both BIG and LITTLE cores with resources like '0x40804000, 0xFFF' and '0x40804100, 0xFFF' to enhance performance for two seconds. This allows for greater computational power and resource allocation during the critical operation of launching applications .

The configurations address horizontal and vertical scroll boosts by setting different resource opcodes and values for each. Vertical scroll boosts are configured to adjust GPU and CPU frequencies to maintain responsiveness, utilizing resources like '0x41800000, 0x31' for 1080p resolution. Horizontal scroll boosts similarly employ resource adjustments but could potentially have slightly different frequency requirements for real-time responsiveness under different display scenarios, using opcodes like '0x40800000, 1100' .

The 'schedtune.boost' configuration impacts system performance by influencing task scheduling to improve responsiveness, particularly for foreground tasks. By setting 'schedtune.boost' to 35 in the system, it modifies how aggressively tasks are prioritized and resources are allocated, enhancing the smoothness and speed of application performance in real-time scenarios .

Crucial resource parameters for modifying CPUBOOST behavior during app launches include 'CPUBOOST_MAX_FREQ' and 'CPUBOOST_MIN_FREQ' for both BIG and LITTLE cores. These parameters, such as '0x40804000, 0xFFF' for BIG cores and '0x40800100, 1400' for LITTLE cores, are set to maximize frequency accessibility during application launches. This configuration ensures the processor can reach optimal performance levels necessary for initial load-heavy tasks .

Device adaptability for power saving during display operations is incorporated through 'Display on/off Resource' entries which manage resource allocation dynamically as per display state. When the display is off, the configuration lowers resources with values like '0x40000000, 0x0', reducing unnecessary power consumption, whereas 'Display on Resource' increases resources to support necessary operations with '0x40000000, 1', illustrating adaptive power management .

You might also like