tHog

Hoo

Gentoo Linux
blue metal

Intro

A quiet server and media center.

Linux drivers

CPU temperature monitork10templm_sensors
CPU frequency scalingacpi_cpufreq
Ethernetr8169(linux-firmware)
Graphicsfglrx
SoundIntel HDA, Realtek ALC887

CPU microcode update

Emerge sys-kernel/linux-firmware. Unlike on Intel, the kernel will pick this up by itself from /lib/firmware upon loading the microcode module. (A dedicated package for this is called amd-ucode, but it seems to be outdated; also, it blocks linux-firmware which is also useful for the NIC.)

[2016-02-18] AMD microcode update is no longer available as a module, but the in-kernel version works in the same way, and it is arguably safer. However, the kernel option depends on initrd. This is only needed by Intel microcode updater, but even AMD users must suffer from the extra kernel payload :-j

CPU undervolting

Undervolt works as advertised :) and also has provisions for tweaking the frequencies if you like.

[2015-12-24] TurionPowerControl works more generally for AMD processors, and has more features overall, so I recommend that now.

Compiler note

The GCC optimization architecture for this CPU is "btver1".

Ethernet firmware patch

The NIC works simply with the r8169 kernel module, but there is a complaint in dmesg:

$ dmesg | grep eth0
[   24.138331] r8169 0000:04:00.0 eth0: RTL8168f/8111f at 0xffffc90012408000, 60:a4:4c:b2:96:66, XID 08000800 IRQ 41
[   24.138336] r8169 0000:04:00.0 eth0: jumbo features [frames: 9200 bytes, tx checksumming: ko]
[   79.886832] r8169 0000:04:00.0 eth0: unable to load firmware patch rtl_nic/rtl8168f-1.fw (-2)

Installed sys-kernel/linux-firmware that contains these... but I'm not sure if there is any noticeable benefit.

Open source and OpenCL on Radeon

At the moment (2010-10-31), binary drivers are needed to use OpenCL and many other features of the Evergreen series of GPUs (HD 5xxx). However, AMD is open about the specs, and free drivers are well on their way. Thus buying a Radeon supports an OSS friendly business. Moreover, Radeons are generally faster for integer work, compared to Nvidia cards of similar wattage and GFLOPS.

The binary drivers are available on Gentoo as ati-drivers, and there are instructions available.

For OpenCL, version 2.5 of the AMD APP SDK works well.

[2013-10-02] Removed the last GPU as I have less need for OpenCL. The opensource framework looks much more attractive now, but might take some tweaking. The Gentoo guide might help. I am particularly looking forward to video decoding, as the opensource driver provides a VDPAU interface for the UVD hardware. AMD binary drivers provide VAAPI/XvBA, which has much worse software coverage. Also, overall stability should improve -- the binary setup tends to crash upon closing an OpenGL application.

[2013-10-04] So far, the free driver framework seems to work, after setting up kernel firmware as in the Gentoo guide. However, OpenGL is very slow and VDPAU does not seem to work at all. Hence I stick with the binary drivers for now. For video decoding on fglrx, an interesting option is a library that converts VDPAU into VAAPI. It basically works with MPlayer, but there is some tearing and flicker along with general instability.

Nvidia

[2015-05-31] Since around September 2014, I have only had Nvidia GPUs on this machine, as the Maxwell series turned out incredibly efficient for certain applications. Driver and SDK installation was seamless from Portage, and the system is at least as stable as with AMD. The GTX 750*s are also great for OpenCL, again depending on the application. As a nice bonus, I got flawless video decoding via VDPAU, without even recompiling MPlayer. It really makes a difference on this machine with too little CPU power for a lot of HD material.

[2017-04-22] I got the GTX 960 last year, partly because of its H.265/HEVC decoding capabilities. (Compared to its peers, it is not particularly efficient in general, with the 750s beating it in some ways.) It works fine for 8-bit content, but there is no VDPAU path for 10-bit streams, despite hardware capabilities. On the Nvidia forum, some sources claim a deeper limitation in the whole of VDPAU, while newer AMD cards are reported to work with 10-bit HEVC via VDPAU. In addition, there are players utilizing cuvid/nvdecode rather than VDPAU.

[2017-06-30] mpv with USE="cuda -vdpau" works for 10-bit HEVC videos. It also works for certain H.264 videos that refuse to play on MPlayer, presumably due to switching frame resolution in-flight. These in turn are likely related to the VDPAU driver framework, as a stable MPlayer release developed this issue during other system updates.

CPU heat and cooling

The CPU/APU gets surprisingly hot for a system like this. From the looks of the stock heatsink, and more importantly the entire low-power concept, I expected fanless operation. Alas, the motherboard came with a CPU fan, although it is not installed by default. There are even no screw holes in the heatsink, the idea is to screw between the fins (pun intended). Having run it so far without the CPU fan, some solution is needed; it easily gets up to something like 75°C even with light load, which is not good for the long term. I plan to experiment with case/GPU fans first, and possibly a new heatsink.

Of course, the CPU/APU is quite a bit stronger computationally than a measly Atom, so the comparison to the truly fanless Zotac is not fair. Nevertheless, I feel a slight marketing scam going on here — pictures of sleek fanless systems vs. actual operating needs.

[2013-06-06] Installed the CPU fan, there is no distinct noise beyond the current GPU fan and hard drive. There is presumably some active control by the BIOS, I have not touched the settings.

[2013-06-15] Undervolting works, but the effect is not that big. After all, the case is being heated by discrete GPUs. Nevertheless, the earlier Atom did survive fanless in the same environment..

[2013-10-02] After removing the last discrete GPU, the system needs less cooling overall, but the CPU gets too hot when completely fanless. So now it only uses the Scythe, which is much nicer than the stock CPU fan.

[2013-12-18] A discrete GPU is back in action, but the Scythe is needed to cool the CPU. It now blows directly against the CPU from a distance, with the case open.

WD idle3 issue

As seen before, the WD hard drive has the idiotic 8-sec spindown by default. See old nanite page for more; I used idle3-tools to disable it, as regular spindown timer is enough.

Files

About the name

"Hoo" is an imaginary exclamation with Asian connotations. It may also be the name of that Asian guy who, unbeknownst to you, lives somewhere in your apartment.


Risto A. Paju