From owner-freebsd-acpi@FreeBSD.ORG Mon Sep 20 15:50:04 2010 Return-Path: Delivered-To: freebsd-acpi@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 64DEE106566B for ; Mon, 20 Sep 2010 15:50:04 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 542448FC0A for ; Mon, 20 Sep 2010 15:50:04 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id o8KFo44d007276 for ; Mon, 20 Sep 2010 15:50:04 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id o8KFo4AV007275; Mon, 20 Sep 2010 15:50:04 GMT (envelope-from gnats) Date: Mon, 20 Sep 2010 15:50:04 GMT Message-Id: <201009201550.o8KFo4AV007275@freefall.freebsd.org> To: freebsd-acpi@FreeBSD.org From: Alexander Motin Cc: Subject: Re: i386/135447: [i386] [request] Intel Core i7 and Nehalem-EP new features not supported X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alexander Motin List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Sep 2010 15:50:04 -0000 The following reply was made to PR i386/135447; it has been noted by GNATS. From: Alexander Motin To: Andriy Gapon Cc: Dmitry Kubov , jh@freebsd.org, bug-followup@freebsd.org Subject: Re: i386/135447: [i386] [request] Intel Core i7 and Nehalem-EP new features not supported Date: Mon, 20 Sep 2010 18:42:57 +0300 Andriy Gapon wrote: > on 20/09/2010 17:54 Dmitry Kubov said the following: >> dev.cpu.7.cx_supported: C1/3 C2/205 C3/245 > Note these------------------------^^^----^^^ >> dev.cpu.7.cx_lowest: C3 >> dev.cpu.7.cx_usage: 100.00% 0.00% 0.00% last 500us > And this --------------------------------------^^^^^ >> C2/C3 not used at all > > 205 * 3 and 245 * 3 are both greater than 500, so this is the reason why they are > never entered. The only way to enter C-states with so high latency is significantly increase CPUs' continuous sleep time. Sleep time of 500ms there is artificial and calculated as 1000000/(2*hz). 8.1 was unable yet to measure real sleep time in C1. But 2*hz is quite realistic estimation for idle system. Recently I have committed to 9-CURRENT large set of patches, making idle CPUs to not wake up on timer interrupts when it is not needed. It allows idle CPUs sleep up to as much as 100000us, making any C-states available now effectively usable. I can acknowledge that TurboBoost on my Core i7 870 gives about 10% benefit when only one physical core is used: http://docs.freebsd.org/cgi/mid.cgi?4C959830.3060808 I have requests and wish to merge these changes into 8-STABLE, but most likely it won't happen in nearest few months, as code is very new and requires more testing. Until that time I recommend you to follow this guide: http://wiki.freebsd.org/TuningPowerConsumption It was actually oriented on laptops, but effective usage of C2/C3 states was one of it's goals. Also on my Core i7 870 LAPIC dies in C2/C3 states, so consider migration to i8254 timer, as also described in this guide. -- Alexander Motin