From owner-freebsd-acpi@FreeBSD.ORG Sun Jun 15 04:44:08 2014 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9A420564; Sun, 15 Jun 2014 04:44:08 +0000 (UTC) Received: from sola.nimnet.asn.au (paqi.nimnet.asn.au [115.70.110.159]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DB3492F94; Sun, 15 Jun 2014 04:44:07 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by sola.nimnet.asn.au (8.14.2/8.14.2) with ESMTP id s5F4hu84051146; Sun, 15 Jun 2014 14:43:56 +1000 (EST) (envelope-from smithi@nimnet.asn.au) Date: Sun, 15 Jun 2014 14:43:56 +1000 (EST) From: Ian Smith To: sbruno@freebsd.org Subject: Re: Missing: hw.acpi.thermal.tz%d._HOT In-Reply-To: <1402769262.1120.5.camel@bruno> Message-ID: <20140615133533.A609@sola.nimnet.asn.au> References: <1402412054.2426.13.camel@canpc36.cacs.louisiana.edu> <20140611011810.V10629@sola.nimnet.asn.au> <1402414819.17836.2.camel@canpc36.cacs.louisiana.edu> <20140614013631.J10629@sola.nimnet.asn.au> <1402769262.1120.5.camel@bruno> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: "freebsd-acpi@freebsd.org" , Eric Neblock X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Jun 2014 04:44:08 -0000 On Sat, 14 Jun 2014 11:07:41 -0700, Sean Bruno wrote: > > Just for curious minds: > > > > Afternoon and evenings bring direct sunlight to where the machine is. > > And I guess that is showing? probably? > > # sysctl dev.cpu | grep temp > > dev.cpu.0.temperature: 16.8C > > dev.cpu.1.temperature: 16.8C > > dev.cpu.2.temperature: 16.8C > > dev.cpu.3.temperature: 16.8C > > dev.cpu.4.temperature: 16.8C > > dev.cpu.5.temperature: 16.8C > > dev.cpu.6.temperature: 16.8C > > dev.cpu.7.temperature: 16.8C > > > I have an FX-8150 based system similar, but a bit older that this one: > Base Board Information > Manufacturer: ASUSTeK Computer INC. > Product Name: M5A88-M > > Processor Information > Socket Designation: AM3R2 > Type: Central Processor > Family: FX > Manufacturer: AMD > ID: 12 0F 60 00 FF FB 8B 17 > Version: AMD FX(tm)-8150 Eight-Core Processor Which family, model, stepping is that? > At idle, the machine reports pretty low temps: > dev.amdtemp.0.%desc: AMD CPU On-Die Thermal Sensors > dev.amdtemp.0.%driver: amdtemp > dev.amdtemp.0.%parent: hostb4 > dev.amdtemp.0.sensor_offset: 0 > dev.amdtemp.0.core0.sensor0: 16.2C Is it water-cooled? Roughly, what's the ambient temperature where it lives? Short of forced water cooling, with the watertank feeling cool to the touch, I can't see how any electronic equipment can run anything like that cool. If you touch the heatsink, is it cooler than ambient? > But when doing builds with all the cpus firing: > dev.amdtemp.0.core0.sensor0: 49.5C > ... > dev.amdtemp.0.core0.sensor0: 52.3C > ... > dev.cpu.0.temperature: 53.0C > > > Seems legit to me. I don't think so. Maybe becaus we use Centigrade here. 16C is ~62F, I'd have a wooly jumper on. 50C ~= 120F, we get days that hot outback. There's mention in amdtemp.c of some models having a -28C offset: #define AMDTEMP_FLAG_ALT_OFFSET 0x04 /* CurTmp starts at -28C. */ and later: 535 mask = (sc->sc_flags & AMDTEMP_FLAG_CT_10BIT) != 0 ? 0x3ff : 0x3fc; 536 offset = (sc->sc_flags & AMDTEMP_FLAG_ALT_OFFSET) != 0 ? 28 : 49; 537 temp = pci_read_config(dev, AMDTEMP_THERMTP_STAT, 4); 538 temp = ((temp >> 14) & mask) * 5 / 2; 539 temp += AMDTEMP_ZERO_C_TO_K + (sc->sc_offset - offset) * 10; I'm not claiming to follow that through the masking, shift and factor, and it's returned in Kelvin anyway, but there's clearly a 21 $something difference in offset for some models, and see the XXX comments there. 16C + 21C = 37C, which is believable at idle. 53C + 21C = 74C, which is quite believable for 8 busy cores, assuming a good h/s & fan. You can leave your finger, for a good while anyway, on a heatsink at 53C. 74C will burn you quite quickly; here anyway, most home hot water systems are set to deliver between 60 and 70C, which will scald before long. Touch test? cheers, Ian