Our phones cannot display more then ~56 fps due to vsync
Test settings: JM2, samset 1.8, mimocans ext4 fix + dalvik cache sent to nand, 8gb class 6 sd, all benchmarks were only run once.
Neocore:
200mhz : 36.8 fps
400mhz : 56 fps
800mhz : 56 fps
1000mhz : 56 fps
Yes, with our cpu reduced by 80% we still beat the nexus one and other froyo omapp/snapdragon cpu's in neocore.
Quadrant: (world & moon, the others are more difficult to test)
200mhz : 40fps : 410 Quadrant
400mhz : 56fps : 789 Quadrant
800mhz : 56fps : 1532 Quadrant
1000mhz: 56fps: 1762 Quadrant
Fps2d is 56 fps at all cpu settings.
-IMPORTANT-
Due to the nature of vsync we have no idea what fps we could be getting, Generally when you scale down cpu performance the bandwidth available for the gpu decreases dramatically as the processor cannot handle the new frames to keep up with the gpu. What this is showing us is that in neocore at 1000mhz we only require 20% of the cpu to get 36.8 fps and somewhere around 300mhz to get to the 56fps vsync cap. For all i know the gpu might only be able to output 70 fps without vsync at 1,000mhz, the question is by how much does reducing the cpu speed effect the available bandwidth to the gpu
This shows us:
1. Our gpu is largely held back by the frame-limit, the cpu also has an impact on the gpu performance.
2. We need better benchmarks to test only 3d performance, many of the 3d tests in quadrant are either heavy on the cpu, or are 2d tests. And neocore is simply not taxing enough on our gpu.
3. Need to find a way to remove vsync
4. Its a powerful beast! looking forward to froyo
Look foward to GLbenchmark 2.0
Even currently in 1.1 it's showing some impressive results, even though it's not supported very well on latest-gen gpu's (SGX530/535/540 mostly)
*off topic*
Would you please link / pm me to the Sd card you are using?
Its a Samsung 8gb class 6
would underclocking the cpu to 600mhz for example help increase battery performance, or it it mostly the screen that drains the battery?
its mostly the screen
But really really great research there !
Its nice to know.. Hehe..
The next thing i would like too see is quadrant tests where the SGS has undergone the Lagfix and then with different SD cards
hi
i did some research regarding the topic and want to share my finds/work with everyone.
the comparison shows all pvs of MSM8974AB 2.3ghz (one m8 - pro_rev1_2p3g) and MSM8974AC (gs5 - pro_rev1_2p5g).
all table data manually taken from latest one m8 kernel sources.
in addition i added one m7 (APQ8064) and lumia 930 (2p2g) chips (pvs0 and pvs6) for intresting comparison.
with this guide in combination with root access, custom kernel and trickster mod you can find out your cpu's pvs bin (compare default voltages).
alternative to find your pvs: adb shell from recovery (su) "cat /proc/last_kmsg | grep bin: -i".
also it serves as a template to try out higher pvs settings on your cpu.
as you see, qualcomm did some impressive work with binning and trying to get most out of each cpu.
however there is usually still some headroom for optimizations if you do some efforts.
same research i already did for the m7 (APQ8064 compared to APQ8064T of galaxy s4) if someone is intrested (let me know).
happy clocking/volting!
i take no responsibilities for potential harm you do to your device. all on your own risk.
please share your results of which pvs level works on your personal chip (also tell stock pvs value of course).
preview:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
download link:
PVS Research.xls
best max frequency (sweet performance/power spot):
MSM8974AB 2.3ghz - 1.34ghz
MSM8974AC 2.5ghz - 1.57ghz
MSM8974v2 2.2ghz - 1.34ghz
APQ8064 1.7ghz - 1.24ghz
APQ8064T 1.9ghz - 1.35ghz
best screen-off frequency (this varies if you try higher pvs settings):
Snapdragon 801 2.3ghz MSM8974AB - One M8
MSM8974AB 2.3ghz PVS 0 - 300mhz
MSM8974AB 2.3ghz PVS 1 - 346mhz
MSM8974AB 2.3ghz PVS 2 - 422mhz
MSM8974AB 2.3ghz PVS 3 - 499mhz
MSM8974AB 2.3ghz PVS 4 - 576mhz
MSM8974AB 2.3ghz PVS 5 - 652mhz
MSM8974AB 2.3ghz PVS 6 - 499mhz
MSM8974AB 2.3ghz PVS 7 - 576mhz
MSM8974AB 2.3ghz PVS 8 - 652mhz
MSM8974AB 2.3ghz PVS 9 - 729mhz
MSM8974AB 2.3ghz PVS 10 - 806mhz
MSM8974AB 2.3ghz PVS 11 - 883mhz
MSM8974AB 2.3ghz PVS 12 - 960mhz
MSM8974AB 2.3ghz PVS 13 - 1036mhz
MSM8974AB 2.3ghz PVS 14 - 960mhz
MSM8974AB 2.3ghz PVS 15 - 1036mhz
Snapdragon 801 2.5ghz MSM8974AC - Galaxy S5
MSM8974AC 2.5ghz PVS 0 - 422mhz
MSM8974AC 2.5ghz PVS 1 - 499mhz
MSM8974AC 2.5ghz PVS 2 - 576mhz
MSM8974AC 2.5ghz PVS 3 - 652mhz
MSM8974AC 2.5ghz PVS 4 - 729mhz
MSM8974AC 2.5ghz PVS 5 - 806mhz
MSM8974AC 2.5ghz PVS 6 - 652mhz
MSM8974AC 2.5ghz PVS 7 - 729mhz
MSM8974AC 2.5ghz PVS 8 - 806mhz
MSM8974AC 2.5ghz PVS 9 - 883mhz
MSM8974AC 2.5ghz PVS 10 - 960mhz
MSM8974AC 2.5ghz PVS 11 - 1036mhz
MSM8974AC 2.5ghz PVS 12 - 1113mhz
MSM8974AC 2.5ghz PVS 13 - 1190mhz
MSM8974AC 2.5ghz PVS 14 - 1113mhz
MSM8974AC 2.5ghz PVS 15 - 1190mhz
Snapdragon 800v2 2.2ghz MSM8974v2
MSM8974v2 2.2ghz PVS 0 - 345mhz
MSM8974v2 2.2ghz PVS 1 - 499mhz
MSM8974v2 2.2ghz PVS 2 - 422mhz
MSM8974v2 2.2ghz PVS 3 - 499mhz
MSM8974v2 2.2ghz PVS 4 - 576mhz
MSM8974v2 2.2ghz PVS 5 - 499mhz
MSM8974v2 2.2ghz PVS 6 - 576mhz
Snapdragon 600 1.7ghz APQ8064 - One M7
APQ8064 1.7ghz PVS 0 - 594mhz
APQ8064 1.7ghz PVS 1 - 594mhz
APQ8064 1.7ghz PVS 2 - 702mhz
APQ8064 1.7ghz PVS 3 - 810mhz
APQ8064 1.7ghz PVS 4 - 702mhz
APQ8064 1.7ghz PVS 5 - 810mhz
APQ8064 1.7ghz PVS 6 - 702mhz
Snapdragon 600 1.9ghz APQ8064T - Galaxy S4
APQ8064T 1.9ghz PVS 0 - 702mhz
APQ8064T 1.9ghz PVS 1 - 702mhz
APQ8064T 1.9ghz PVS 2 - 702mhz
APQ8064T 1.9ghz PVS 3 - 810mhz
APQ8064T 1.9ghz PVS 4 - 702mhz
APQ8064T 1.9ghz PVS 5 - 702mhz
APQ8064T 1.9ghz PVS 6 - 702mhz
best min frequency:
lowest possible setting (300mhz in case of MSM8974)
i highly recommend to run those values (exept if you are actually playing demanding 3d games).
use trickster mod frequency lock feature to do so. you will experience amazing battery life.
how to get the maximum battery life:
if you have a MSM8974AB pvs 6 for example, try the following steps:
try the next higher pvs levels (pvs7). don't try AC pvs values on AB chips.
AB chips are binned for lower frequencies while AC are binned for higher frequencies (duh).
so if you have a AB chip, work your way up the AB pvs values until you have freezes or similar and move back.
if you have a AC chip, work your way up the AC pvs values etc...
if you found highest setting that does not cause any problems after intensive testing and usage:
congratulations, you did it. :good:
how to get the maximum frequency:
first try higher than stock maximum clock and see how it behaves.
if you don't reach your desired clockspeed, try the next lower pvs setting of your chip. yes, i said LOWER.
this gives the processor more voltage to reach higher overclocks.
i don't recommend it tho since we all want our phones to last as long as possible usually.
signs of too high overclock:
device lockups (not responding) or sudden reboots during heavy load.
signs of too low voltage:
problems with audio when screen off, long screen wakeup time, lockups and reboots even without cpu-load.
caused by not enough voltage for low frequency levels usually.
snapdragon 805 infos:
HD2Owner said:
here you go. i digged in the kernel sources and found it.
2.7GHz RC1 - speed2-bin-v1 (PVS levels 0-15)
2.7GHz RC0 - speed2-bin-v0 (PVS levels 0-15)
2.5GHz RC1 - speed1-bin-v1 (PVS levels 0-15)
2.5GHz RC0 - speed1-bin-v0 (PVS levels 0-15)
2.3GHz RC1 - speed0-bin-v1 (PVS levels 0-15)
2.3GHz RC0 - speed0-bin-v0 (PVS levels 0-15)
there seem to be two different variants of the 805 (RC0 and RC1).
RC0 seems to use less voltage at higher frequencies.
RC1 seems to use less voltage at lower frequencies.
the voltage tables you can take from the attached txt.
i also attached a txt containing how the bus clocks behave in relation to the cpu-frequency.
snapdragon 805 pvs 2.7ghz RC0.txt
snapdragon 805 pvs 2.7ghz RC1.txt
snapdragon 805 pvs 2.5ghz RC0.txt
snapdragon 805 pvs 2.5ghz RC1.txt
snapdragon 805 pvs 2.3ghz RC0.txt
snapdragon 805 pvs 2.3ghz RC1.txt
snapdragon 805 bus ratios.txt
Click to expand...
Click to collapse
enjoy and leave a thanks if you like it please.
edit v2:
fixed some flaws (22 downloads of v1)
@HD2Owner, seems like this would be better in an Original Dev section?
I realize that there's no place on XDA anymore without non-dev clutter, but this information - and a discussion of it - would seem to be better alongside kernel work than in the same section as "India chat", "British chat", "USA chat", and "I'm too lazy to read any thread so I'm going to post a question that's been answered 50294 times in the past 24 hours."
(I'd request a mod to move it, but it's your thread...)
Take care
Gary
sure.. it's not actual development but closely related research yes.
Sorry for the n00bish question, but what can I actually do with this? Im guessing some kind of undervolting / overclocking?
I am running ElementalX Kernel and have the Trickster Mod app installed.
Cheers
Stewart
StuMcBill said:
Sorry for the n00bish question, but what can I actually do with this? Im guessing some kind of undervolting / overclocking?
I am running ElementalX Kernel and have the Trickster Mod app installed.
Cheers
Stewart
Click to expand...
Click to collapse
Yea it's for understanding where you device Falls on the overclockability / how much voltage you'd need at different OC rates scale
I am in touch with trickster mod devs.
saving presets does not work yet.
when they fixed it, I will release all pvs presets.
Code:
cat /proc/last_kmsg | grep bin: -i
[ 0.321444] c1 1 clock-krait-8974 f9016000.qcom,clock-krait: Speed bin:
1
[ 0.321460] c1 1 clock-krait-8974 f9016000.qcom,clock-krait: PVS bin: 13
HTC One with PVS 13 here but happily running the following:
Code:
300MHz - 725mV
422MHz - 725mV
652MHz - 725mV
729MHz - 725mV
883MHz - 735mV
960MHz - 745mV
1036MHz - 755mV
1190MHz - 775mV
1267MHz - 785mV
1497MHz - 815mV
1574MHz - 825mV
1728MHz - 845mV
1958MHz - 880mV
2265MHz - 940mV
2457MHz - 975mV
HD2Owner said:
same research i already did for the m7 (APQ8064 compared to APQ8064T of galaxy s4) if someone is intrested (let me know).
Click to expand...
Click to collapse
I'd be very interested in that
I'm using an S4
Mr_Bartek said:
Code:
cat /proc/last_kmsg | grep bin: -i
[ 0.321444] c1 1 clock-krait-8974 f9016000.qcom,clock-krait: Speed bin:
1
[ 0.321460] c1 1 clock-krait-8974 f9016000.qcom,clock-krait: PVS bin: 13
HTC One with PVS 13 here but happily running the following:
Code:
300MHz - 725mV
422MHz - 725mV
652MHz - 725mV
729MHz - 725mV
883MHz - 735mV
960MHz - 745mV
1036MHz - 755mV
1190MHz - 775mV
1267MHz - 785mV
1497MHz - 815mV
1574MHz - 825mV
1728MHz - 845mV
1958MHz - 880mV
2265MHz - 940mV
2457MHz - 975mV
Click to expand...
Click to collapse
that's what i want to see here.. :highfive:
i will enhance the first post later with m7 vs gs4.
probably also some general guidelines.
but i need as much info as i can gather from different bins and experiences to make conclusions.
the plan is to post trickster mod voltage settings for all 32 pvs levels when export/import works.
until then you need to manually try the values. please stick to the posted values or report in detail.
@ moderators: feel free to move the thread where it fits best
I am using elementalX with undervolt -45. The values I get from trickster mod do they take into account the undervolting of the kernel or is it something more global that trickster mod does not show?
PVS info are unavailable on the galaxy S5 and the command on the terminal emulator isn't working,with that in mind checking the PVS binning is done in this directory :
/sys/devices/system/soc/soc0/soc_pvs
andreasyeah said:
I am using elementalX with undervolt -45. The values I get from trickster mod do they take into account the undervolting of the kernel or is it something more global that trickster mod does not show?
Click to expand...
Click to collapse
The issue with elementalX is that the undervolt only works for the lowest clock value and doesn't apply for the rest. Check in Trickster Mod and you'll notice that it's only applied to 300MHz.
also, even without root access, you could use adb bugreport >bugreport.txt then grep the file for infos.
On my note3 with Android 4.3 I don't get any Bin strings but ...
Hmm I can't get over 2.4ghz.
Locks up. Although elemental voltages seem a lot lower than those cited in the document attached to this thread.
I do wonder, is kernel tweaker successfully amending voltages?
I tried to ramp the voltages up whilst in power saving mode, then disabled power saving mode, but it locks up and restarts.
I would of hoped 2.5ghz is easily attainable as I thought we had the same processor but clocked to a lower frequency compared to the S5 etc.
Would appreciate some help with oc'ing.
I am PVS 12 and I've set the voltages specified in the spreadsheet with stock frequency and when I am running Antutu X, CORE 1 is stuck at 1%. I am not sure if this happens with default voltages too or if it's kernel related because I am running ElementalX 0.19. I've rebooted and I am trying to reproduce it now
EDIT: I've tested it with stock voltages, and I get the same problem. I am using Insertcoin ROM and the usage statistics of Insertcoin Control on the notifications(picture attached. Picture just shows the tool I am using. Not the moment when CORE1 locks.)
Is there a chance that it's not showing correct values for CORE1? Is there another app I can use to test the core usage while benchmarking?
EDIT2: I've found the problem. Everything works fine when I uninstall trickster and then restart. After I install trickster and run the benchmark, CORE1 locks at 1%-5% while others are 100%. I don't change any settings on trickster. Stock voltages and it does not even apply any settings on boot. If it is installed, no matter how many reboots I do, the problem persists. If I uninstall it and reboot, the problem is gone. I am really confused
EDIT3: Will it work if I change the UV_mV_table in /sys/devices/system/cpu/cpuX/cpufreq for each CPU Core? I want to change the voltage without Trickster because of the lock issue. Maybe we can make a flashable for each PVS that changes that file, so we don't have to use trickster
added some more infos and conclusions in first post.
Just an addition.
You can get the pvs number in HTC ONE M8 with:
Code:
su
cat /sys/module/clock_krait_8974/parameters/pvs_number
andreasyeah said:
Just an addition.
You can get the pvs number in HTC ONE M8 with:
Code:
su
cat /sys/module/clock_krait_8974/parameters/pvs_number
Click to expand...
Click to collapse
I am something doing wrong ?
Onem8 said:
I am something doing wrong ?
Click to expand...
Click to collapse
Are you doing this while in recovery or while it's booted up?
You can try to navigate to that path using a file explorer and see if it's actually there. Make sure you have a file explorer with root capabilities. If it's not there, I have no idea why!
andreasyeah said:
Are you doing this while in recovery or while it's booted up?
You can try to navigate to that path using a file explorer and see if it's actually there. Make sure you have a file explorer with root capabilities. If it's not there, I have no idea why!
Click to expand...
Click to collapse
This are the only files i have..
According to the review of Anandtech, the Mali T760 GPU on our Galaxy S6 has unused 852 Mhz clock state. Normal speed now is 772 Mhz. Hopefully, this can be enabled in future in custom kernels to better drive those 2k displays. I wonder why they didn't enable it default as the SoC on 14nm should handle the temperature. More speed Ahead i hope.
"There's also a suspicion that Samsung was ready to go higher to compete with other vendors though, as we can see evidence of an 852 MHz clock state that is unused. Unfortunately deeply testing this SoC isn’t possible at this time as doing so would require disassembling the phone"
http://www.anandtech.com/show/9146/t...-edge-review/2
First of all sorry if I posted in the wrong place please someone guide me to where it is supposed to be if i did post in the wrong place, so I have an I9500 running CM13, I downloaded kernal auditor from the Google play store and noticed that I only have the option of editing 4 cores and they all have a Max limit of 1600MHz so I'm assuming those are the A15 set of cores,, so my question is pretty simple, does my current rom make use of both the A7 and A15 clusters (I am aware that they never run simultaneously) I'll include pictures about details on my rom, thanks in advance
Well the screenshot refuses to be uploaded so:
CyanogenMod version: 13.0-20160828-unofficial-gearCM-i9500
Kernal version: 3.4.5-cyanogenmod-gd795889
[email protected] #1
Sun Aug 28 22:30:39 CEST 2016
Build number: cm_I9500-userdebug 6.0.1 MOB30Z
2c597c319e
Test-keys
It could also be that Kernel Adiutor can't access the A7 cores.
big.LITTLE mechanism on i9500 is a little bit unique, because frequency tables are merged.
800 (700 if underclocked) until 1600 (up to 2000 if overclocked) for A15 core, while 250 (as low as 100 if underclocked) until 600 (about 650-750 if overclocked) for A7 core.
If frequency bumps to 800 MHz or higher, A15 core is used, besides that A7 core is used.
Hope this could understand you.
Sent from my ASUS_Z00A using XDA Labs
krasCGQ said:
big.LITTLE mechanism on i9500 is a little bit unique, because frequency tables are merged.
800 (700 if underclocked) until 1600 (up to 2000 if overclocked) for A15 core, while 250 (as low as 100 if underclocked) until 600 (about 650-750 if overclocked) for A7 core.
If frequency bumps to 800 MHz or higher, A15 core is used, besides that A7 core is used.
Hope this could understand you.
Sent from my ASUS_Z00A using XDA Labs
Click to expand...
Click to collapse
yup just like kras said so if it shows lower than 800 then it shows the little cores, for example, 600mhz in kernel adiutor is actually 1200mhz a7 freq, 500mhz is 1000mhz a7 and so on
krasCGQ said:
big.LITTLE mechanism on i9500 is a little bit unique, because frequency tables are merged.
800 (700 if underclocked) until 1600 (up to 2000 if overclocked) for A15 core, while 250 (as low as 100 if underclocked) until 600 (about 650-750 if overclocked) for A7 core.
If frequency bumps to 800 MHz or higher, A15 core is used, besides that A7 core is used.
Hope this could understand you.
Click to expand...
Click to collapse
So the A15 cores would never run below 800 (or 700 if under clocked)?
jwchen17 said:
yup just like kras said so if it shows lower than 800 then it shows the little cores, for example, 600mhz in kernel adiutor is actually 1200mhz a7 freq, 500mhz is 1000mhz a7 and so on
Click to expand...
Click to collapse
I see so 200MHz on kernal auditor would actually be 400MHz A7 etc. That poses another question, I understand that the A15 cores CAN on stock image run at below 800MHz, or is that incorrect
The mad charizard99 said:
So the A15 cores would never run below 800 (or 700 if under clocked)?
Click to expand...
Click to collapse
Yes, that's how the CPU works.
The mad charizard99 said:
I see so 200MHz on kernal auditor would actually be 400MHz A7 etc. That poses another question, I understand that the A15 cores CAN on stock image run at below 800MHz, or is that incorrect
Click to expand...
Click to collapse
No. Below 800 MHz it would switch to A7 core respectively.
Sent from my ASUS_Z00A using XDA Labs