Results 26 to 40 of 40
Thread: Which Processor Better!!
-
10-12-2002, 11:14 PM #26Web Hosting Master
- Join Date
- Jun 2001
- Location
- Earth
- Posts
- 1,259
As far as I know, windows does not recognize or take advantage of the hyperthreading. For now only *nix systems do.
Frank█ Umbra Hosting
█ cPanel | Softaculous | CloudLinux | R1Soft | Ksplice
█ Web Hosting, Reseller Hosting, VPS, Dedicated Servers, Colocation
█ UmbraHosting.com
-
10-13-2002, 02:18 AM #27Junior Guru
- Join Date
- May 2002
- Posts
- 207
Intel Xeon anyday.
AMD in a server environment, especially is 1U cases, is pretty much asking for it IMHO.Alvin Slocombe
E-Insites - "Web services, simplified."
-
10-17-2002, 05:19 PM #28Newbie
- Join Date
- Aug 2002
- Posts
- 5
Xeons also have a LOT more cache. This increases speed quite dramatically (like the Williamette to Thoroughbred, or the P4 Celeron to the Williamette).
AMD in a server environment isn't too viable at the moment. AMD have yet to prove stability, and based on my experience with a Dual Athlon MP Workstation, they have a fair bit to go yet.
Oh, and apparently the P4 does support dual processors, it has the pins, and it has the code. But, Intel won't let any manufacturer a) Produce a motherboard with 2 478-pin sockets, b) Produce a chipset compatible with both the P4 and dual CPUs at the same time.
-
10-17-2002, 05:49 PM #29Web Hosting Master
- Join Date
- Mar 2002
- Location
- Westbury, LI NY
- Posts
- 1,705
Originally posted by ffeingol
As far as I know, windows does not recognize or take advantage of the hyperthreading. For now only *nix systems do.
This C program will tell you waht you need to nkow (on a window system) in reguards to your CPUs:
Code://------------------------------------------------------------------- // // Copyright C 2001, Intel Corporation . Other brands and names may be claimed as the property of others. // // // CPU Counting Utility // Date : 10/30/2001 // Version: 1.4 // // // // File Name: CPUCount.cpp // // Note: 1) LogicalNum = Number of logical processors per PHYSICALPROCESSOR. If you want to count // the total number of logical processors, multiply this number with the total number of // physical processors (PhysicalNum) // // 2) To detect whether hyper-threading is enabled or not is to see how many logical ID exist // per single physical ID in APIC // // 3) For systems that don't support hyper-threading like AMD or PIII and below. the variable // LogicalNum will be set to 1 (which means number of logical processors equals to number of // physical processors.) // // 4) Hyper-threading cannot be detected when application cannot access all processors in // the system. The number of physical processors will be set to 255. Make sure to enable ALL // physical processors at startup of windows, and applications calling this function, CPUCount, // are NOT restricted to run on any particular logical or physical processors(can run on ALL // processors.) // // 5) Windows currently can handle up to 32 processors. // // //---------------------------------------------------------------------- --------------------------- #define HT_BIT 0x10000000 // EDX[28] Bit 28 is set if HT is supported #define FAMILY_ID 0x0F00 // EAX[11:8] Bit 8-11 contains family processor ID. #define PENTIUM4_ID 0x0F00 #define EXT_FAMILY_ID 0x0F00000 // EAX[23:20] Bit 20-23 contains extended family processor ID #define NUM_LOGICAL_BITS 0x00FF0000 // EBX[23:16] Bit 16-23 in ebx contains the number of logical // processors per physical processor when execute cpuid with // eax set to 1 #define INITIAL_APIC_ID_BITS 0xFF000000 // EBX[31:24] Bits 24-31 (8 bits) return the 8-bit unique // initial APIC ID for the processor this code is running on. // Default value = 0xff if HT is not supported // Status Flag #define HT_NOT_CAPABLE 0 #define HT_ENABLED 1 #define HT_DISABLED 2 #define HT_SUPPORTED_NOT_ENABLED 3 #define HT_CANNOT_DETECT 4 unsigned int HTSupported(void); unsigned char LogicalProcPerPhysicalProc(void); unsigned char GetAPIC_ID(void); unsigned char CPUCount(unsigned char *, unsigned char *); #include #include void main(void) { unsigned char LogicalNum = 0, // Number of logical CPU per ONE PHYSICAL CPU PhysicalNum = 0, // Total number of physical processor HTStatusFlag = 0; printf("CPU Counting Utility\n"); printf("Version 1.4\n"); printf("Copyright (C) 2001 Intel Corporation. All Rights Reserved\n\n"); HTStatusFlag = CPUCount(&LogicalNum, &PhysicalNum); switch(HTStatusFlag) { case HT_NOT_CAPABLE: printf("Hyper-threading technology not capable\n"); break; case HT_DISABLED: printf("Hyper-threading technology disabled\n"); break; case HT_ENABLED: printf("Hyper-threading technology enabled\n"); break; case HT_SUPPORTED_NOT_ENABLED: printf("Hyper-threading technology capable but not enabled\n"); break; case HT_CANNOT_DETECT: printf("Hyper-threading technology cannot be detected\n"); break; } printf("Number of logical processors per physical processor: %d\n", LogicalNum); if (PhysicalNum != (unsigned char)-1) printf("Number of physical processors: %d\n", PhysicalNum); else { printf("Can't determine number of physical processors\n"); printf("Make sure to enable ALL processors\n"); } printf("\n\nPress Enter To Continue\n"); getchar(); } unsigned int HTSupported(void) { unsigned int Regedx = 0, Regeax = 0, VendorId[3] = {0, 0, 0}; __try // Verify cpuid instruction is supported { __asm { xor eax, eax // call cpuid with eax = 0 cpuid // Get vendor id string mov VendorId, ebx mov VendorId + 4, edx mov VendorId + 8, ecx mov eax, 1 // call cpuid with eax = 1 cpuid mov Regeax, eax // eax contains family processor type mov Regedx, edx // edx has info about the availability of hyper-Threading } } __except (EXCEPTION_EXECUTE_HANDLER) { return(0); // cpuid is unavailable } if (((Regeax & FAMILY_ID) == PENTIUM4_ID) || (Regeax & EXT_FAMILY_ID)) if (VendorId[0] == 'uneG') if (VendorId[1] == 'Ieni') if (VendorId[2] == 'letn') return(Regedx & HT_BIT); // Genuine Intel with hyper-Threading technology return 0; // Not genuine Intel processor } unsigned char LogicalProcPerPhysicalProc(void) { unsigned int Regebx = 0; if (!HTSupported()) return (unsigned char) 1; // HT not supported // Logical processor = 1 __asm { mov eax, 1 cpuid mov Regebx, ebx } return (unsigned char) ((Regebx & NUM_LOGICAL_BITS) > 16); } unsigned char GetAPIC_ID(void) { unsigned int Regebx = 0; if (!HTSupported()) return (unsigned char) -1; // HT not supported // Logical processor = 1 __asm { mov eax, 1 cpuid mov Regebx, ebx } return (unsigned char) ((Regebx & INITIAL_APIC_ID_BITS) > 24); } unsigned char CPUCount(unsigned char *LogicalNum, unsigned char *PhysicalNum) { unsigned char StatusFlag = 0; SYSTEM_INFO info; *PhysicalNum = 0; *LogicalNum = 0; info.dwNumberOfProcessors = 0; GetSystemInfo (&info); // Number of physical processors in a non-Intel system // or in a 32-bit Intel system with Hyper-Threading technology disabled *PhysicalNum = (unsigned char) info.dwNumberOfProcessors; if (HTSupported()) { unsigned char HT_Enabled = 0; *LogicalNum= LogicalProcPerPhysicalProc(); if (*LogicalNum >= 1) // >1 Doesn't mean HT is enabled in the BIOS // { HANDLE hCurrentProcessHandle; DWORD dwProcessAffinity; DWORD dwSystemAffinity; DWORD dwAffinityMask; // Calculate the appropriate shifts and mask based on the // number of logical processors. unsigned char i = 1, PHY_ID_MASK = 0xFF, PHY_ID_SHIFT = 0; while (i < *LogicalNum) { i *= 2; PHY_ID_MASK <= 1; PHY_ID_SHIFT++; } hCurrentProcessHandle = GetCurrentProcess(); GetProcessAffinityMask(hCurrentProcessHandle, &dwProcessAffinity, &dwSystemAffinity); // Check if available process affinity mask is equal to the // available system affinity mask if (dwProcessAffinity != dwSystemAffinity) { StatusFlag = HT_CANNOT_DETECT; *PhysicalNum = (unsigned char)-1; return StatusFlag; } dwAffinityMask = 1; while (dwAffinityMask != 0 && dwAffinityMask <= dwProcessAffinity) { // Check if this CPU is available if (dwAffinityMask & dwProcessAffinity) { if (SetProcessAffinityMask(hCurrentProcessHandle, dwAffinityMask)) { unsigned char APIC_ID, LOG_ID, PHY_ID; Sleep(0); // Give OS time to switch CPU APIC_ID = GetAPIC_ID(); LOG_ID = APIC_ID & ~PHY_ID_MASK; PHY_ID = APIC_ID > PHY_ID_SHIFT; if (LOG_ID != 0) HT_Enabled = 1; } } dwAffinityMask = dwAffinityMask < 1; } // Reset the processor affinity SetProcessAffinityMask(hCurrentProcessHandle, dwProcessAffinity); if (*LogicalNum == 1) // Normal P4 : HT is disabled in hardware StatusFlag = HT_DISABLED; else if (HT_Enabled) { // Total physical processors in a Hyper-Threading enabled system. *PhysicalNum /= (*LogicalNum); StatusFlag = HT_ENABLED; } else StatusFlag = HT_SUPPORTED_NOT_ENABLED; } } else { // Processors do not have Hyper-Threading technology StatusFlag = HT_NOT_CAPABLE; *LogicalNum = 1; } return StatusFlag; }
DriverGuru summed it up best in saying:
On a non-ACPI platform Win2K can still find the multiple CPUs. And the whole point of SMT is that (with a suitable chipset) the logical processors present themselves to the OS as being indistinguishable from multiple real CPUs. They're just there.
If they weren't, Win2K would not see four logical CPUs, because even though it is ACPI-aware, it was written before SMT and so does not have the ACPI calls in it to enumerate the logical processors. Just being an ACPI-aware OS would not be enough. See?
For a complete write up, please see:
http://arstechnica.com/paedia/h/hype...reading-1.html
Hannibal always rights very simple to understand articles without dumbing things down. 2cpu tossed that up in their news section as well.
-
10-17-2002, 05:51 PM #30Web Hosting Master
- Join Date
- Mar 2002
- Location
- Westbury, LI NY
- Posts
- 1,705
Originally posted by alfturtle
Intel Xeon anyday.
AMD in a server environment, especially is 1U cases, is pretty much asking for it IMHO.
Please go read the spec sheet for the Xeon. Note that a P4 Xeon @ 2.4GHz has a typical power usage (thermal design power) of 65 Watts. If you read a bit further in the electrical specs this cpu runs at a maximum of 1.458 Volts at 51 Amps which calculates to a maximum thermal output of 74.4 Watts.
Now please read the spec sheet for the Athlon MP. Note that the the typical is only 54.5 Watts and the maximum is 60 Watts.
Since Xeons do in fact run hotter than AMDs (something most people dont get in and of itself), does that mean you cant have dual Xeons in 1U as well? Please tell these people:
http://www.siliconmechanics.com/sm-1270.php
http://www.dual-xeon-servers.com/
http://www.1hotwebserver.com/specifi...fm?ServerID=20
AMD's run cold compared to the P4.
-
10-17-2002, 05:57 PM #31Web Hosting Master
- Join Date
- Jun 2001
- Location
- Earth
- Posts
- 1,259
hmm, I've got a dual Xeon and according to the sensors, the CPU's are running at 27c or 81f. That does not seem too hot to me, but I'm not a hardware guy
Frank█ Umbra Hosting
█ cPanel | Softaculous | CloudLinux | R1Soft | Ksplice
█ Web Hosting, Reseller Hosting, VPS, Dedicated Servers, Colocation
█ UmbraHosting.com
-
10-17-2002, 06:26 PM #32Web Hosting Guru
- Join Date
- Jul 2000
- Posts
- 337
Originally posted by ffeingol
As far as I know, windows does not recognize or take advantage of the hyperthreading. For now only *nix systems do.
Frank
lets pretend that:
physical cpu 1 has logical cpus a and b
physical cpu 2 has logical cpus c and d
windows 2000 pro doesn't have coding to differentiate between physical and logical and will fill out it's 2 processor limit such that cpu1 = a, cpu2 = c and logical b,d would be ignored
2000 server would fill out is 4 processor limit such that cpu1 = a, cpu2 = c, cpu3 = b, cpu4 = d.
window xp pro (and .net standard edition) does understand hyperthreading and will fill out it's 2 processor limit such that cpu1 = a, cpu2 = c, cpu3 = b, cpu4 = d.
in all cases as far as the os is concerned it sees 4 cpus that it can toss threads at to get executed. As a result you will see performance gains... the numbers vary but in most cases you see about a 30% gain in performance from turning HT on...
-
10-18-2002, 01:47 PM #33Web Hosting Guru
- Join Date
- Aug 2002
- Location
- Denver, CO
- Posts
- 331
Dexter:
Very interesting. So you are saying W2k pro won't use the full processing power of the CPUs? So if you had a dual Xeon 2.0, the CPU useage would be:
CPU #1
cpu A: 1 Ghz
cpu B: none (should be 1Ghz from cpu #1)
CPU #2
cpu C: 1 Ghz
cpu D: none (should be 1Ghz from cpu #2)
Or, would CPU A use 2 Ghz and CPU C use 2 Ghz?
I'm very curious to get my Xeon and run that C script to see what it shows under W2k Professional versus W2k Server.
Andrew
-
10-18-2002, 05:12 PM #34Web Hosting Master
- Join Date
- Mar 2002
- Location
- Westbury, LI NY
- Posts
- 1,705
Win2k caps you at 2cpus. You wont see a 4th. Dexter is 100% correct with the CPU numvering/naming scheme and how different OS's interpet them.
Windows (nor unix for that matter) will not change the speed of the processor. If you have dual 2.6GHz cpus withouth SMT, it will show 2x 2.6GHz CPUs. If you turn on SMT it will show 4x 2.6GHz CPUs.
As for the performance boost, not always, in many cases it will slow you down. It depends on what you are doing, certain apss are written with both SMP and SMT in mind while others arent and some apps are written before SMT and coincidentally make things worse with SMT enabled. See here:
http://www.2cpu.com/Hardware/ht_analysis/
-
10-18-2002, 05:16 PM #35Web Hosting Master
- Join Date
- Mar 2002
- Location
- Westbury, LI NY
- Posts
- 1,705
One more thing...
Rebies: You can use the program or you can do the following. When your turn on the computer, check in the BIOS to see if SMT is enabled. Than look at taskmanager and check how many CPUs there are. You should get the following results.
Win2k Pro:
SMT disabled with 2 physical CPUs: 2
SMT enabled with 2 physical CPUs: 2
Win2k Server:
SMT disabled with 2 physical CPUs: 2
SMT enabled with 2 physical CPUs: 4
Win XP Pro:
SMT disabled with 2 physical CPUs: 2
SMT enabled with 2 physical CPUs: 4
Win XP Server:
SMT disabled with 2 physical CPUs: 2
SMT enabled with 2 physical CPUs: 4
-
10-18-2002, 09:24 PM #36Junior Guru
- Join Date
- Jul 2002
- Posts
- 183
Here is my dual 1.8 xeon
CPU0 states: 0.0% user, 3.0% system, 0.0% nice, 96.0% idle
CPU1 states: 0.0% user, 0.1% system, 0.0% nice, 99.0% idle
CPU2 states: 0.0% user, 3.0% system, 0.0% nice, 96.0% idle
CPU3 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
-
10-19-2002, 07:08 AM #37Junior Guru Wannabe
- Join Date
- Oct 2002
- Posts
- 89
We run Dual Xeons with 1-2 Mb cache.
We tried the 5U configuration but you always end-up with heating problems so we had to put them in full tower cases, which cost a hell of a lot more than if it is racked.
But, they come into thier best play when you run large MySql databases or forums. I think the investment pays off in the long run.
-
10-19-2002, 09:58 AM #38Web Hosting Master
- Join Date
- Apr 2002
- Posts
- 1,162
Take a look at this:
http://www.tomshardware.com/cpu/01q3...tvideo-01.html*AlphaOmegaHosting.Com* - Hosting since 1998
Managed Dedicated Servers and VPS
Hosted Exchange 2010 Email Service
-
10-19-2002, 10:25 AM #39Web Hosting Master
- Join Date
- Mar 2002
- Location
- Westbury, LI NY
- Posts
- 1,705
Take anything Tom says with a metris-ass-load of salt.
First there is that issue of photoshopping a picture or two on their websites and lieing about it. Read here:
http://arstechnica.infopop.net/OpenT...4&m=8400979235
See here:
http://www.amdzone.com/Fake.jpg
Than youve got guys like 2cpu's Murdock ranting about this:
http://www4.tomshardware.com/storage...305/index.html
The article I linked to deosn't even compare the reviewed drive against any SCSI drives. Yet they make the claim that it "outperforms SCSI drives" in the title no less.
That is blashemy.
But wait, toms hardware gets better...
http://forums.2cpu.com/showthread.php?s=&threadid=19187
Another 2cpu member says Tom cant be too bright in saying:
After testing the new Fujitsu MAM3184MP hard disk drive, independent PC hardware review Web site Tom's Hardware Guide has described Fujitsu as being "a master of its trade." The high-end MAM3184MP with Ultra160 interface runs at 15,000rpm, and according to the review "it outperforms just about all other models out there."
Has he ever seen a cheetah?
More Tom bashing:
http://forums.2cpu.com/showthread.php?s=&threadid=14660
http://forums.2cpu.com/showthread.php?s=&threadid=11489
http://forums.2cpu.com/showthread.php?s=&threadid=6070
(Yes, that last link is form early 2001, 18 months ago people were calling Tom dumb, and he has only gotten worse)
More Tom bashing:
http://arstechnica.infopop.net/OpenT...4&m=2210979305
http://arstechnica.infopop.net/OpenT...5&m=9330922205
-
10-19-2002, 06:32 PM #40Junior Guru
- Join Date
- May 2002
- Posts
- 207
Acronym BOY,
Funny you mention silicon-mechanics.com, we have like 8 servers from them They all run great, they are not XEONs though, all PIII from earlier this year.
As far as my comment goes, I am just speaking from pure experience, in our hosting environment. Spec sheets are all fine and dandy, but when it comes down to it, real life actual usage experience counts for way more.
As far as servers go, our Intel machines including our XEON, P4 and PIII machines all out perform the AMDs as far as uptime goes, and performance. I see a lot of people offering AMD Athlon XP in 1U environments, and I am yet to see one that works without like altering the case config to add more fans. But like I said before, that's just my onion.Alvin Slocombe
E-Insites - "Web services, simplified."