hyperthreading

Multicore + Hyperthreading - how are threads distributed?

I was reading a review of the new Intel Atom 330, where they noted that Task Manager shows 4 cores - two physical cores, plus two more simulated by Hyperthreading. Suppose you have a program with two threads. Suppose also that these are the only threads doing any work on the PC, everything else is idle. What is the probability that the ...

Does hyperthreading lead to unstable systems?

I'm building a PC with the new Intel I7 quad core processor. With hyperthreading turned on it will report 8 cores in Task Manager. Some of my colleagues are saying that hyperthreading will make the system unreliable and suggest turning it off. Can any of you good people enlighten me and the rest of the stockoverflow users. Follow o...

How do I tell if the machine my program is running on uses hyperthreading? (C#)

I have some code that needs to know how many actual cores are available on my particular machine, and whether or not Hyperthreading is enabled. Is there a way to do this in C#? Update: The machines are a mix of XP and Vista Update: Accessing 'Win32_Processor.NumberOfCores' or 'Win32_Processor.NumberOfLogicalProcessors' throws an excep...

multi-CPU, multi-core and hyper-thread

Could anyone recommend me some documents to illustrate their differences please? I am always confused about the differents between multi-CPU, multi-core and hyper-thread, and pros/cons of each architecture in different scenarios. EDIT: here is my current understanding after learning online and learning from others' comments, could anyon...

Hyper-Threading programming languages

What languages can hyper-threading be implemented in? Is it only part of Object Oriented systems or can it be implemented in C? Thanks. ...

What is a CPU thread and how is it related to logical threads in code?

I have been seeing in the literature for some of the newer CPU's such as the Intel Xeon "Nehalem-EX" as having 8 cores and 16 threads. What are they talking about here? I saw mention of this in reference so SPARCS too, surely this isn't the kind of logical threads spawned by code ? Is this hyperthreading re-named? ...

SSE and hyper threading

Are SSE registers shared or duplicated between logical processors (hyper threading) ? Can I expect the same kind of speedup from parallelization for a SSE heavy program as for a normal program (Intel claims 30% for processors with hyper threading)? ...

CPU Numbering on a hypertheading enabled system

Hi, I am trying to find out how an OS (Windows, linux) assigns numbers to logical cpus in a Hyper threading enabled environment. ? Does both the OSs first serially assign numbers to the Physical CPUs and then start numbering the logical cpus or is there some other rule followed.. ? e.g. in 2 physical cpu system with hyper threading , d...

How can I determine programmatically whether on multi-core, hyperthreading or multi-processor?

I know how to get the processor type, perhaps that's the only way, but I'm actually looking for a way to determine from an application whether it's running on a multi-core processor or on a hyper-threading single-core processor. (background: the hosting providers of some of my clients are very vague about what resources they make availa...

Impact of hyperthreading on compiler performance?

Say we want to compile a large project (say GCC or the Linux kernel) as fast as possible. Does a CPU with hyperthreading capability (say an Intel Core i7) run the compiler any faster with hyperthreading enabled or disabled? Are there any published benchmarks that test this? My understanding of hyperthreading is that each core can select...

Hyperthreading on Intel's Atom processor

Hi, I am having a netbook with Intel's Atom processor. To run some performance tests, I wonder if there is any way to disable its hyperthreading capability? I read it is possible to do that via BIOS, however, I was more looking for a possibily to control the HT via the OS, assuming that there is an instruction I could use in this conte...

Does GetSystemInfo (on Windows) always return the number of logical processors?

Reading up on this, and specifically reading the Microsoft docs, it looks like it should be returning the number of PHYSICAL processors, and that you should use GetLogicalProcessorInformation to figure out how many LOGICAL processors you have. Here's the doc I found on the SYSTEM_INFO structure: http://msdn.microsoft.com/en-us/library/m...

Programatically detect number of physical processors/cores or if hyper-threading is active on Windows, Mac and Linux

I have a multithreaded c++ application that runs on Windows, Mac and a few Linux flavours. To make a long story short: Inorder for it to run at maximum efficiency I have to be able to instantiate a single thread per physical processor/core. Creating more threads than there are physical processors/cores degrades the performance of my prog...

C/C++/Assembly Programatically detect if hyper-threading is active on Windows, Mac and Linux

I can already correctly detect the number of logical processors correctly on all three of these platforms. To be able to detect the number of physical processors/cores correctly I'll have to detect if hyperthreading is supported AND active (or enabled if you prefer) and if so divide the number of logical processors by 2 to determine the...

CPU ordering in Linux (with hyper threading)

I'm curious what the CPU ordering is in Linux. Say I bind a thread to cpu0 and another to cpu1 on a hyperthreaded system, are they both going to be on the same physical core. Given a Core i7 920 with 4 cores and hyperthreading, the output of /proc/cpuinfo has me thinking that cpu0 and cpu1 are different physical cores, and cpu0 and cpu...

FP-intensive hyperthreading performance on latest Xeons

We have recently purchased a dual Intel X5650 workstation to run a floating-point intensive simulation, under Ubuntu 10.04. Each X5650 has 6 cores, so there are 12 cores in total. The code is trivially parallel, so I have been running it mostly with 12 threads, and observing approximately "1200%" processor utilization through "top". Hy...

Turning off Hyper-Threading in 6-core Intel Xeon

We got a 12-core MacPro to do some Monte Carlo calculations. Its Intel Xeon processors have Hyper-Threading (HT) enabled, so in fact there should be 24 processes running in parallel to make them fully utilized. However, our calcs are more efficient to run on 12x100% than 24x50%, so we tried to turn Hyper-Threading off via Processor pane ...