Edited on 08-Jun-2008: Guide is now version 1.7 added a 2nd example minimizing the vcores on my system. Before you continue, I wrote this guide with the newbie in mind, so please don't reply criticizing it for being too simplistic -- it's this way by design. Also know that the steps for overclocking apply to all chips: quads, duals, single-cores, or triple-core processors. You can use the basics taught in this guide with any modern machine. I wrote the guide originally using a Q6600/Asus P5B-Deluxe, but recently sold that machine and upgraded to an X3360/DFI LT P35-T2R. I didnt want to change the first half of the guide, so its still based on the Q6600/Asus board. The newly written section about finding a minimum stable CPU and MB vcore section is written based on my actual experience finding stable settings for this newer machine. Again, the steps for overclocking are pretty independent of this subtle change. Finally, I take no responsibility for what you do with the information in this guide. Overclock your hardware at your own risk. Overlocking Basics Before you start, read your motherboard manual. Know how to reset your BIOS in the event that you are too aggressive in your CPU settings and it doesn't complete a POST (Power On Self Test, that beep when you first turn the machine on and it starts up means you passed the POST). Some motherboards reset automatically if you switch off the power supply for 30 seconds or so. Others require you to move a jumper to reset them. The basic formula you need to know for CPU speed is: Code: CPU Speed = CPUM x FSB where CPUM is the CPU Multiplier, and FSB is the front side bus. Example: The Q6600 runs at a factory setting of 2.40 GHz. That's the product of a 9x multiplier and a 266 MHz FSB (quad pumped it's 1066 MHz but we're not quad pumping these numbers). So CPU Speed = 9 x 266 which is 2,394 MHz or 2.40 GHz. Below is a list of Intel chips. Most of them, including the Q6600, have a "locked" multiplier meaning it can't go above a certain value (9x in this case). The only way to increase the CPU speed beyond the stock value is by raising the FSB. Other "Extreme" chips like the QX9650 or X6850 have unlocked" multipliers; you can raise their multipliers above the stock value. These chips are denoted from the standard stock by the letter X in their model number. For reference, here are all Intel offerings as of May/08: My first quad system was based on a Q6600 at 9x333=3.00 GHz (25 % over factory). I found the max it can go when cooled with air is 9x370=3.33 GHz (39 % over factory), but it just ran too hot for me. Every chip is different... you might be an unlucky owner of a chip that just doesnt overclock very high at all. Overclocking is more complicated than just adjusting two settings in the BIOS, because as you increase the FSB, you'll also need to increase the core voltage (vcore) which is the actual juice going to the processor. As well, you may have to increase the other voltages on the board like: memory, FSB, NB, SB, ICH chipset. There are also parameters controlling your memory that may need tweaking as well. Don't worry about them for now. The board can manage these automatically which is what you should do initially. When you finally decide on an overclock number, you'll want to go back and minimize your voltages to minimize your heat production. We'll get into this later. For now, you want to verify you can successfully POST, and verify that your system can run stable at the settings you've selected. Pre-Overclocking Checklist Before you think about overclocking your system, you'll need to be sure you're using quality parts that can handle the increased stresses. 1. Motherboard I decided not to maintain a list of motherboards that are known to be good overclockers; keeping the list updated would be too time consuming. I only mention this because if youre using some generic MB you got free with the purchase of your CPU, youre probably not going to be able to overclock it. 2. Cooling Cooling is very important since you're asking the system to produce more heat than it's designed to produce. A quad core chip will produce twice the heat of a dual core chip, so if you're using the Intel Stock HSF, you'll probably want to upgrade to something better. Again, I dont wanna maintain a list. I can tell you that I am using a Thermalright Ultra-120 Extreme and am very happy with it. Here is a more recent list of HSs that have actually been reviewed and ranked based on performance. Finally, there is a section at the end of the guide entitled, Temperature Management which I would strongly suggest you at least have a look at since it contains some good info. For example, for under $5 you can probably shave off ~10-15 % of your NB (North Bridge) load temps simply by adding a small fan to the heatsink even if it was never designed to have one (attach it with a zip tie): 3. Memory You will need memory that can keep up with your overclocked system. Again, Im not going to keep a list. Youll see RAM listed with timings and speeds that Ill decode for you using the following examples: The first part is self-explanatory (DDR2 memory). The number after it is the data transfer rate. Simply divide it by 2 to get the maximum FSB speed for which the module is rated. Example: 800/2 = 400 MHz. Therefore, DDR2-800 can work on systems with a FSB of up to 400 MHz (anything more and youre lucky). The PC2-XXXX is designation denoting theoretical bandwidth in MB/s. Some memory manufactures use this instead of the DDR2-xxx designation. You can calculate it for any FSB you want by simply taking the FSB and multiplying by 16 (rounded in some cases). Example using a 400 MHz FSB: 400x16=6400. So youd need at least PC2-6400 to run on a FSB of 400 MHz. The numbers after that are the main timings (clock cycles). In general, the lower these numbers are, the faster the memory. For more on memory timings, see this page. The first part is self-explanatory (DDR3 memory). The number after it is the data transfer rate. Simply divide it by 4 to get the maximum FSB speed for which the module is rated. Example: 1600/4 = 400 MHz. Therefore, DDR3-1600 can work on systems with a FSB of up to 400 MHz (anything more and youre lucky). The PC3-XXXXX is designation denoting theoretical bandwidth in MB/s. Some memory manufactures use this instead of the DDR3-xxxx designation. You can calculate it for any FSB you want by simply taking the FSB and multiplying by 32 (rounded in some cases). Example using a 400 MHz FSB: 400x32=12800. So youd need at least PC3-12800 to run on FSB of 400 MHz. 4. Power Supply There are really two major factors to consider when selecting a power supply: 1) Quality of the PSU 2) Power output I dont have the expertise to write up this selection of the guide, so Ill point you to this nice list written by perkam to use as a guide. More recently, TH.com wrote another article you can check out on the topic. There is a great article on power consumption over at TH.com that I suggest you read at your leisure. I distilled out some highlights to underscore how much power systems really use: Code: Component Best Case Worst Case Power Supply 5-15 W 40-60 W Motherboard 10-15 W 30-50 W Processor 12-30 W 60-120 W RAM 5-15 W 30-50 W HDD 3-5 W (2.5") 10-15 W (3.5") GFX Card 3-10 W (on MB) 25-180 W (PCI Express) Total 38-90 W 195-475 W So you can see that depending on the hardware specs, your system power requirements can approach 500 W. There are also a number of good online power supply calculators you can use. Find them with google as always. Here is one such example. 5. Required Software Here are few utilities you'll need to continue, all are freeware. General System Info CPU-Z is a great app to display your current settings including vcore, FSB, multiplier, RAM settings, etc. This one is a must-have. CPU Stress Testing Prime 95 v25.6 is a great app for stress testing. It is very efficient at generating CPU loads equally across all your cores. There are few other apps that will stress a system as a hard as p95. Alternatively, if youre using a 64-bit o/s you can download the 64-bit version of prime95 v25.6. I like to use version 25.x over the current production version 24.x because it [version 25.x] automatically stresses all your cores without having to load up two different instances of the app like you had to do with orthos. System Monitoring There are several options for processor core temp and system temp monitoring. For a discussion of what is different between the apps I am about to list, see this thread. PLEASE READ THAT THREAD BEFORE ASKING QUESTIONS ABOUT WHY SOME OF THESE READ DIFFERENT TEMPS! These first two will give you just the core temperatures (not system temps, voltages, etc.): Core Temp (freeware) Real Temp (freeware) The next three will give you core temps plus many other temps, voltages, fan RPMs, etc.: HWMonitor (freeware) Speedfan (freeware) Everest Ultimate (shareware $$$) Memory Testing (optional but can help rule-out bad memory) Memtest86+ is a great piece of software that will test your memory. Download the bootable ISO and allow it to test your system for 6-24 h. I ran it on my machine for a little over 6h 17m with no errors: Note that you cant just run the memory tests without first setting up your memory in your BIOS even though they might be auto configured. This usually entails the user to specify the timings, voltage, and fsb:dram divider prior to running the tests since the memory might be stable at one given set of conditions (maybe 5-5-5-15 @ 667 MHz is stable), not unstable under another (maybe 5-5-5-15 @ 1066 MHz gives errors, but you only tested the 667 MHz level)! Do NOT trust the temperatures that your motherboard's free temp utility reads. "PC Probe 2" that comes with Asus boards really sucks because it's not measuring your core temps. They are what you really care about. There are other temp monitoring programs out there. These are what I recommend.... I'll only mention one other by name with the advice that you do NOT use it: TAT (thermal analysis tool). It's made by Intel and I don't care what anyone else out there thinks: it was NOT designed to read the coretemps of a C2D/C2Q chip. It was written for Pentium M chips. Yes, it will display temps, and yes, sometimes they match up with the values Coretemp/HwMonitor display, but I have found that TAT often reports temps higher than the real values. How do I know this? Read this thread and pay attention to uncleweb's instructions to use crystalcpuid to directly read your DTS (digital temperature sensor) and calculate your core temp yourself if you don't believe me. BIOS Settings Let's look for some settings in your BIOS. Not all boards are the same. The following terms/pics are taken from my old P5B-Deluxe; other manufactures will likely have their own names for these settings. You're on your own to figure them out (shouldn't be that tough). It goes without saying that your board will have these organized differently as well. Lemme apologize upfront for the poor quality images below. I have no idea how to effectively photograph a computer monitor. I just used a cheap p&s camera with the lights off. You can still read them. First thing you want to do is change a few settings, I'll take them in order as they appear in the BIOS: Modify Ratio Support - disabled, but you can if you want to select a different multiplier. For the Q6600, 9x is the highest as I said. If you enable this, you can select a lower one if you want, some people think a lower multiplier and a higher FSB is better. For example: 9x333 = 3.01 GHz and so does 8x375. In my experience, doing this can lead to faster synthetic benchmark scores, but most real-world applications usually don't go appreciably faster. C1E Intels so-called enhanced halt state. Read Anandtechs blurb about it here for more. Disable initially, enable later on and see if the system remains stable. This is a power savings option. Max CPUID value limit disable unless youre running an older O/S like Windows NT. Vanderpool disable unless youre running VMWare or virtualPC; this option enables additional extensions within the processor that yields added acceleration when running multiple O/Ss on the same machine through virtual machines. CPU TM function enable. Option affects CPU protection/throttle management to help you when you dont realize youre pushing your chip too hard. Execute Disable Bit - enable. XP has a setting to help with virus protection and requires this set to enable. PECI This stands for Platform Environment Control Interface - disable or enable. This affects how your DTS (Digital Thermal Sensors) report the core temps of your CPU. I have mine enabled and have read several posts now that suggest having it enabled does indeed give more accurate core temps. I cant say if you want it on or off in your system. According the Asus P5B-Deluxe FAQ, this setting toggles between two temp modes. Note: if youre using a real core temperature monitoring application such as coretemp (mentioned and linked above), this setting has no effect that I can see. SpeedStep - Automatically lowers the multiplier from its max. (9x for the Q6600) to 6x when the machine is idle. The result is less power consumption and heat production. It goes back up to 9x when you start to get a CPU load. Disable initially, enable later on and see if the system remains stable. This is a power savings option. Why do you care about power savings? Increased power consumption translates into increased heat production. As well, power costs money and unless generated from a nuclear power plant, creates carbon dioxide gas. Its true that energy savings will only matter when the machine is idle, but odds are your machine will spend most of its time at idle unless your run an app like fold@home or seti@home etc. Lets assume for the sake of discussion that enabling these saves you 10 cents / day. A few pennies per day will add up over time. Using the dime-per-day as an example for a machine running every day is roughly a savings of $35 per year not too shabby. Tomshardware.com's power savings article reported a savings of 12 full watts by enabling speedstep on their test system. Second thing you'll want to do is dial in the manufactures specs for your specific memory. Also take care not to exceed the design specs for your memory initially. We want to minimize the number of variables to deal with on a first time overclocking. In other words, if your machine isn't stable, you want to be sure it's due to the CPU settings, NOT the memory timings. Where can you get the manufactures specs? Try their website or the product packaging. Enter in the first four timings (4-4-4-12 in my case) and dont mess with the default or auto values for the sub timings at this time. You can do that after you get a stable overclock. The only other setting worth mentioning here is the so-called memory remap feature. If you are running with more then 3 gigs of memory, and you want to actually have the BIOS/OS see it, youll need to enable this. Also enable this if youre running a 64-bit operating system. Next, find the section where you can control the nuts and bolts of your system. On my P5B-Del I had to switch the AI tuning to "manual" mode to see these options: CPU Frequency - This is the FSB in MHz. Set it to whatever youre planning to multiply by 9x (333 in my case). DRAM Frequency - This the speed your RAM will run. Make sure you dont exceed the amount for which your specific RAM is rated. Most good boards will offer several fsb:dram dividers. Some common ones are listed below. Assuming that youre using a 333 MHz FSB the ratios are: Code: FSB : DRAM 1:1 = 333 MHz : 667 MHz 4:5 = 333 MHz : 833 MHz 2:3 = 333 MHz : 1,000 MHz 5:8 = 333 MHz : 1,066 MHz 3:5 = 333 MHz : 1,111 MHz 1:2 = 333 MHz : 1,333 MHz Now, if youre running @ a 400 MHz FSB, the ratios become: Code: FSB : DRAM 1:1 = 400 MHz : 800 MHz 4:5 = 400 MHz : 1,000 MHz 2:3 = 400 MHz : 1,200 MHz 5:8 = 400 MHz : 1,280 MHz 3:5 = 400 MHz : 1,333 MHz 1:2 = 400 MHz : 1,600 MHz You can calculate these yourself with this formula: Code: DRAM Final Clockrate = (2 x FSB)/Divider Example, 2/3 divider @ 400 MHz FSB: (2 x 400 MHz)/(2/3) = 1,200 MHz Running in 1:1 mode is termed, synchronous mode. If you use a higher frequency, youre running is so-called asynchronous mode which offers marginal speed advantages at the price of more heat and power consumption on a C2D/C2D Quad-based system for most users. Depending on your chipset, running in an asynchronous mode may require more vcores to some of your motherboard components such as the NB, IHC, and/or FSB Termination (more on these later).