Questions tagged [hyperthreading]

In a hyperthreaded CPU, for each processor core that is physically present, the operating system addresses two virtual or logical cores, and shares the workload between them when possible.

In an hyper threaded environment, For each processor core that is physically present, the operating system addresses two virtual or logical cores, and shares the workload between them when possible.

This allows to decrease the number of dependent instructions on the pipeline. It takes advantage of superscalar architecture (multiple instructions operating on separate data in parallel).

223 questions
2
votes
2 answers

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.
T.T.T.
  • 33,367
  • 47
  • 130
  • 168
2
votes
2 answers

JVM + Linux + Intel's Hyperthreading =

I noticed that JVM threads run as processes under Linux for some reasons (correct me if I'm wrong). Furthermore, it is a fact that Intel's Hyperthreading provides additional parallelization only for two threads belonging to same process. Does that…
java.is.for.desktop
  • 10,748
  • 12
  • 69
  • 103
2
votes
1 answer

Why is a thread's status running but it doesn't use any CPU?

Today I found a very strange problem. I ran Redhat Enterprise Linux 6, and the CPU was Intel E31275 (4 cores, 8 threads). I found one kernel thread (I called it as my_thread) didn't work correctly. With "ps" command, I found the status of my_thread…
flypen
  • 2,515
  • 4
  • 34
  • 51
2
votes
1 answer

Does simultaneous multithreading make use of interleaved / temporal multithreading?

I am trying to understand simultaneous multithreading (SMT) but I have just run into a problem. Here is what I figured out so far SMT requires a superscalar processor to work. Both technologies - superscalar and SMT - allow to execute multiple…
2
votes
0 answers

Control threads inside oneAPI/MKL/BLAS/cblas_dgemm(and cblas_daxpy) for different multi-threaded schemes

I'm measuring the time-performance of multiple multi-threaded schemes nested with BLAS functions. More specifically, the following calls: cblas_dgemm(CblasColMajor, CblasTrans, CblasNoTrans, phr, phr, LDA,alpha , A, LDA, B, LDB, beta, C,…
2
votes
0 answers

Atomic operation contention between SMT/HT Threads

Across modern AMD/Intel CPU's is contention for atomics (inc/dec/swap etc) between say 2 SMT/HT threads on the same core known to have significantly better performance in general than between threads pinned to different cores?
iam
  • 1,623
  • 1
  • 14
  • 28
2
votes
3 answers

Is hyperthreading working?

I'm running some fairly processor-intensive stuff on my PC, and notice my CPU usage looks pretty odd. My PC is a quad-core i7-870, which supposedly has eight virtual cores. I'm using the Task Parallel library in .NET 4, so expect all cores to be…
2
votes
0 answers

With SMT, what do we call a "hardware thread"?

These days we have a CPU which may comprise several Cores, and each Core may support SMT... so when the OS allocates a "processing resource" to a (software) thread (so that it can run), the question is: what do we call that "processing resource" ? I…
Chris Hall
  • 1,707
  • 1
  • 4
  • 14
2
votes
2 answers

Does the running of a second thread on an hyperthreaded CPU introduce extra overhead throughout the pipeline?

There was a discussion at work related to hyperthreaded Xeon machines. My (superficial) understanding on how Hyperthreading works is that the CPU is physically multiplexing the instructions coming from two "threads". That is, the execution units are…
devoured elysium
  • 101,373
  • 131
  • 340
  • 557
2
votes
6 answers

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…
Anton
  • 6,860
  • 12
  • 30
  • 26
2
votes
2 answers

I need a short C programm that runs slower on a processor with HyperThreading than on one without it

I want to write a paper with Compiler Optimizations for HyperTreading. First step would be to investigate why a processor with HyperThreading( Simultaneous Multithreading) could lead to poorer performances than a processor without this technology.…
Sorin
  • 21
  • 2
2
votes
1 answer

Same physical core different NUMA node

Following the steps of identifying which logical cores share the same physical core on my AMD Opteron(TM) Processor 6234, I found out that 2 logical cores sharing the same physical core are not in the same NUMA node. My steps were to do lscpu in…
Lili_marston
  • 149
  • 1
  • 12
2
votes
2 answers

R: makePSOCKcluster hyperthreads 50% of CPU cores

I try to run an R script on a single Linux machine with two CPUs containing 8 physical cores each. The R code automatically identifies the number of cores via detectCores(), reduces this number by one and implements it into the makePSOCKcluster…
Chr
  • 1,017
  • 1
  • 8
  • 29
2
votes
0 answers

Programmatically detect hyperthread-enabled CPU?

How can my win32 app programmatically determine if it is running on a machine with CPU with hyperthread technology?
Hyunjik Bae
  • 2,721
  • 2
  • 22
  • 32
2
votes
1 answer

Optimal number of threads when hyperthreading is off

I have a question which I tried to find an answer for, but got more confused from all the information I found - unfortunately, couldn't gain a clear answer So, let's say I have a coomputer with hyperthreading turned OFF. What is the optimal number…