re: Strange scheduling behavoir in SMP (kernel 2.2.14)

From: Peter Waltenberg (peterw@surf.dascom.com)
Date: Thu Jan 27 2000 - 17:26:39 EST


> aflores@ditec.um.es wrote
=============================
Hi,

I have a SMP machine with two Pentium III. In order to compare performance
with other machines I began a simple test:

for (i=0;i<MAX_NUMBER;i++)
  for(j=0;j<MAX_NUMBER;j++)
           c=a*b; /* These variables could be integer or double */

Using kernel 2.2.12 with SMP support this simple program take more time in my
machine than in a uniprocessor with K6-2 (the same problem appear in the last
stable kernel 2.2.14) Using xosview
application I discovered where the problem was. Instead of staying all the time
in the same cpu, the process go from one cpu to other with a big performance
lost.

Am I right?. Has been this problem solved in 2.3.x series?

Thanks a lot in advance.
===============================

No, it's still broken. Andrea has some patches for 2.2.
2.3 is still worse SMP than UP for anything CPU intensive.

I'm amazed that people are whinging about a phantom 5% in the scheduler when
there's a real 100%+ to be gained by fixing this one.

It's a real bug. The current scheduler kicks running processes even when
there's an idle CPU available. That means that heavy CPU use processes get
ping-ponged across CPU's.

It's bad on a Dual Celeron with small caches, it must be a real killer on an 8
way Xeon ;)

Peter

----------------------------------
Peter Waltenberg
Software Engineer
IBM Software Group, Gold Coast

Phone: +61 7 5578 8933
Fax: +61 7 5578 8146
----------------------------------

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jan 31 2000 - 21:00:19 EST