<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1276" name=GENERATOR></HEAD>
<BODY style="MARGIN-TOP: 2px; FONT: 10pt Book Antiqua; MARGIN-LEFT: 2px"><SPAN 
class=bodytextBlueBold>Linux* Issues with Hyper-Threaded 
Technology</SPAN><BR><SPAN class=bodytextBlack>For Linux to make use of HT 
Technology an SMP kernel must be installed. This is confirmed by the output of 
uname -a, which shows the kernel version ending in SMP. The output of cat 
/proc/cpuinfo (see below) will show the number of CPU's and their properties. HT 
Technology is shown by the presence of the ht flag. If the computer BIOS 
supports SMP (or an analogous option is activated in BIOS), the machine can be 
used as an SMP system with Linux. When the SMP kernel is installed, it will seem 
as if double the physical processors are available. At present the errata 
kernels 2.4.9-21 and 2.4.9-31 have HT Technology support, but you have to pass 
"acpismp=force" on the kernel command line to enable 
it.</SPAN><BR><BR><BR><BR><IMG height=1 
src="cid:JTYJISIZGFIN.spacer.gif" width=407 
border=0><BR><BR>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#efefef border=0>
  <TBODY>
  <TR>
    <TD noWrap width="100%"><TT><CODE 
      xmlns:UrlReplace="urn:PlatformDocument"><BR>> $cat 
      /proc/cpuinfo<BR>> processor : 0<BR>> vendor_id : 
      GenuineIntel<BR>> cpu family : 15<BR>> model : 1<BR>> model name 
      : Intel(R) Pentium(R) 4 CPU 1.70GHz<BR>> stepping : 2<BR>> cpu MHZ : 
      1694.907<BR>> cache size : 256 KB<BR>> fdiv_bug : no<BR>> hlt_bug 
      : no<BR>> f00f_bug : no<BR>> coma_bug : no<BR>> fpu : yes<BR>> 
      fpu_exception : yes<BR>> cpuid level : 2<BR>> wp : yes<BR>> flags 
      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge<BR>> mca cmov 
      pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm<BR>> bogomips : 
      3381.65<BR>><BR><BR></CODE></TT></TD></TR></TBODY></TABLE>
<DIV><IMG height=1 
src="cid:JTYJISIZGFIN.spacer.gif" width=407 
border=0><BR><BR><A name=section_2></A><BR><SPAN class=bodytextBlack>The Linux 
2.4 kernel will not be developed to take an active advantage of HT Technology 
and patches may be required to fix some possible problems. Rusty Russell (a 
Linux developer) mentions: "The hyperthreading issue... is likely to throw a new 
set of complications into the mix. A processor which does hyperthreading looks 
like two independent CPUs, but it [processes] should not be scheduled [by the 
scheduler] as such - it is better to divide process across real (hardware) 
processors first."</SPAN><BR><BR><SPAN class=bodytextBlack>Work is underway in 
the Linux community to add HT Technology patches to the 2.4 release of the Linux 
kernel. HT Technology changes to Linux are being exploited by Carrier Grade 
Linux Change Project under the ODSL (see below). HT Technology offers 
performance enhancement potentials that are a prime requirement of the carrier 
grade environment. Active utilization of HT Technology will likely appear in the 
standard 2.5 Linux kernel, although it has not yet been placed into the 
development queue due to prerequisite work being done.</SPAN><BR><IMG height=1 
src="cid:JTYJISIZGFIN.spacer.gif" width=407 
border=0><BR><BR><A name=section_3></A><SPAN class=bodytextBlueBold>Linux HT 
Technology Capable Compilers</SPAN><BR><SPAN class=bodytextBlack>The Intel Linux 
C++ Compiler 6.0 has increased levels of Linux and industry standards support 
that provide improved compatibility with GNU C, broader support of Linux 
distributions, support for the C++ ABI object model and GNU inline ASM for IA32. 
- The Intel C++ Compiler supports OpenMP API version 1.0 and performs code 
transformation for shared memory parallel programming. The Intel compiler 
supports multi-threaded application development and debugging, with support for 
OpenMP 1.0 for C and new support for OpenMP 1.0 for C++. This makes it fully 
capable of designing HT Technology enabled applications on HT Technology enabled 
hardware.</SPAN><BR></DIV>
<DIV>Taken from Intel's website, search enable hyperthreading, linux</DIV>
<DIV> </DIV>
<DIV>Jon</DIV>
<DIV> </DIV>
<DIV>Jon L. Miller, MCNE, CNS, ASE<BR>Director/Sr Systems Consultant<BR>MMT 
Networks Pty Ltd<BR><A 
href="http://www.mmtnetworks.com.au">http://www.mmtnetworks.com.au</A></DIV>
<DIV> </DIV>
<DIV>"I don't know the key to success, but the key to failure<BR> is trying 
to please everybody." -Bill Cosby</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV><BR>>>> smclevie@ozemail.com.au 2:44:35 pm 10/12/2003 
>>><BR>Hi all,<BR><BR>I wonder if someone could inform me of the 
necessary steps to enable <BR>hyperthreading (P4 2.4G Pentium)?<BR><BR>I thought 
I had enabled the option in a kernel build ...<BR><BR>I would like to see two 
tuxes at the top of screen also.<BR><BR>Thank you,<BR><BR>Steve. 
<BR><BR><BR>_______________________________________________<BR>plug mailing 
list<BR>plug@plug.linux.org.au<BR><A 
href="http://mail.plug.linux.org.au/cgi-bin/mailman/listinfo/plug">http://mail.plug.linux.org.au/cgi-bin/mailman/listinfo/plug</A><BR><BR></DIV></BODY></HTML>