[cvsnt] multi core/multi cpu scaling

Luigi D. Sandon cp at sandon.it
Mon Jan 21 08:47:05 GMT 2008


> multi-core CPU's is to handle multi threaded applications better -

Sorry, but your claims would require proof. "multi-tasking" means 
multi-process and multi-thread as well. The main difference usually is that 
a process has it own address space, while a thread works in the address 
space of the creating process. Both needs to be scheduled to get processor 
time - just threads don't require to change the address space.

Multicore CPUs handle multi-process and multi-thread applications as well. 
Differences can exist in the operating system scheduler, given the same CPU.

> Unlike Oracle Server and Apache Server, CVSNT server spawns a unique

Oracle spawns threads under Windows only - and AFAIK Apache too. Under *nix, 
Oracle spawns processes. That's because spawning processes under Windows is 
heavier than under *nix.

>will see each core listed as a CPU - which is complete rubbish - a core
>is not a CPU.  However a CPU can be as poor a performer (or worse) than

A core *is* a CPU - it's not "hyperthreading" where the same CPU would act 
as something alike a dual CPU, but not a full one. The difference is that 
"cores" are on the same chip, and may (not must...) share something - like 
L2 cache or the like. There are advantages and disavantages, in such shared 
design.

IMHO, if CVS will spawn a different process for each client connection, and 
is I/O intensive, it will benefit more from a multicore CPU than a high 
speed single core one.

-- 
Luigi D. Sandon 




More information about the cvsnt mailing list