specifying a PC
this is a subjective thing - you should ask yourself some questions based on your needs (catalog them, both future and present, and maybe even look at the past if need be).
usually people need a machine that meets or exceeds their needs than something to impress someone (well, looks help a little, it shouldn't be ugly).
- what are you intending to use the system for?
- internet, office, play video: low-cost low-end machine will do unless planning to have machine for long time
- gaming: mid to high-end intel desktop, i5 or i7 proc 4 cores 4-8GB RAM, usually high end video card, talk to the gamers.
- development: high-end desktop, i7 proc 4+ cores 32-64GB RAM, SSD can be helpful, multiple large storage
- authoring: high-end desktop and video card, i7 proc 4+ cores 12GB RAM, ssd can be helpful, multiple large storage
- what are the minimum system requirements of the applications you are going to run? do some research before you buy them or your machine (usually just about nay mid-end box will suffice for most stuff but gaming I suppose, I am not a gamer). don't go for the minimum if you can help it. if you can get some extra boost for the future, do so.
- what are your graphics needs? are you going to be running adobe applications? if so, which ones (again, system requirements, ask adobe for help on finding them all, they are rather high for the video card for premiere and after effects)
- PSU (power supply): PSU must have a min. 50W-80W + the Watts used by the system, (50W is what the below calculator does). motherboard manufacturer once told me modern motherboards require 690W for minimum setup. Use a power supply calculator. plan on having an extra hard disk and PCI-E-1x card in the system for upgrades (like when the hard disk needs to be replaced in 5 years and you need to clone/migrate the drive)
- I have found over the years that the number of fans and case airflow is becoming more critical as time goes on for higher-wattage processors. for instance, the i7-39xx is 150W TDP while the i7-49xx is 220W TDP. that's 220/150=1.46x more Watts dissipated through the heatsink.
- get a case that has:
- fan(s) in front blowing air on the hard disks. you need those things cooled down. they can possibly overheat and fail otherwise. typically, 60°C is absolute max (temp at which it dies) and 40-47°C is avg operating temperature.
- side fan(s), preference is 2x140mm=280mm total over a 250mm (as many mm as you can get, blowing OUT on the side).
- PSU on the bottom. however, this leads to the situation where cpu cooler wiring is hard to run because mobo is crammed against the cpu cooler radiator, so maybe leave the job to a pro if you have an i7-x9xx with 8 sticks RAM - just so you know up front. you don't want the hot air from top of case in your PSU. it runs everything in your system and it's warm enough as it is!
- closed-loop liquid cooling seems to be a big help for some processors. corsair H80 for 95W procs, corsair H110 280mm for 150W i7-3970x, not sure about the 220W i7-49xx (liquid nitro? not sure if even a corsair h110 280mm would do the job - will have to throttle the cpu to prevent overheating at 100% usage for any period of time). you don't want a liquid cooler that leaks (can dribble possibly-conductive cooling fluid on the motherboard/cpu). waters and computer don't mix unless that water is properly sealed - check it after you take it out of the box. no colored gunk/liquid in the box or on the cooler.
- do you work with compilers? are you using MSVC's /MP switch (Multi-Processor compile or link) and /Qpar for the compile? are you doing parallel builds with GNU make -j? if so, you could make use of an intel box with lots of threads during the build process (but only for short bursts). NOTE: be sure to check that GNU make -j 4 doesn't cause compile errors by itself (my testing did when I used this switch). you can use the rest of the time for tracking down bugs :-)
- developers: find ways to parallelize various jobs even cmd shell stuff using the start command. for instance, 7-zip's 7z.exe commandline tool has the -mmt switch for enabling multithreading. my monitoring of its use of threads shows that it's more like 1-20% CPU, not 100%. command-shell stuff on the other hand, use up to 100% of a thread (except for waiting for disk). one thing to take into consideration is having too many disk operations at once. if it's disk bound, it's going to take some time.
- for multitaskers: do you have the need to have multiple DVD's in the machine at the same time, or a CD/DVD/Blu-Ray playing while you access some data? how many drives do you need? they are about 30W each. DVD burners are cheaper of course than Blu-Ray burners.
what I have learned from my rig
nutshell: win7, i7-3970x 150W 6C,12T proc, 64GB RAM, hard drives+TLC SSD,case with lots of fans, corsair h100i closed loop liquid cooler, Corsair AX PSU
what I have learned from buying one of those $1k processor jobbies from major-vendor computer store:
- clean the cpu cooler every 3-4 months.
- cable management was a bad idea. I think it made my power supply connections flaky due to cable stress (being too taut/tight).
- I intended mine for parallel pc builds and adobe programs.
- I am finding more ways to parallelize my jobs to save time. but in doing so, I discovered this
- machine burn-in with prime95 stress test and cpuid.com hwmonitor for 4 hours is critical if doing parallel stuff. if it shuts down, or gets too close to max temperature, throttle the cpu.
- I discovered how to unpark cores in windows so I get double the performance! (well, I had to knock it down to 70% due to cpu overheating and the resulting heat being trapped inside the case)
- a side case fan that blows inward is a bad idea. if you can find a way maybe with 140MM fans to blow outward, do so. you want that heat at the top of the case going out. this of course (airflow) depends upon your case design. mine the heat stayed at the top of the case above the 250mm fan.
- 2x140mm fans is 280mm which is more fan CFM which blows more air which is probably better than a single 250mm fan did not think about this when I got the case, but I can change things now and probably re-tune my machine to get more performance I hope.
- got a 2x120mm=240mm h100 cooler. I should have spent the money on an h110 280mm, found out it makes a 10°C difference, which is a lot.
- this machine I spec'd the PSU at 850W, but acocrding to my P3 Internations Kill-a-watt EZ wattmeter it uses 135W maximum. surprise! answered prayer! as it turns out, the dell Dimension 4600 (old 32-bit xp box) used 172W loaded down. PSU currently running at 135/850*100=15.8% usage. the Dell was at 172/550*100=31.3% usage.
- choice of corsair AX PSU was good. stable and has not freaked out with the ultra-low power consumption like my replacement antec 550W did on the dell (squealed but otherwise ran OK).
- most of the time, cpu is idling at 1% usage. rarely do I get 20-30% usage except during parallel builds which get 100% for 2 minutes for 50+ projects (including all the beep notification time, a feature of my individual builds). did you know you can start 50 jobs in windows in parallel using the start command and it will take care of them all? hope you have enough RAM.
- average memory use was minimum 6GB, average max 12GB, usually I could push it no more than 18-20GB running everything at once.
- even with parallel builds and everything else going all at once, memory usage did not go above 20GiB UNTIL a handle leak bug I found in windows' find.exe that chewed up 48GiB of memory when iterating over all the files in a dir tree: it didn't free up the handles (and thus the memory it allocated). next run my machine locked up due to being out of memory. I had assumed that the 180GB virtual memory I had just set up would be used (takes about 39min to init). but I had just found a virtual memory bug too - virtual memory is on, but it's not working. then I found out that having virtual memory on made the system buggy.
- currently windows 7 only uses physical RAM and ignores virtual memory. so I just turned off virtual memory to gain the up to 2x speed increase.
- parallel processes rather than multithreaded programs (except for prime95 cpu stress test) tend to use more CPU.
years between computer buys calculator