Lettera inviata (tradotta e modificata da me):
Good day Mister Xin Li ,
I am writing you to have explanations and clarifications on SoC K3V2, that equips Ascend G615/Honor 2 (U9508) smartphones – Android ICS 4.0.4
I would like to ask you, if possible, if your team is currently engaged in the realization of the new kernel that is going to equip the next Jelly Bean update for our smartphones and if such work, will include also various performance tweaks such as third frame buffer , vsync , new Hisilicon.immersion.16/GC4000 Vivante core (GPU) drivers , other than an improved power consumption of the smartphone itself.
Another question that I kindly ask you is to know how do the system policies and the power manager (Pmqos) manage the system and how are the various applications affected by this management.
I have noticed that the governor “k3hotplug”, in particular, manage the four cores of the CPU asynchronously: most of the time the CPU runs with only one core online and using a frequency that varies from 208 MHz to 936 MHz, leaving the other three cores offline.
According on the profile activated (Power saving; Balanced; Performance) , the four cores should be online at the same time (especially for Performance profile ) but ,often, only two cores are online and not even at the maximum frequency (first core variable between 936MHz - 1.2GHz/ second core variable between 400MHz - 936MHz).
In every process, from the simpler (such a light operation) to the most complex (such an heavy game), the CPU cores work for the most of the time at 936MHz and the number of cores online at the same time is never more than three(leaving the fourth core offline or at the minimum frequency).
Also, the governor “ k3hotlpug” , manage the frequency of the DDR memory (maximum 450MHz in dualchannel) and the GPU frequency (maximum 480MHz), but here too , most of the time, the system policies implement the undervolt and underclock of the frequencies.
This are the available frequencies of the CPU/RAM/GPU expressed in MHz:
CPU - 208000 416000 624000 832000 936000 1200000 1399000 1400000
DDR - 58000 120000 360000 450000
GPU - 58000 120000 240000 360000 480000
In 3D games the CPU uses only two cores (with Performance profile), DDR at 360MHz and GPU variable between 120MHz and 240MHz.
This situation impacts on the overall performance, making gaming experience not very good.
It happens, indeed, that the GPU goes slow with 3D games , giving as a result clear frame rate drops and lag. That is probably a result of the activity of the policies and a result of the system temperature.
I am forced to manage the frequencies manually through the profiles cpu_profile_block, ddr_profile_block and gpu_profile_block, to enjoy a good gaming experience.
In the benchmarks (such as GLbenchmark or Antutu) very high scores are obtained(does pmquos disable the system policies carrying the four cores, the GPU and the RAM to the maximum frequency? ) but this does not happen in games (is pmquos involved somehow? ).
If you want I can provide additional data that may be of interest for you, on your request.
Thank you for your patience, and, waiting for a response, I wish you good work.
Regards, Andrea Codaro.
Originale di fracarro :
Salve Signor Xin Li,
Le scrivo per avere delucidazioni e chiarimenti sul SoC K3V2, che equipaggia lo smartphone Ascend G615/Honor2/U9508 - Android ICS 4.0.4
Vorrei chiederle, se possibile, se il suo gruppo é impegnato nella realizzazione del nuovo kernel che. dovrebbe andare ad equipaggiare il prossimo update di Jelly Bean per il nostro smartphone e se tale lavoro, includerà anche tutte le varie migliorie prestazionali (3° frame buffer, vsync, nuovi driver fronte gpu Hisilicon.immersion.16/CG4000 Vivante core), oltre che nel fronte consumi.
Altra domanda che le porgo gentilmente é sapere come le system policy e il power manager (Pmqos) gestiscano il sistema e come le varie applicazioni risentano di questa gestione.
Il governor K3hotplug in particolare, noto che gestisce i 4 core della cpu in modo asincrono, nella maggior parte del tempo viaggia ad un core solo e ad una frequenza che varia dai 208 ai 936 mhz, lasciando gli altri core in offline.
In base al profilo (batteria - bilanciato - prestazioni) selezionato, i 4 core dovrebbero essere attivi ma molto spesso. sono solo 2 i core attivi (prestazioni) e non alla massima frequenza di 1.4Ghz (1 core a 936-1.2ghz - secondo core variabile tra i 400 e i 936mhz).
In ogni attività, che sia questa una semplice operazione o un gioco molto pesante in termine di risorse, i core della cpu lavorano per quasi tutto il tempo a 936mhz ed il numero massimo di core non supera i 3 contemporaneamente online (lasciando il quarto core in offline o a bassissima frequenza il più delle volte).
Inoltre, il k3hotplug, gestisce anche le frequenze delle memorie ddr (massimo 450mhz dualchannel) e della gpu (massimo 480mhz) ma anche qui, il più delle volte, le policy di sistema attuano l' undervolt e l'underclock delle frequeze.
Queste le frequenze disponibili di cpu/ddr/gpu;
CPU - 208000 416000 624000 832000 936000 1200000 1399000 1400000
DDR - 58000 120000 360000 450000
GPU - 58000 120000 240000 360000 480000
Nei giochi 3D la cpu usa 2 soli core (prestazioni), DDR a 360mhz e GPU tra 120 e 240 mhz.
Questo si riflette sulle prestazioni generali, rendendo l'esperienza videoludica non molto buona.
Capita infatti, che la gpu vada a rilento con i giochi in 3D, dando come risultato vistosi cali di frame e lag come conseguenza dell' attività delle policy e delle temperature di sistema.
Sono costretto a gestire le frequenze attraverso i profili cpu_profile_block, ddr_profile_block e gpu_profile_block manualmente, per godere a pieno dell' esperienza di gioco.
Nei benchmark Glbenchmark e Antutu si ottengono punteggi altissimi (Pmqos che disabilita le system policy portando tutti e 4 i core cpu alla massima frequenza e ddr/gpu alla massima frequenza??) ma nei giochi no (Pmqos che interviene??).
Se vuole, posso fornigli altri dati che potrebbero interessarla e su sua richiesta.
Grazie e nell’attesa di una sua risposta, le auguro buon lavoro.
Distinti Saluti
La lettera è stata inviata in data 29/03/13 alle 21.
Si ringrazia fracarro per l'idea, il contatto e la stesura!
Onde evitare ripetizioni non inviate altri messaggi a Xin Li , se avremo una risposta la posterò qui