RISC OS on Pi2 review on Youtube
Malcolm Hussain-Gambles (1596) 811 posts |
One thing I was surprised about was being able to watch stuff on youtube using the new web browser on a Pi2. His comment “Ubuntu is way faster than Risc OS”, ummm for what exactly? Watching Youtube I guess. |
David Feugey (2125) 2709 posts |
He also said that Ubuntu is way faster than Raspbian. Totally unfair… and false. |
Rick Murray (539) 13851 posts |
David – I point you to some nice JPOP (the one previously mentioned). It’s a lot better than growing grey hairs over this. ;-) |
David Feugey (2125) 2709 posts |
I’m not masochist :) I saw this other video the same day than the other. I’m no thinking about ways to go under 70° with my Pandaboard. This board is really hot. Migration of server is done and almost all my data is now on the Panda. At least, I’ll be able to work again on more interesting things… web site, software, midi things, etc. |
Rick Murray (539) 13851 posts |
Knock the clock speed back a bit? Save the turbo charged mode for when you need it. According to CPU-Z, my phone (quad core 1.4GHz) spends most of the time it is “doing nothing” at 400MHz, and otherwise bounces the speed around to meet the workload at that moment in time. |
David Feugey (2125) 2709 posts |
RISC OS does this too, but a case is always a problem for a fanless system. I will try bigger heatsink. |
Jon Abbott (1421) 2651 posts |
You could water cool it in a closed loop with in-line radiator although figuring how to mount it and getting a block small enough might be interesting. With this Pi watercooling project they used a RAM waterblock which are about £5 and used ArticSilver to bond it to the ARM. There’s some pics here I use ArticSilver on all my CPU’s/GPU’s and can confirm it will hold it on provided it’s horizontal, without having to screw the block down. It goes semi-hard after a few heat cycles so will hold the block in place provided you don’t start shaking it around. |
David Feugey (2125) 2709 posts |
A bit extreme :) Simpler solution would be to use this : http://www.conrad.com/ce/fr/product/1216702/Ventilateur-axial-industriel-SEPA-112521000-5-VDC-l-x-h-x-p-25-x-25-x-15-mm-1-pcs?ref=list And connect it to expansion port for 5V. But I’ll probably opt for a good passive heatsink. I just need to save 5° to be OK. |
Jon Abbott (1421) 2651 posts |
God I hate fans, going with passive should do it, ARM’s don’t produce much heat (well, they didn’t before they added hundreds of CISC instructions to it) Once you’ve watercooled/gone passive – there’s no going back. I didn’t realised just how much noise all the machines in my house created until I silenced the lot. In addition to that they now all run a heck of a lot cooler (20+ degrees cooler in the case of the GPU) and I get free central heating from all the radiators. You’re right…it’s extreme. When you do come up with a solution, you’ll have to post some images up. On a similar vein I’ve been looking at cooling the Pi in software using WFI as it gets quite hot playing games. From what Jeffrey has confirmed, you may be able to cool it by simply having a WIMP task call OS_Byte 19 in a WIMP_Poll / OS_Byte 19 loop continually – if it’s working as it supposed too, it will put the CPU into a lower power state between VSyncs and only wake it for IRQs. I’ve no idea of how usable the machine would be when doing this though, if it’s just sitting servicing stuff it may work. |
David Feugey (2125) 2709 posts |
In a closed box, passive solution is always a problem. And this kind of fan is just 19dB. So almost nothing. I will use this (the photo is not the right one): No noise, and high capacity to extract heat. I hope to save 5°. Perhaps 8°. Then the Panda will be perfectly cooled at 1,2 GHz, for any use. The problem with higher frequencies is that the current smartreflex driver does not throttle speed when the chip is too hot, as it does under Linux. Under extreme conditions, the same application could also lower the frequency to 1 GHz or less, as with non cooled system and closed box, even 1,2 GHz can be sometimes too much. |
Chris Johnson (125) 825 posts |
So CPUClock should keep an eye on the CPU temperature and if it rises too much, should drop the ‘fast’ speed to the next lower setting. It is certainly possible, but I am not too familiar with temperature monitoring of the cpu. Do you not need different code depending on the hardware type and issue? |
Chris Johnson (125) 825 posts |
Have just been looking at the CPUTempMon code. One quick workaround might be for CPUTmpMon to send a wimp message to CPUClock with the current cpu temperature each time the iconbar display is updated. CPUClock could then decide whether to drop the fast speed if T is getting a bit high. I assume the authors of CPUTmpMon would not mind too much me hacking their code 8) I do have an officially allocated block of wimp message numbers so could use one of those for a ‘misc op’. |
David Feugey (2125) 2709 posts |
Yep. The two problems I see are: first, if not in a module, nothing will be checked if no poll (and so temp will continue to raise). Second, we would need code to set up not only from 1.5 to 1.2, but to others frequencies too. I remember some apps that can fix the min and max frequency quite easily. That would help for Pandaboard non ES (as the SmartReflex driver only give you choice for 1.2 GHz, but not 1 GHz, as it should be, so you have the choice between non SmartReflex at 800 MHz, and SmartReflex with a very strong overclock). https://groups.google.com/forum/#!msg/beagleboard/45qjCtKWYHk/zfSQDnEqCI0J To have a Configure plug-in for this (min-max & overheating protection) would be great. A tool (desktop or window) that prints data would be cool too. Nota: undercloking could be great. For example, my server could run at 200-800 (it’s a Pandaboard), and my workstations at 350-1500, with a lot of intermediate options, to always get the fastest – but safe – frequency (1400 to 600 by step of 200?). |
Chris Johnson (125) 825 posts |
Yes. I was going to point that out. Both CPUClock and CPUTmpMon are wimp tasks, so require polling to be occurring. To do this also when single tasking or outside the desktop would require code at a much lower level in the OS.
CPUClock already does this manually. It would be simple to clock down in steps as necessary, and with hysteresis built in to the temperature limits, to clock back up again.
I have already produced a CPUClock configure plugin, which allows the fast and slow speeds to be set at boot, but of course a configure plugin is not really for real time automatic changes. I might knock something up later this weekend and have a play on my PandaRO. |
David Feugey (2125) 2709 posts |
Yep, It seems that the idea would be to have 3 components. 1 module that sets, reads & controls speed. Don’t count on my for writing a module :) Technically, this tool could be used for Beagle, Panda, IGEPv5 and Raspberry Pi, even if there is not yet smartreflex drivers for some of these motherboards. Just for information, Linux uses temp throttling on Panda, to cure the ‘crashing bug’ of this board. But not all the distributions use the same settings. Ubuntu stay cold, but works at very low frequency most of the time. Of course, most users don’t know that the board is underclocked. We have room here to exploit more of the power of this board. |
David Feugey (2125) 2709 posts |
And Chris Hall will not kill his second Panda :) Because, yes, even at 1.2GHz, you can sometimes hit the 85° limit (of course, not with a big heat sink, and never with a fan). 75° should do the job. But to stay below 75°, you cannot use a ‘heatsinkless’ Pandaboard in a closed box. Mine goes to around 81° with a small heat sink… at 1.2GHz. Chris removed the 1.5GHz Pandaboard from the benchmarks because it’s risky. I would add that every ‘heatsinkless+box’ configuration is very risky for a Panda. Beware! |
Jon Abbott (1421) 2651 posts |
1.2GHz, you can sometimes hit the 85° limit (of course, not with a big heat sink, and never with a fan). The ARM hits 85° – sounds like TI have pushed it way beyond it’s thermal limit and >1GHz isn’t really a safe operating frequency when the CPU is at full load. If you need to run it at that speed, there’s the option of a pelier cooler if you have that kind of thermal window. You’d need to ensure some sort of airflow though to take the heat out of the case, which sounds like it may be a large part of the problem. I’m intrigued now, what does the case look like, is there some photos online anywhere? From a quick Google, it would appear this is a very common issue with the Pandaboard. This site shows some detail around what max temps it hits at various clock speeds, if it’s any use for working out the throttling level. As a comparison, my sons gaming rig only hits 60° max when its being hammered in 3D gaming for hours. Its an Intel i7 Quad core, overclocked to 5GHz with an nVidia GTX980 in a closed water loop which goes CPU→GPU→Rad, the radiator being passively cooled simply by convection, so no fans anywhere. Before the closed loop the GPU was hitting 90°+ and the CPU 80°+ If you’re just serving stuff, have you considered switching to something else? For the JASPP forum, I opted for a Pi with SSD attached as it uses next to no power and generated no heat. It sounds like the Pandaboard is designed for grunt work and possibly not suited to being an everyday machine – not without serious cooling at any rate. If you need help with a Module, I’m happy to help out. Looks like Chris is on the case though and probably has a workable software solution. |
Chris Johnson (125) 825 posts |
I am interested about these temperatures that are being quoted. My PandaRO when idling (CPU at 350 MHz) is currently at about 49 deg C (as alledged by CPUTmpMon). I have just used my app ConvImgs to batch process a directory of DSLR images, including scaling, sharpening etc. CPUClock showed the processor speed constant at 1.2 GHz. During the 5 mins or so of processing, the CPU temperature hovered around 57.5 deg C. I have not seen it go much above 65 deg even in summer (admittedly you don’t get many heatwaves here in Edinburgh) while doing extensive processing. I guess I should open up the PandaRO and see what the ventilation is in the miniATX case. It does have a fan on one side of the case, which is giving a gentle breeze at the moment. I did have a quick go at CPUTmpMon earlier. It is sending messages to CPUClock with temperature values, but I haven’t done anything to CPUClock itself yet to deal with these messages. That is something to do tomorrow. |
Jon Abbott (1421) 2651 posts |
Same here, how an ARM produces so much heat is beyond me – its a far cry from ARM3 that can run off current leakage and not even need powering! Looking at the OMAP4460 Data Manual p122, the ARM core is rated at 2300mA max @ 1.5Ghz, however the sound and OMAP core push that to 4500mA! Shutting the GPU and audio off (if it’s possible) may drop the heat substantially depending on how they’re implemented. I suspect those figures are when it’s decoding 1080p video, but its hard to tell without actual testing. On p128 the thermal limit is defined as 85° as already stated above. This will be a burst limit, not continual operation, so a realistic continual figure would be 10-20% lower than that. ie You want to substantially throttle the CPU if it hits 75° and target around 65° on each poll. If I’m honest, it sounds like a really bad design thermal wise. I’m not sure of the processor packaging but if it’s not ceramic they’ve cheapskated with that kind of poor thermal efficiency ratio – it’s basically converting most of the power into heat so can’t have a very good gate design. I had to chuckle at the description on the OMAP4 Processor page: At the heart of the OMAP 4 platform is a powerful system-on-chip that includes the perfect balance of power efficiency and high performance Not so much of the power efficiency I’d say. |
David Feugey (2125) 2709 posts |
Thermal limit IS 85°.
http://www.axiris.eu/en/index.php/enclosures/case-for-pandaboard-es
No need. At 1 GHz, temp is 50° max.
IMHO, best bench is compressing a very big directory with SparkFS. Processing time and high I/O push the Panda to its limits. I make mine for around 40 minutes. Temp was OK for about 20 minutes.
That explains all :)
I came to the same conclusion: 75° will be my limit. Than I’ll let drivers do the job to do the best with my config. And if I need more speed, I’ll simply add a small fan. But I dont think I’ll need to. With a good heeat sink, temp will always be < to 75° at 1.2GHz and it raises slowly, so 1.5GHz will be possible for several minutes. After my big test at 1.5GHz, temps goes back to 68° in less than 30 seconds (et 350MHz). So basically, speed can be 1.5GHz at full load for around 10 min, then you need to slow down, but not for a very long time.
Nothings magic. Power means power. And as ARM are small chips (here with memory stacks on it), they are difficult to cool.
Yes it is. The same with Omap3 and Omap5. Impossible to cool at high frequencies. Each time developers have problems, then everything works suddenly (when the Linux kernel integrates some throttle). |
Jon Abbott (1421) 2651 posts |
http://www.axiris.eu/en/index.php/enclosures/case-for-pandaboard-es I can see the issue, it doesn’t look like there’s any directed airflow in the case, from the photo it would appear that air is coming in through the gaps around the ports, which isn’t ideal with the thermal load the board is producing in an isolated area. If there were a channelled flow from the side of the case to the CPU and a funnel up to the fan hole so the hot air doesn’t enter the case, I’d expect convection alone may well cool the CPU sufficiently. 1.5Ghz should be easily achievable with the addition of low spin rate fan. I’d be tempted to try a Blue Peter approach with a cereal box to form the ducting and some tape to hold it in shape – it’s worked for me in the past. You’d have to cut a hole in the side to get ambient air flow in though. EDIT: Out of curiosity, I’ve just Googled Pandaboard cases to see what’s available. I couldn’t see one that I’d consider suitable for the thermal window involved, so there’s a gap in the market there. The irony is, there’s lots of threads about locking and overheating, so it’s a well known issue begging for a simple solution in the case design. |
David Feugey (2125) 2709 posts |
Not around. See below and on top: there are holes. So it’s OK (I can fell the air flowing). The problem is size (and acrylic material).
The Tigal case is cool too, but would need some room for a fan. |
Chris Johnson (125) 825 posts |
Just to say I had the CPUTmpMon and CPUClock combination working together last night, and the speed throttling to keep the temp down seemed to be doing its job. My main problem was actually getting the processor to heat up! The PandaRO when idling was at around the 45C mark, and when it was working hard (or as hard as I could make it go – it is not overclocked or anything) the temperature only rose to around 52C. I need to add a proper user interface to set the trigger temperatures etc but it should then be ready for some brave users to test. I think ‘WPB’, the original author of CPUTmpMon, visits here occasionally. I hope he has no issue with me doing a modified version. |
Jon Abbott (1421) 2651 posts |
If ADFFS runs on the Pandaboard, running something like Zarch unrestricted will cook it, Zarch can generate 1.1m Aborts/sec so gives the CPU a real hammering. You can let me know if it’s works on the Panda whilst you’re at it ;) |
David Feugey (2125) 2709 posts |
That’ll not be a problem here :) |