Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
Mike Meyer wrote: In [EMAIL PROTECTED], Garrett Cooper [EMAIL PROTECTED] typed: Martin Turgeon wrote: Mike Meyer a écrit : In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo Thanks a lot for the precision, I will use nocona for my dual core Xeon. Cedar Mill: Last P4 processor. Followup to Prescott. Nocona: Xeon server processor code name -- first CPU with EMT64 (amd64) compatibility [and hence first non-IA64 bit Xeon processor to feature 64-bit compatibility; not sure if it was the first non-IA64 64-bit designed Intel processor]. Prescott: Single-core processor with HTT. Base CPU for [later generation] P4 processors, and the dual core Pentium D [basically the larger cousin of the Northwood CPUs]. Prescott was compacted into Cedar Mill -- from a 90nm (?) process to 65nm. From what I can tell, the Prescott went through a number of iterations; the first of them didn't have HTT, or had it but it was disabled. Later versions added that, EMT64, virtualization, and other things. If my information is correct, the nocona was the first version of the prescott core with em64t, and only used in Xeons. There was a big difference between the Prescott CPU core and the Nocona core though, in terms of technology (Pentium 4 vs Core/Core2). Apparently the pipelines for the CPU were similar for the desktop CPU though, some have claimed. I haven't looked at the RTL though, so I can't be sure for myself whether or not that's the case. And yes, I believe prescott and following were 90nm until Cedar Mill. Ok, that's what I thought (since fab screen size goes by 15nm each time nowadays). Intel suggests using -march=prescott (32-bit) and -march=nocona (64-bit) with gcc on Core2Duo processors and equivalent Xeons. Note that /usr/share/mk/sys.mk includes bsd.mk.cpu, which overrides CPUTYPE if it's set to prescott or nocona. It turns nocona into prescott if you're building for i386 and prescott into nocona if you're building for amd64. So the correct answer to the question Do I set CPUTYPE to nocona or prescott in /etc/make.conf? would seem to be It doesn't matter. Hmmm... interesting.. Seems like a bit ambitious for bsd.mk.cpu, if the user knows what they're doing. You can also find your CPU's type by going to this page: http://www.intel.com/products/server/processors/index.htm?iid=serv_body+proc, and searching for the appropriate model number. Your frequency and model should be reported in your BIOS, if not the first couple lines of dmesg in FreeBSD. I've never seen those report core names. Possibly you're referring specifically to the Xeon cpu model numbers? Yeah, that's exactly what I meant. -Garrett ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
2007/6/26, Garrett Cooper [EMAIL PROTECTED]: Mike Meyer wrote: In [EMAIL PROTECTED], Garrett Cooper [EMAIL PROTECTED] typed: Martin Turgeon wrote: Mike Meyer a écrit : In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo Thanks a lot for the precision, I will use nocona for my dual core Xeon. Cedar Mill: Last P4 processor. Followup to Prescott. Nocona: Xeon server processor code name -- first CPU with EMT64 (amd64) compatibility [and hence first non-IA64 bit Xeon processor to feature 64-bit compatibility; not sure if it was the first non-IA64 64-bit designed Intel processor]. Prescott: Single-core processor with HTT. Base CPU for [later generation] P4 processors, and the dual core Pentium D [basically the larger cousin of the Northwood CPUs]. Prescott was compacted into Cedar Mill -- from a 90nm (?) process to 65nm. From what I can tell, the Prescott went through a number of iterations; the first of them didn't have HTT, or had it but it was disabled. Later versions added that, EMT64, virtualization, and other things. If my information is correct, the nocona was the first version of the prescott core with em64t, and only used in Xeons. There was a big difference between the Prescott CPU core and the Nocona core though, in terms of technology (Pentium 4 vs Core/Core2). Apparently the pipelines for the CPU were similar for the desktop CPU though, some have claimed. I haven't looked at the RTL though, so I can't be sure for myself whether or not that's the case. And yes, I believe prescott and following were 90nm until Cedar Mill. Ok, that's what I thought (since fab screen size goes by 15nm each time nowadays). Intel suggests using -march=prescott (32-bit) and -march=nocona (64-bit) with gcc on Core2Duo processors and equivalent Xeons. Note that /usr/share/mk/sys.mk includes bsd.mk.cpu, which overrides CPUTYPE if it's set to prescott or nocona. It turns nocona into prescott if you're building for i386 and prescott into nocona if you're building for amd64. So the correct answer to the question Do I set CPUTYPE to nocona or prescott in /etc/make.conf? would seem to be It doesn't matter. Hmmm... interesting.. Seems like a bit ambitious for bsd.mk.cpu, if the user knows what they're doing. You can also find your CPU's type by going to this page: http://www.intel.com/products/server/processors/index.htm?iid=serv_body+proc, and searching for the appropriate model number. Your frequency and model should be reported in your BIOS, if not the first couple lines of dmesg in FreeBSD. I've never seen those report core names. Possibly you're referring specifically to the Xeon cpu model numbers? Yeah, that's exactly what I meant. -Garrett please correct me if I'm wrong, but gcc(1) can help us a bit also; http://www.freebsd.org/cgi/man.cgi?query=gccsektion=1format=html z.B.: (...) prescott Improved version of Intel Pentium4 CPU with MMX, SSE, SSE2 and SSE3 instruction set support. nocona Improved version of Intel Pentium4 CPU with 64-bit extensions, MMX, SSE, SSE2 and SSE3 instruction set support. (...) athlon-4, athlon-xp, athlon-mp Improved AMD Athlon CPU with MMX, 3dNOW!, enhanced 3dNOW! and full SSE instruction set support. k8, opteron, athlon64, athlon-fx AMD K8 core based CPUs with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, 3dNOW!, enhanced 3dNOW! and 64-bit instruction set extensions.) (...) -- Zavam, Vinícius ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
In [EMAIL PROTECTED], Zavam, Vinícius [EMAIL PROTECTED] typed: 2007/6/26, Garrett Cooper [EMAIL PROTECTED]: Mike Meyer wrote: nowadays). Intel suggests using -march=prescott (32-bit) and -march=nocona (64-bit) with gcc on Core2Duo processors and equivalent Xeons. Note that /usr/share/mk/sys.mk includes bsd.mk.cpu, which overrides CPUTYPE if it's set to prescott or nocona. It turns nocona into prescott if you're building for i386 and prescott into nocona if you're building for amd64. So the correct answer to the question Do I set CPUTYPE to nocona or prescott in /etc/make.conf? would seem to be It doesn't matter. Hmmm... interesting.. Seems like a bit ambitious for bsd.mk.cpu, if the user knows what they're doing. please correct me if I'm wrong, but gcc(1) can help us a bit also; http://www.freebsd.org/cgi/man.cgi?query=gccsektion=1format=html Right. We actually discussed this, then wondered into the history of the CPU cores. You start with misc/cpuid to get a list of features your CPU has, then use the gcc man page to figure out which cputype will use the most features of your CPU without trying to use features which your CPU doesn't have. z.B.: (...) prescott Improved version of Intel Pentium4 CPU with MMX, SSE, SSE2 and SSE3 instruction set support. nocona Improved version of Intel Pentium4 CPU with 64-bit extensions, MMX, SSE, SSE2 and SSE3 instruction set support. (...) athlon-4, athlon-xp, athlon-mp Improved AMD Athlon CPU with MMX, 3dNOW!, enhanced 3dNOW! and full SSE instruction set support. k8, opteron, athlon64, athlon-fx AMD K8 core based CPUs with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, 3dNOW!, enhanced 3dNOW! and 64-bit instruction set extensions.) (...) mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/consulting.html Independent Network/Unix/Perforce consultant, email for more information. ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
Jack L. wrote: On 6/24/07, Martin Turgeon [EMAIL PROTECTED] wrote: Hi, I recently installed AMD64 6.2 Release on 2 PowerEdge servers, both with dual core Xeon (3070 and 5110). I noticed when I was updating the sources that it was compiling as an Athlonxp by default. I was wondering if I should change the CPUTYPE in make.conf to something else. I read at some places that it is not recommended because it could cause problems but I thought it would be interesting to start the debate here. Please note that I would prefer not to go with the -STABLE or -CURRENT branch because these a going to be essential productions servers. Thank you for your opinions, Martin I use nocona. That should be the correct one. I know I am hijacking the thread a bit - but: In general, how does one decide which CPUTYPE to use? The connection between the options for CPUTYPE and the output of dmesg is not so obvious to me. I looked at the features advertised by dmesg (which in my case included SSE3) and then reverse engineered bsd.cpu.mk to figure out I should be using prescott, but I am hoping I figured it out the hard way. Also, does setting CPUTYPE make a lot of difference to performance? Right now I have no CPUTYPE set at all. Thanks, Stephen ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
On Mon, Jun 25, 2007 at 12:45:37PM -0500, Stephen Montgomery-Smith wrote: Also, does setting CPUTYPE make a lot of difference to performance? I don't notice any difference in performance on my Athlon xp 2400 box if I set CPUTYPE=athlon-xp vs. leaving it alone. YMMV though, ask the gentoo people :) Right now I have no CPUTYPE set at all. Also leaving CPUTYPE unset means I can plug the system disc into any other old x86 box without hitting illegal instructions. In case my motherboard fries itself again some time like the old one did a few weeks ago I'll be glad I can do this. -- stefan http://stsp.name PGP Key: 0xF59D25F0 pgpJ6Nazagig5.pgp Description: PGP signature
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
In general, how does one decide which CPUTYPE to use? The connection between the options for CPUTYPE and the output of dmesg is not so obvious to me. I looked at the features advertised by dmesg (which in my case included SSE3) and then reverse engineered bsd.cpu.mk to figure out I should be using prescott, but I am hoping I figured it out the I would not judge only by instructions like SSE etc. ins scheduling etc. plays key role as well. you should know what cpu you bought, or just use cpuid (found in ports) and determine what cpu you have. on -current you can set _native_ or native (dont remember) and gcc will choose itself... ;) roman ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: you should know what cpu you bought, or just use cpuid (found in ports) and determine what cpu you have. Knowing what CPU you bought doesn't help a lot for the case asked about of nocona vs. prescott. Those are the names of P4 and Xeon cores, not CPUs - and not the last cores used in either line. cpuid will tell you what features your CPU supports, but not the name of the core. So it only helps if you know what you're looking for. P4 and Xeon are just marketing names, and the features available vary quite a bit across the lines. Even knowing the core names doesn't help, as some prescott cored P4s have all the gcc nocona features. Assuming the gcc man page is correct, use cpuid to check the feature sets of your CPU. If you don't have SSE2, then you should be using something prior to pentium 4. If you have SSE2 but not SSE3, then you want pentium-m, pentium4 or pentium4m. If you have SSE3, then you should be using either nocona or prescott. If you have 64 bit support, you want nocona, otherwise prescott. For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/consulting.html Independent Network/Unix/Perforce consultant, email for more information. ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
Mike Meyer a écrit : In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: you should know what cpu you bought, or just use cpuid (found in ports) and determine what cpu you have. Knowing what CPU you bought doesn't help a lot for the case asked about of nocona vs. prescott. Those are the names of P4 and Xeon cores, not CPUs - and not the last cores used in either line. cpuid will tell you what features your CPU supports, but not the name of the core. So it only helps if you know what you're looking for. P4 and Xeon are just marketing names, and the features available vary quite a bit across the lines. Even knowing the core names doesn't help, as some prescott cored P4s have all the gcc nocona features. Assuming the gcc man page is correct, use cpuid to check the feature sets of your CPU. If you don't have SSE2, then you should be using something prior to pentium 4. If you have SSE2 but not SSE3, then you want pentium-m, pentium4 or pentium4m. If you have SSE3, then you should be using either nocona or prescott. If you have 64 bit support, you want nocona, otherwise prescott. For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo mike Thanks a lot for the precision, I will use nocona for my dual core Xeon. Martin ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
Martin Turgeon wrote: Mike Meyer a écrit : In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: you should know what cpu you bought, or just use cpuid (found in ports) and determine what cpu you have. Knowing what CPU you bought doesn't help a lot for the case asked about of nocona vs. prescott. Those are the names of P4 and Xeon cores, not CPUs - and not the last cores used in either line. cpuid will tell you what features your CPU supports, but not the name of the core. So it only helps if you know what you're looking for. P4 and Xeon are just marketing names, and the features available vary quite a bit across the lines. Even knowing the core names doesn't help, as some prescott cored P4s have all the gcc nocona features. Assuming the gcc man page is correct, use cpuid to check the feature sets of your CPU. If you don't have SSE2, then you should be using something prior to pentium 4. If you have SSE2 but not SSE3, then you want pentium-m, pentium4 or pentium4m. If you have SSE3, then you should be using either nocona or prescott. If you have 64 bit support, you want nocona, otherwise prescott. For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo mike Thanks a lot for the precision, I will use nocona for my dual core Xeon. Martin Sorry for not having a reference but it came from an Intel internal site. Here are the highlights for some of the past players: Cedar Mill: Last P4 processor. Followup to Prescott. Conroe: Desktop version of the Core2Duo processor. Mobile equivalent is Merom. Dothan: 2nd gen. Pentium M CPU. Nocona: Xeon server processor code name -- first CPU with EMT64 (amd64) compatibility [and hence first non-IA64 bit Xeon processor to feature 64-bit compatibility; not sure if it was the first non-IA64 64-bit designed Intel processor]. Prescott: Single-core processor with HTT. Base CPU for [later generation] P4 processors, and the dual core Pentium D [basically the larger cousin of the Northwood CPUs]. Prescott was compacted into Cedar Mill -- from a 90nm (?) process to 65nm. Sossaman: Dual-core Xeon processor, based off of Yonah. Woodcrest: Server version of Conroe/Merom. Yonah: First Duo/Solo processor. Based off of Dothan. Some people have claimed that pentium-m is better for Core * based processors because of the shorter pipelines and lower frequency (found via a google discussion about gcc and -march, but I can't be sure of its validity), but pentium-m is a 32-bit CPU, thus it's not an option for 64-bit computing. Intel suggests using -march=prescott (32-bit) and -march=nocona (64-bit) with gcc on Core2Duo processors and equivalent Xeons. You can also find your CPU's type by going to this page: http://www.intel.com/products/server/processors/index.htm?iid=serv_body+proc, and searching for the appropriate model number. Your frequency and model should be reported in your BIOS, if not the first couple lines of dmesg in FreeBSD. Cheers, -Garrett ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]
Re: CPUTYPE in general - was Re: Which CPUTYPE for a dualcore Xeon on AMD64
In [EMAIL PROTECTED], Garrett Cooper [EMAIL PROTECTED] typed: Martin Turgeon wrote: Mike Meyer a écrit : In [EMAIL PROTECTED], Roman Divacky [EMAIL PROTECTED] typed: For the record, I believe the nocona cores are: pentium 4/some prescott, prescott 2m, cedar mill pentium D/all core 2 duo/all All xeons with sse3 except the sossaman cored Xeon LV. The prescott cores are: pentium 4/some prescott xeon lv (sossaman core) core solo core duo Thanks a lot for the precision, I will use nocona for my dual core Xeon. Cedar Mill: Last P4 processor. Followup to Prescott. Nocona: Xeon server processor code name -- first CPU with EMT64 (amd64) compatibility [and hence first non-IA64 bit Xeon processor to feature 64-bit compatibility; not sure if it was the first non-IA64 64-bit designed Intel processor]. Prescott: Single-core processor with HTT. Base CPU for [later generation] P4 processors, and the dual core Pentium D [basically the larger cousin of the Northwood CPUs]. Prescott was compacted into Cedar Mill -- from a 90nm (?) process to 65nm. From what I can tell, the Prescott went through a number of iterations; the first of them didn't have HTT, or had it but it was disabled. Later versions added that, EMT64, virtualization, and other things. If my information is correct, the nocona was the first version of the prescott core with em64t, and only used in Xeons. And yes, I believe prescott and following were 90nm until Cedar Mill. Intel suggests using -march=prescott (32-bit) and -march=nocona (64-bit) with gcc on Core2Duo processors and equivalent Xeons. Note that /usr/share/mk/sys.mk includes bsd.mk.cpu, which overrides CPUTYPE if it's set to prescott or nocona. It turns nocona into prescott if you're building for i386 and prescott into nocona if you're building for amd64. So the correct answer to the question Do I set CPUTYPE to nocona or prescott in /etc/make.conf? would seem to be It doesn't matter. You can also find your CPU's type by going to this page: http://www.intel.com/products/server/processors/index.htm?iid=serv_body+proc, and searching for the appropriate model number. Your frequency and model should be reported in your BIOS, if not the first couple lines of dmesg in FreeBSD. I've never seen those report core names. Possibly you're referring specifically to the Xeon cpu model numbers? thanks, mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/consulting.html Independent Network/Unix/Perforce consultant, email for more information. ___ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to [EMAIL PROTECTED]