Re: Linux dual boot?

Top Page
Attachments:
Message as email
+ (text/plain)
+ signature.asc (application/pgp-signature)
+ (text/plain)
Delete this message
Reply to this message
Author: Joseph Sinclair
Date:  
To: Main PLUG discussion list
Subject: Re: Linux dual boot?
Hyperthread isn't really multi-thread the way multiple cores is. What hyperthread does is de-bond two of the hyperscalar pipelines and run each thread's instructions through a different pipeline.
If your workload per-thread is such that it works well with hyperscalar processing (nearly all of the server-type workloads I work on are this way) then hyperthreading can actually reduce performance by increasing pipeline stalls while decreasing single-threaded performance.
The pipeline stall thing is a particularly big deal for server-type workloads, since some of the hardware for each core is still shared by all of it's pipelines (particularly some of the matrix-type instructions and a lot of I/O hardware), and some instructions cannot be performed in hyperthreaded mode because they require both pipelines, use shared hardware elements, or force pipeline flushes; server processes tend to have a lot more of these types of instructions.
Many desktop workloads will encounter the same kind of effects, but Desktop applications usually spend far more time waiting for the user than vice-versa, so it's not as visible.
One thing I've seen directly in the "desktop" applications space is that some types of video processing and some games get a significant improvement in single-thread speeds if you disable hyperthreading in the CPU (if your BIOS and chip support that, not all do). For Core i7 systems, in particular, some exceptionally intensive video games seem to run much faster with Hyperthreading disabled (of course these tend to be single-threaded programs that can't gain from Hyperthreading anyway).

The exact impacts do depend a great deal on the specifics of the system using Hyperthreading; the new core-i architecture implements Hyperthreading a lot better than the old Pentium 4 architecture (the 2 architectures in between didn't have Hyperthreading AFAIK).
Critically, the Atom seems to use the older approach, and as a result I find them to perform very poorly on some tasks that *should not be* taxing to a 1.6 GHz CPU.


Bryan O'Neal wrote:
> Joseph - You are one of those people who, if you have the time,
> actually seeks to understand things as deeply as possible. Thus I
> would be very interested in hearing what you have to say about Intel's
> Hyperthreading. A long time ago (say 5-7 years ago on the P4) I too
> had random issues but I never figured out what the root problem was,
> only that turning off HT fixed the "issues". I have not see any issues
> since then.
>
> On Mon, May 17, 2010 at 11:07 PM, Joseph Sinclair
> <> wrote:
>> Nice to see an on-topic post; thanks Mike.
>>
>> ----
>>
>> Depends on what you want to learn and how stable you need it to be.
>>
>> For stable, I'd go with the latest Fedora, RHEL (and plan to upgrade to 6 when it's out), or Debian stable (should be out soon).
>>
>> For more learning-on-the-edge I'd try sidux (In fact I'm doing that on my laptop as soon as I have a few hours to run the install and tweak things).
>> It's Debian Sid (not terribly stable bleeding-edge) with some cleanup to make it slightly less unstable, and a lot easier to install.
>>
>> The advantage:
>> �Absolute bleeding edge Debian with the latest kernel, drivers, software, etc...
>> �Debian!
>> �None of the *@&# Canonical and Gnome have dumped into Ubuntu that finally persuaded me it's not worth the effort.
>> The Disadvantages:
>> �Not as stable as official Debian releases (although it's pretty close to the stability of Ubuntu or Fedora)
>> �Always updating, so you have to create your own "release cycle" by choosing when to update (which means watching the fora and updating when it's relatively stable, then cherry-picking only important updates between times).
>> �A lot less polished, so you'll have to learn a good bit more system administration and other tasks the newer GUI tools cover over in the more polished distros.
>> �If it breaks, it's your problem. �DO NOT run sidux on a line-of-business system that can't be down for a few days if something goes wrong.
>>
>> ----
>>
>> My next system will probably be an AMD 1090T (Hexacore!) or an Opteron 12-core CPU (if I can afford that one). �That is, unless a better CPU comes out between now and when I scrape together the cash for a new "big" system.
>> I'll also probably load up 12G or more of RAM (the Opteron would support up to 64G, IIRC).
>> I generally prefer the AMD chips, as they're a LOT cheaper per-core, and I've had a lot of issues with Hyperthreading in Intel chips actually slowing things down, but my workloads are not "normal", either.
>>
>> If I had $12K just laying around I'd probably pick up something like the server system here (http://www.supermicro.com/Aplus/system/2U/2042/AS-2042G-6RF.cfm) with 4 12-core CPU, 128G RAM and 6 1TB drives (and do a bit of rewiring on the house to support the dual 1200W power supplies).
>>
>> ----
>>
>> As for what I'd recommend to someone NOT looking for a video processor/compilation workhorse/VM host:
>>
>> If you want a Gaming monstrosity, check out the i7 980x for Intel 6-core/12-thread bliss (although it costs $1000), and pair it with a nice quartet of high-end Radeon GPU's (like a pair of HD 5970 or 4 HD 5870 cards) in a crossfire setup.
>> The slight edge in single-thread performance on the i7 makes a difference when building a rig for playing high-end video games, and for a high-end gaming rig, CPU price shouldn't be a major concern (especially if you intend to go whole-hog and enable maximum power-boost support with a phase-change cooling setup).
>>
>> ----
>>
>> If you want a true low-cost value system for 64-bit, however, try the new Intel Atom D510 for 64-bit dual-core at a seriously low power usage (13 watts, including graphics). �It tops out, however, at 4G (and not all boards support that), so 64-bit is more for style than real need.
>> For 1080p video playback, make sure to pick an ion2 system, although that will require running the NVidia binary blobs and adds a few watts to the power usage.
>> Just don't try to run virtual machines on it, as it lacks VT-x support.
>>
>> ----
>> ==Joseph++
>>
>> mike Enriquez wrote:
>>> I am planning to build a dual boot workstation. It will a 64bit computer
>>> with Windows 7 pro but I have yet to select a linux distro.
>>> I am open to any suggestions. Which linux distro would you use. My only
>>> requirement is that it further my linux education.
>>> I am willing to try any Linux Distro in workstation or server version.
>>>
>>> Also what would you put into your 64 bit computer? I am planning to use
>>> an i7 extreme processor on an MSI X58 pro-E motherboard. Ram is going to
>>> be DDR3 1600 MHz.
>>>
>>> I am open to any ideas. �Please send me your ideas.
>>>
>>> Thanks
>>>
>>> Mike Enriquez
>>> ---------------------------------------------------
>>> PLUG-discuss mailing list -
>>> To subscribe, unsubscribe, or to change your mail settings:
>>> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>>>
>>
>> ---------------------------------------------------
>> PLUG-discuss mailing list -
>> To subscribe, unsubscribe, or to change your mail settings:
>> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>>
> ---------------------------------------------------
> PLUG-discuss mailing list -
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>


---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change your mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss