Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Aug 2002 10:35:07 -0400 (EDT)
From:      Kenneth Culver <culverk@yumyumyum.org>
To:        Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.ORG>
Cc:        freebsd-hackers@FreeBSD.ORG, Michael Nottebrock <michaelnottebrock@gmx.net>, Terry Lambert <tlambert2@mindspring.com>, Gary Jennejohn <garyj@jennejohn.org>, Aaron Seelyes <aseelye@urx.com>
Subject:   Re: Cooling idle Athlon/Duron processors? (vcool)
Message-ID:  <20020807103400.H4711-100000@alpha.yumyumyum.org>
In-Reply-To: <20020807050725.96740.qmail@exxodus.fedaykin.here>

next in thread | previous in thread | raw e-mail | index | archive | help
> 	I know that this surfaces every once in a while. However,
> I thought I could try to add more information. I did a little digging
> on the issue.
> 	This is related to the following thread:
>
> Subject: AMD low power hacks
>
> http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=utf-8&threadm=ai6g47%242aat%241%40FreeBSD.csie.NCTU.edu.tw&rnum=1&prev=/groups%3Fq%3Dfreebsd%2Bpciconf%2Bvcool%26hl%3Den%26lr%3D%26ie%3DUTF-8%26oe%3Dutf-8%26selm%3Dai6g47%25242aat%25241%2540FreeBSD.csie.NCTU.edu.tw%26rnum%3D1
>
> 	Well, I have been using this nice utility VCool under Windows
> for quite some time. It has been able to decrease my CPU temperatures
> from 60C to <50C. So, it's more than 10C decrease.

Just a note, if your athlon is running this hot, you have other problems.
Get a better heatsink/fan combo and put some silver based thermal compound
between the cpu and the heatsink. I'm running an Athlon XP 2000+ that
never goes over 100F, even when under a full 100% cpu load.

Ken

>
> 	VCool is available at http://vcool.occludo.net/. There is even
> a Linux version there at http://vcool.occludo.net/VC_Linux.html. Of course,
> the Linux version does not have all the features of the Windows version
> but the main feature which is temperature decrease exists.
>
> 	Here goes a little summary of what I could understand of
> both how and why VCool works:
>
> -------------- (Begin - From VCool homepage)
>
> 	- Requirements:
>
> 	Chipset with a VT8371, VT82C691/693A/694 or VT8363 Northbridge
> and a VT82C686x Southbridge (VIA KT133x or KX133) - limited support
> for AMD 761
>
> -------
>
> 	- How it works:
>
> 	The Athlon (or Duron) enters a lower power state only when
> its system bus is disconnected. However the (VIA-)Northbridge will
> only disconnect the bus if its "Bus Disconnect Enable" bit is set
> and the CPU is in STPGNT state.  VCool allows you to enable this
> bit so your CPU can relax when there's nothing to do.
>
> 	Setting this bit might not be enough on some systems as the
> idle loop provided with the OS will not put the CPU into
> the STPGNT state recognized by the Northbridge.  For those
> cases VCool includes an internal idle loop that forces the
> CPU into the STPGNT mode required by the Northbridge to
> initiate a bus disconnect.
>
> -------
>
> 	- I see no cooling effect: (this is important for those
> 	testing the idea or questioning why this would work better
> 	than any ACPI support we already have)
>
> 	1) Make sure your system is idle when VCool is not running:
> Software coolers will have no effect on busy systems. Use the task
> manager (W2K) or Wintop (W98) to see if there are any threads eating
> up time (e.g. SETI@home).
>
> 	2) Start VCool and set the NB Cool Bit but deactivate the
> loop. Check again that your system is still idle.
>
> 	3) Still no temperature drop? Then enable the idle loop.
> When you check utilization you should see that VCool eats up most
> of the CPU time now.
>
> 	On newer systems the Halt Detect PCI option is often required to
> achieve cooling. You can configure VCool to use this option instead
> of the cool bit or even both.
>
> NOTE: In some cases the idle loop might actually increase the
> temperature with Halt Detect enabled, so try try deactivating the
> loop.  If you still don't see any cooling effect, VCool doesn't
> work on your system.
>
> -------------- (End - From VCool homepage)
>
> 	A Linux version of VCool can be found at
> http://vcool.occludo.net/VC_Linux.html . This version neither
> supports AMD761 correctly NOR has Halt Detect PCI option.
>
> 	Here is a summary of how the Linux version works. Detailed information
> on how it all should work can be found in
> http://vcool.occludo.net/VC_Theory.html
>
> 	1) Check if CPU is either Atlhon or Duron AMD. Proceed if
> 	it is. Otherwise, stop;
>
> 	2) Detect NorthBridge chipset
>
> 		2.1) Set VIA=0, if it's neither 0x03051106,
> 		0x03911106 nor 0x06861106 (Gigabyte GA-7DXR ->
> 		AMD761+VIA686);
>
> 		2.2) Otherwise, VIA=1;
>
> 	3) If (VIA==1)
>
> 		3.1) Detect SouthBridge
> 			3.1.1) If chipset is neither 0x30571106 nor
> 			0x30571106, set VIA=0;
>
> 	4) If (VIA==0)
>
> 		4.1) Look all the possible addresses where either
> 		NorthBridge and SouthBridge could be;
> 			4.1.1) If chip is either 0x03051106 or 0x03911106,
> 				found VIA NorthBridge;
> 			4.1.2) If chip is 0x30571106, found VIA SouthBridge;
> 		4.2) If found both NorthBridge and SouthBridge
> 		chips, proceed. Otherwise, stop;
>
> 	5) SouthBridge, enable ACPI and find I/O-Space;
>
> 	6) NorthBridge, enable "Bus Disconnect when STPGNT detected"
> 	bit;
>
> 	7) Enter idle loop.
>
>
> 	Well, as you can notice, the AMD761 NorthBridge chipset is
> not supported since (4.2) will obviously never detect both NorthBridge
> and SouthBridge VIA chips. Also, there is no support for "Halt
> Detect PCI" option. Furthermore, since some systems cool better
> WITHOUT the idle loop as noted in the information from VCool homepage,
> this design is not optimal.
>
> 	Well, what we need to fix... Wishlist:
>
> 	1) AMD761 NorthBridge has specific support to disconnect
> 	the bus when entering either HLT or GRANT/STOP states
>
> 		1.1) According to "AMD-761 System Controller
> 		Software/BIOS Design Guide" page 62
> 		http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/24081.pdf
>
> 		"BIU0 Status/Control (Dev0:F0:0x60) Bit 18 controls this"
>
> 		"Bit 18 - Halt_Discon_En - Halt Disconnect Enable
> 		0 = No AMD Athlon system bus disconnect is performed following HALT
> 		1 = AMD Athlon system bus disconnects after receiving a HALT special cycle."
>
>
> 		"Bit 17 - Stp_Grant_ Discon_En - Stop Grant Disconnect Enable
> 		0 = No AMD Athlon processor system bus disconnect is performed following STOP/GRANT.
> 		1 = AMD Athlon processor system bus disconnects after receiving a STOP/GRANT special"
>
> 		We need to set bits both 17 and 18 to 1. Then proceed
> 		to SouthBridge as usual.
>
> 	2) Add "Halt Detect PCI" option
>
> 		Have no idea about this. Anyone? Actually, what does this option mean?
>
> 	3) Optional idle loop
>
> 		Just add a command line option to either idle or not
>
> 	4) Add option to either enable or disable the "cool" bit
> 	since it is possible that this bit might have adverse effects
> 	on system behavior. Good for testing
>
>
> 	Anyone up for this? I think this is a nice addition for AMD processor
> owners.
>
> 	Regards,
>
> * Related information:
>
> - AMD-761 System Controller Revision Guide
> - talks about problems with ACPI modes, HLT, STOP, GRANT
> http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/23613.pdf
>
> --
> Mario S F Ferreira - DF - Brazil - "I guess this is a signature."
> Computer Science Undergraduate | FreeBSD Committer | CS Developer
> flames to beloved devnull@someotherworldbeloworabove.org
> feature, n: a documented bug | bug, n: an undocumented feature
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020807103400.H4711-100000>