Solved

Linux kernel supporting hyperthreading technology

Posted on 2004-10-18
2
461 Views
Last Modified: 2013-12-15
I am running RedHat 2.4.21-9.EL kernel with 1 Xeon processor. Here's a few questions regarding hyperthreading support on Xeon with this kernel.

1. I have heard that the 2.4 kernel only partially support hyperthreading. The full support comes in the 2.6 kernel. How are these 2 kernels different in supporting hyperthreading?

2. Do I need to run the smp kernel to enable hyperthreading even I'm running only 1 physical processor?

3. What's the relationship between irq balancing and hyperthreading? Is irq balancing a requirement for hyperthreading?

Many thanks in advance!

Phoneix
0
Comment
Question by:phoenix20006
2 Comments
 
LVL 38

Accepted Solution

by:
wesly_chen earned 125 total points
Comment Utility
Hi,

  From the kernel.org, kernel 2.4.x is partially support HT. However, RedHat has some tunning on RHEL 3.0 so RHEL 3.0 did support HT.
------
  Hyper-Threading, also referred to as simultaneous multithreading (SMT), allows different threads to run simultaneously on different execution units within one physical processor. Hyper-Threading extends multi-threading using an architecture state where one physical processor can look like two (or more) logical processors to the operating system and applications.
 
  A Hyper-Threading enabled processor can manage data as if it were two logical processors by handling data instructions in parallel rather than serially.
------
  The answer for the Q2 is Yes. You need to install SMP kernel and boot SMP kernel to use HT.

  As for the Q1, the different is in the kernel architecture, the main different is the scheduler. The schedule of kenel 2.4.x couldn't really tell the phyical CPU from logical CPU. So it may schehule two processes into the same CPU with HT turn-on and
leave the other CPU (say you have two phyical CPUs) idle. This happens on RHEL 2.1 and reduce the performance.

  Hence, the answer to the Q3 is that IRQ balancing has to be per-phyical-CPU in order to take advantage of HT.

  Developers who thread applications are positioned to take advantage of Hyper-Threading Technology. Threaded applications can immediately pick up all the performance benefits of Hyper-Threading based multiprocessing whenever they are running on an Intel Hyper-Thread enabled processors.

  So you may turn on HT on the BIOS and run SMP kernel on your RHEL 3.0 box to gain some performance of threaded application.

Regards,

Wesly
0
 

Author Comment

by:phoenix20006
Comment Utility
Thanks Wesly, but if you would dig a little deeper into IRQ balancing, I would really appreciate it. What does it mean by "IRQ balancing has to be per physical CPU"? and where do I configure IRQ balancing?
What I realize is that I can turn off IRQ balancing under chkconfig, let say I did that, would that mean I won't be able to take the full benefits of HT? or HT just simply won't work without IRQ balancing?

Thanks!

Phoenix
0

Featured Post

Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!

Join & Write a Comment

It’s 2016. Password authentication should be dead — or at least close to dying. But, unfortunately, it has not traversed Quagga stage yet. Using password authentication is like laundering hotel guest linens with a washboard — it’s Passé.
Join Greg Farro and Ethan Banks from Packet Pushers (http://packetpushers.net/podcast/podcasts/pq-show-93-smart-network-monitoring-paessler-sponsored/) and Greg Ross from Paessler (https://www.paessler.com/prtg) for a discussion about smart network …
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now