process-scheduling, speed on dual-proc ?

nbdnbd
Posted:
in macOS edited January 2014
as i have no expirience with osx i am thinking about speed with dual-processor-machines (e.g. DP G4 800mhz) vs single-processor-machines on macosx.



as i understand the operating system, all the process scheduling, running, queueing etc. is done by the kernel.

is the kernel a multiprocessor-aware kernel ?

does the kernel automatically recognises two processors and schedules all its processes symmetrical to both of them ?



if it is, any dual-processor-g4 under macosx should run almost twice as fast in computing-intensive tasks as a (mhz-,busspeed-,etc.) comparable computer.



so a dp g4 800 should run a lot faster than a g4 867.



is it so ?



how computing-intensive is aqua for the cpu ?

how computing-intensive are harddisk-transfers ?

how computing-intensive is networking ?

(all compared to 100%-numbercrunching-videorendering)



kindly awaiting your answers,

andreas



ps. please excuse my bad english if any. its not my native language.

Comments

  • Reply 1 of 3
    To answer your first question, yes a dula-processor machine will be faster than a single processor machine. OS X is FULLY multithreaded and multi-processor aware. This will mean a big boost in performance but I will not provide double the performance due to other system bottlenecks such as RAM, disk access, bus speed, etc.



    As for your other questions regarding how intensive the items are, I have no numbers concerning these items.



    I hope this helps you somewhat.
  • Reply 2 of 3
    tacotaco Posts: 2member
    [quote]Originally posted by nbd:

    <strong>as i have no expirience with osx i am thinking about speed with dual-processor-machines (e.g. DP G4 800mhz) vs single-processor-machines on macosx.



    as i understand the operating system, all the process scheduling, running, queueing etc. is done by the kernel.

    is the kernel a multiprocessor-aware kernel ?

    does the kernel automatically recognises two processors and schedules all its processes symmetrical to both of them ?



    if it is, any dual-processor-g4 under macosx should run almost twice as fast in computing-intensive tasks as a (mhz-,busspeed-,etc.) comparable computer.



    so a dp g4 800 should run a lot faster than a g4 867.



    is it so ?



    how computing-intensive is aqua for the cpu ?

    how computing-intensive are harddisk-transfers ?

    how computing-intensive is networking ?

    (all compared to 100%-numbercrunching-videorendering)



    kindly awaiting your answers,

    andreas



    ps. please excuse my bad english if any. its not my native language.</strong><hr></blockquote>



    1. Yes, the Mach kernel is multi-processor aware and handles thread scheduling on multiple processors. Apple machines support SMP (Symmetric Multiprocessing); multiple processors share the main memory system and run one instance of the operating system.



    2. It is false statement to say that a dual processor SMP machine (beit a G4 or otherwise) can run a CPU intensive thread twice as fast as a single processor machine. The advantage that a multiprocessor SMP machine has over a single processor machine is that as many threads as there are processors can execute simultaneously. Individual threads cannot execute on more than one processor at a time. That said, some CPU intensive tasks can be sped up on SMP machines by breaking the work up into multiple threads that can execute independently on multiple processors. How much you can really speed it up depends on the characteristics of the work that is being done.



    The real world benefit comes because modern operating systems like Mac OS X are hyperthreaded--there are always threads waiting to be executed, so having multiple processors to do it on speeds up the system. If you run many programs at once, the system will feel smoother and more responsive as well.



    3. Yes, a dual 800 MHz G4 generally feels a lot faster and more responsive than a single 867 MHz machine due to reasons I've just mentioned.



    4. The real question is not how computing intensive is Aqua, the question is how computing intensive is the Quartz Compositor. Think of your desktop as being layered, with each window being in its own layer. Windows partially obstruct each other, some may have transparency, etc. The compositor flattens the layers into the image that is displayed on screen (just like how layers are flattened in PhotoShop.) The Quartz Compositor is remarkably efficient for a software implementation but still taxes the CPU somewhat. This is why Apple has implemented the compositor using hardware in Jaguar (Quartz Extreme).



    5. Hard disk transfers are not CPU intensive because they are handled using DMA.



    6. Network transfers are also handled by DMA without the CPU's involvement. There is some CPU work involved since networking protocols need to assemble and disassemble packets. Mac OS X benefits from many years of optimizations on BSD sockets-based systems.



    In case you're wondering, I have a dual G4/450.



    [ 07-10-2002: Message edited by: taco ]</p>
  • Reply 3 of 3
    nbdnbd Posts: 10member
    thank you for your input ! it helped me out! but my next question follows, but in a different thread.
Sign In or Register to comment.