Operating System - OpenVMS
1753817 Members
8926 Online
108805 Solutions
New Discussion юеВ

Re: Itanium Dual core performance (-v- Alpha SMP)

 
SOLVED
Go to solution
Tom O'Toole
Respected Contributor

Re: Itanium Dual core performance (-v- Alpha SMP)


When SMT is enabled, VMS shows the hardware as having 8 processors, right? So in monitor/system, the maximum will be 800%, and if we're seeing more than 400% utilization, we are definitely getting a throughput increase. Is it as simple as that?
Can you imagine if we used PCs to manage our enterprise systems? ... oops.
Hoff
Honored Contributor

Re: Itanium Dual core performance (-v- Alpha SMP)

On Itanium, the threading implementation is effectively a fast context switch.

The SMT or hyperthreading or multithreading construct is inherently implemented with less than the resources of a full core. It usually falls somewhere between a fast context switch and something less than the full resources and capabilities of a full core.

If the full resources of a core were available, then the construction and the implementation would be called a core. Not SMT.

SMT is a way to try to use idle units within a core.

OpenVMS I64 presents the Itanium threading model as a core, but the scheduler "knows" it isn't really a full core.

http://64.223.189.234/node/13
Hein van den Heuvel
Honored Contributor

Re: Itanium Dual core performance (-v- Alpha SMP)

>> and if we're seeing more than 400% utilization, we are definitely getting a throughput increase. Is it as simple as that?

Unfortunately NOT.

Multithreading exploits MEMORY STALL TIME, for one thread as an opportunity to issue non-memory instructions for an other thread after a very-very light weight cpu-internal context switch.

So if we take a over-simplyfied example of two jobs doing cache-only CPU bound work, then there will be no significant memory cycles and a simple fairness algoritme will keep both threads working. To the OS both will look 100% busy, but only one will really be working at a time. The elapsed time for two jobs in this case will be exactly as long with hyperthreading on or off, and probably longer due to context switches. So the perception will be that it is the worst of all worlds: takes twice as long and uses twice the CPU. In reality the hyperthreading in the above probably had no significant effect.

The only, and only true, measure is end user application level performance such as wallclock time for a given business load/job.

fwiw,
Hein.
Tom O'Toole
Respected Contributor

Re: Itanium Dual core performance (-v- Alpha SMP)


OK, that's kind of weird, it updates both processes accounting data structures, I guess because it doesn't distinguish which one is active (perhaps because it would take too long)? Thanks for the info, this is pretty cool.
Can you imagine if we used PCs to manage our enterprise systems? ... oops.