amd64 webpage, 12GB memory? 64-bit or not? SMP or not?

Scott Long scottl at
Sat Mar 18 08:01:32 UTC 2006

Jeremy C. Reed wrote:
> On Fri, 17 Mar 2006, Steve Kargl wrote:
>>>How can I tell if a 2.80Ghz Xeon is a 32-bit Xeon or a 64-bit Xeon? What 
>>>do I look for in the 6.0-RELEASE GENERIC i386 dmesg output? I do see:
>>>ACPI APIC Table: <PTLTD          APIC  >
>>>Timecounter "i8254" frequency 1193182 Hz quality 0
>>>CPU: Intel(R) Xeon(TM) CPU 2.80GHz (2793.01-MHz 686-class CPU)
>>                                                  ^^^^^^^^^^^^^
>>You're running a i386 kernel, which is 32-bit.
> I already know what it is currently running. In my email, I tried to 
> indicate that it is running 6.0-RELEASE GENERIC i386 (twice in the parts 
> you included in your reply).
> I am unclear if you are answering my question: How can I tell if a 2.80Ghz 
> Xeon is a 32-bit Xeon or a 64-bit Xeon?

The 'LM' string in the AMD Features lines tells you that it can go into 
long mode, which means that it can operate in 64 bit mode.

>>>  Features2=0x641d<SSE3,RSVD2,MON,DS_CPL,CNTX-ID,CX16,<b14>>
>>>  AMD Features=0x20100000<NX,LM>
>>>  Hyperthreading: 2 logical CPUs
>>>real memory  = 3489071104 (3327 MB)
>>>avail memory = 3414630400 (3256 MB)
>>>How can I tell if it can take advantage of "options SMP" (from looking at 
>>>6.0-RELEASE i386 GENERIC output)? (I do see "Hyperthreading: 2 logical 
>>You're using a GENERIC kernel.  IIRC, "options SMP" isn't included
>>in GENERIC, so you're running a UP kernel.  You need to rebuild
>>the kernel
> I understand. I know it is running GENERIC as I mentioned. My question is:
> How can I tell if it can take advantage of "options SMP" (from looking at
> 6.0-RELEASE i386 GENERIC output)?

How can I tell if my car takes diesel or unleaded?  I'm sorry, but this
questioning sounds a bit hysterical.  But, if you truly have no other
way of knowing, compile and run the tool in /usr/src/tools/tools/ncpus.

>>>I was told it has 12 GB of memory. The Hardware Notes also says "The 
>>>largest tested memory configuration to date is 8GB." But I only see "real 
>>>memory = 3489071104 (3327 MB)".
>>The i386 is limited to 4 GB address space without options PAE.  You
>>need to rebuild your kernel.
> Only i386 supports "options PAE". How can I tell if this system can 
> support an amd64 (without physical access)?

See above.

> I am still unsure. Sorry if I misunderstood your reply. I know I am 
> currently running a 6.0-RELEASE i386 GENERIC kernel. (And I know SMP is 
> not in GENERIC). I want to know how I can find out if I should be running 
> an amd64 kernel instead.
> I was under the impression that some (all?) 64 bit Athlons, Opterons, 
> Xeons can also run the 32-bit i386 kernel. (I was sure I have seen this 
> too.)
> I have been looking at src/sys/i386/i386/identcpu.c. But I am not sure how 
> an 64-bit Intel Xeon would behave. (I am guessing it would be 
> CPUCLASS_686.)

CPUCLASS_686 refers to Pentium Pro and above CPUs, and significantly
predates the 64-bit x86 architecture.  But fwiw, the i386 sources files
are not a good place to find 64-bit code.

> I do see that my dmesg output has AMD featuress with "LM" which means 
> 64-bit long mode. But I don't know if that means this is a 64-bit system.


> I see the dmesg says "Id = 0xf43" (this is the cpu_id). Doing some google 
> searches show one "K8-class" and several "686-class" CPUs. Also NYCBUG's 
> dmesg database has that same "K8-class" "Id = 0xf43" system. A "K8-class" 
> is definitely from an amd64 kernel (as it is printed from the 
> src/sys/amd64/amd64/identcpu.c).
> I am hoping the system I am looking at can run the amd64 kernel.

Yes, it sure can.


More information about the freebsd-amd64 mailing list