I blame nvidia for making this chip 40nm and LG, not making a proper desing to dissipate the heat released by the SoC.
At default state, P880 behaves like a 100m sprinter. Fast at start, out of breath after the finish. That "finish" depends on the workload of the device and ambient temperature.
At very demanding games I can usually play about 10-15 minutes before serious lag.
This is not all off it.
Because of restrictive governor policies, some games that run smoothly on two core devices, runs like crap on this device. Default governor disables all but one core when there is load on graphics part. I assume this is also because of the attempt to prevent overheating.
So, the device is not running as advertised. This is my thought.
It seems, without serious underclocking and undervolting, one can not get a smooth experience from this device.
With the end of my warranty, I've started modifying the device. My aim is to keep the phone under heavy load with the highest speed as long as possible.
Before hardware level modification, I've rooted and BL unlocked the P880, thanks to great members of XDA.
I'm currently on stable version of CM 10.1.3. Stock kernel.
From what I've read and comfirm with my own experiments, there are two temp limits triggering the throttling. One is the battery, which is 43°C. Other one is the core or the SoC which is 71°C.
With these limiters, device is reaching its lowest speed of 475Mhz under 10 minutes @ 20-ish degrees celsius room temp. I use stability test v2.7 for achieving this. Under real life circumstances, e.g, games, this time differs between 10 to 20mins.
There is a warning on the battery. Says 40°C max. Isn't that too low for this kind of device? With the help of this software I can increase "temp_throttle_skin" value easily to 50°C. http://forum.xda-developers.com/show....php?t=2306980
With more headroom on the battery side, P880 drops no more to 475mhz up to 20 minutes of stress testing with Stability Test 2.7.
At 20th minute, battery was 45.5°C. 4 cores running @ 1000Mhz. Core varies between 67-71°C.
After a small mod of applying some Gelid GC-Extreme thermal compound over the metal piece installed on the SoC, I've got slightly better results.
At 20th minute with Stability test 2.7, classic mode, battery increased to 47.5°C , 4 cores stayed at 1200Mhz and never dropped to 1000 but still hitting 70°C. There is slightly better heat spread over the device.
SoC is not touching the main frame directly. Different from nexus 4, there is a small metal shield covering the Soc and memory. (Strange thing is, metal shielding has a hole over the memory part. There is a thermal sticker on that chip.) Only a small part of the metal shield is touching to the main frame. That is a weird material I've never seen before. Its surface looks like sponge but very hard to touch. Like sand paper. I applied the thermal paste on this material in hopes of filling the small gaps and achieving a better surface but it doesn't help so much. I think that rough surfaced material is not ideal to be there in the beginning.
I think, cutting some parts of that shield piece and placing thicker cu or alu sheet metal will be better approach.
I'm also planning to wait for some time for thermal paste to cure. From my experience with this same compound on the PC parts, it takes some time for best results.
All suggestions are welcome.
I also wonder what's your solutions for this throttling matter.
Here are the pics.
First, I want to say thanks to everyone who has send a reply to this post.
I'm back with more modifications and updates.
I wasn't satisfied with my previous modifications which was a simple thermal compound addition.
A proper test can not be done with lack of a custom kernel which has advanced software adjustment possibilities and of course a tool to make the adjustments.
Now I'm on CM 10.1.3 Stable with WerewolfJB kernel v009 [04-29-2014]. Making the speed adjustments with Trickster MOD app. https://play.google.com/store/apps/d...0.trickstermod
As for the modification, my first approach was replacing the thermal sticker with a copper plate.
Disassembling the P880 second time.
Notice the touch points of the mainframe.
The metal piece covering the SoC area and thermal sticker removed.
This metal piece between the main frame and SoC is an EMI shield and a heat medium which delays the heat transfer to the mainframe. If you attach the SoC directly to the mainframe, it makes better SoC cooling but battery gets very hot in return. This will eventually make the battery die quickly because heat is the number one enemy of the batteries.
If I could improve the heat transfer from SoC to both the mainframe and metal shielding piece, that might improve the cooling efficiency. That was what I wanted to find out before beginning to mod.
The thinnest copper piece I could find is 0.8mm thick.
0.8mm is too thick for a device which has 8.9mm overall thickness!
I was able to reassembly the device but that put a lot of stress both to the mainframe which has LCD on it and of course the fragile, over engineered, tightly packed PCB of the device. This was a bad idea.
I couldn't find thinner copper plates. At least this small amount.
Final solution came from an old slider style switch which has copper strips touching on each other. I 've found it laying around so destroyed it to get some copper strips, thin enough to use. After cutting to proper size, I've dealt with the corrosion first.
They are 0.35mm thick. I think this is the maximum that can be used without serious concerns.
I've applied thermal paste to both sides of the strips, cut the thermal sticker in half and put the thick part back on to the memory chip. This is the final design before reassembling the device.
I've prepared a test video. 20 minute stress run.
My settings are stock. 1500mhz max speed with interactive governor.
This is the most torturing test. CPU+GPU test with gaming governor is nothing compared to 4 core stress test.