Jump to content

SMP kernel not enabling hyperthreading


Steve Scrimpshire
 Share

Recommended Posts

I cannot get hyperthreading enabled in the SMP kernel. acpi is running and I have acpi=on in my lilo.conf and have tried acpi=ht. What am I doing wrong?

< root /home/omar > uname -r
2.6.12-13mdksmp
< root /home/omar > service acpid status
acpid (pid 2489) is running...
< root /home/omar > service acpi status
Modules Loaded: 
			ac
			battery
			button
			container
			fan
			processor
			thermal
			toshiba_acpi
			video
< root /home/omar > cat /proc/cpuinfo 
processor	   : 0
vendor_id	   : GenuineIntel
cpu family	  : 15
model		   : 2
model name	  : Intel(R) Pentium(R) 4 CPU 2.66GHz
stepping		: 7
cpu MHz		 : 2656.453
cache size	  : 512 KB
fdiv_bug		: no
hlt_bug		 : no
f00f_bug		: no
coma_bug		: no
fpu			 : yes
fpu_exception   : yes
cpuid level	 : 2
wp			  : yes
flags		   : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr
bogomips		: 5275.64

Edited by Steve Scrimpshire
Link to comment
Share on other sites

When you run top, does it look like it's showing more than one processor?

 

From searching, the only way I could find to enable once smp kernel was installed was the "acpi=ht" line on the bootloader, but I'm still searching.

 

The flags in your post shows "ht", which would lead me to think it's kind of recognising it. I unfortunately don't have a hyperthreading processor machine to hand to be able to check and test for you.

 

I'll update if I find some more info.....

 

EDIT:

 

I found this:

 

CONFIG_SCHED_SMT=y (This is the important switch for Hyperthreading Support)

 

So, check your /boot/config file to see if this exists:

 

cat /boot/config | grep CONFIG_SCHED_SMT

 

and see if it is enabled with "y". If so, hyperthreading should be working. If not, you need to get this option enabled, and then recompile the kernel. I tried finding the option when using "make menuconfig" in my /usr/src/linux directory, but couldn't find it. It's supposed to exist under Processor Type and Features. It may just require manually editing /usr/src/linux/.config file, and then running the command to recompile the kernel.

 

The place where I found this info was here:

 

http://gentoo-wiki.com/ACPI_Intel_865_and_875

 

I know this relates to gentoo, but it's a kernel parameter, so it shouldn't be distro specific. The only problem comes with systems using initrd, which means that after kernel compilation another mkinitrd would most likely have to be generated.

Link to comment
Share on other sites

< root /home/omar > cat /boot/config-2.6.12-13mdksmp | grep CONFIG_SCHED_SMT
CONFIG_SCHED_SMT=y

 

I have tried acpi=ht and acpi=on in lilo and neither shows me two processors in /proc/cpuinfo or in top. (Yes, I run lilo -v after each edit :P)

It was always my understanding that acpi=on would give you hyperthreading enabled (if using an SMP kernel) and acpi=ht just enables acpi just enough to give the hyperthreading capacity of acpi.

Still confused.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...