public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* lmbench results for 2.4 and 2.5
@ 2003-03-22 16:11 Chris Friesen
  2003-03-22 16:31 ` William Lee Irwin III
                   ` (4 more replies)
  0 siblings, 5 replies; 20+ messages in thread
From: Chris Friesen @ 2003-03-22 16:11 UTC (permalink / raw)
  To: linux-kernel


My previous testing with unix sockets prompted me to do a few lmbench runs with 
2.4.19 and 2.5.65.  The results have me a bit concerned, as there is no area 
where 2.5 is faster and several where it is significantly slower.

In particular:

stat is 8 times worse
open/close are 7 times worse
fork is twice as expensive
tcp latency is 5 times worse
file deletion and mmap are both twice as expensive
tcp bandwidth is 5 times worse

Optimizing for muliple processors and heavy loads is nice, but this looks like 
its happening at the cost of basic performance.  Is this really the route we 
should be taking?



                  L M B E N C H  2 . 0   S U M M A R Y
                  ------------------------------------

Processor, Processes - times in microseconds - smaller is better
----------------------------------------------------------------
Host              OS  Mhz null null      open selct sig  sig  fork exec sh
                           call  I/O stat clos TCP   inst hndl proc proc proc
------ ------------- ---- ---- ---- ---- ---- ----- ---- ---- ---- ---- ----
doug    Linux 2.5.65  750 0.38 0.61 39.8 42.1       1.07 5.29 424. 2378 20.K
doug    Linux 2.5.65  750 0.38 0.54 40.2 44.2       1.07 5.31 439. 2386 20.K
doug    Linux 2.4.19  750 0.37 0.52 5.21 6.78  36.7 0.93 3.59 197. 1472 15.K

Context switching - times in microseconds - smaller is better
-------------------------------------------------------------
Host                 OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K
                         ctxsw  ctxsw  ctxsw ctxsw  ctxsw   ctxsw   ctxsw
--------- ------------- ----- ------ ------ ------ ------ ------- -------
doug       Linux 2.5.65 1.790 3.0300  118.7   46.1  158.3    46.5   158.2
doug       Linux 2.5.65 1.950 2.9800  122.6   46.3  159.5    47.1   158.7
doug       Linux 2.4.19 1.690 2.6700   92.9   44.4  155.2    45.0   155.8

*Local* Communication latencies in microseconds - smaller is better
-------------------------------------------------------------------
Host                 OS 2p/0K  Pipe AF     UDP  RPC/   TCP  RPC/ TCP
                         ctxsw       UNIX         UDP         TCP conn
--------- ------------- ----- ----- ---- ----- ----- ----- ----- ----
doug       Linux 2.5.65 1.790 8.926 16.3  29.7  60.6 171.5 204.6 216.
doug       Linux 2.5.65 1.950 9.695 18.1  28.6  59.8 173.4 207.0 212.
doug       Linux 2.4.19 1.690 6.146 12.4  17.8  44.2  26.2  66.6 101.

File & VM system latencies in microseconds - smaller is better
--------------------------------------------------------------
Host                 OS   0K File      10K File      Mmap    Prot    Page
                         Create Delete Create Delete  Latency Fault   Fault
--------- ------------- ------ ------ ------ ------  ------- -----   -----
doug       Linux 2.5.65  110.2   65.0  242.5  100.7   3130.0 0.621 4.00000
doug       Linux 2.5.65  110.1   63.5  237.2   96.6   3284.0 0.741 4.00000
doug       Linux 2.4.19   82.5   32.4  187.5   47.9   1660.0 1.177 3.00000

*Local* Communication bandwidths in MB/s - bigger is better
-----------------------------------------------------------
Host                OS  Pipe AF    TCP  File   Mmap  Bcopy  Bcopy  Mem   Mem
                              UNIX      reread reread (libc) (hand) read write
--------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- -----
doug       Linux 2.5.65 167. 94.7 14.3  212.5  354.8  214.5  215.9 474. 328.4
doug       Linux 2.5.65 175. 86.3 14.2  216.3  354.1  211.4  210.9 474. 328.8
doug       Linux 2.4.19 220. 108. 86.4  238.2  369.1  215.5  215.0 496. 328.0





-- 
Chris Friesen                    | MailStop: 043/33/F10
Nortel Networks                  | work: (613) 765-0557
3500 Carling Avenue              | fax:  (613) 765-2986
Nepean, ON K2H 8E9 Canada        | email: cfriesen@nortelnetworks.com


^ permalink raw reply	[flat|nested] 20+ messages in thread
* RE: lmbench results for 2.4 and 2.5 -- updated results
@ 2003-03-24 19:53 Pallipadi, Venkatesh
  2003-03-24 20:01 ` Larry McVoy
  0 siblings, 1 reply; 20+ messages in thread
From: Pallipadi, Venkatesh @ 2003-03-24 19:53 UTC (permalink / raw)
  To: linux-kernel; +Cc: Linus Torvalds


> -----Original Message-----
> From: Linus Torvalds [mailto:torvalds@transmeta.com] 
> Sent: Monday, March 24, 2003 12:40 AM
> To: linux-kernel@vger.kernel.org
> Subject: Re: lmbench results for 2.4 and 2.5 -- updated results
> 
> 
> >--page fault (is this significant?)
> 
> I don't think so, there's something strange with the lmbench pagefault
> tests, it only has one significant digit of accuracy, and I don't even
> know what it is testing. Because of the single lack of precision, it's
> hard to tell what the real change is.
> 

This single digit accuracy is coming from a minor integer division bug
in lmbench.
Appended LMbench patch should resolve it.

Thanks,
-Venkatesh

--- LMbench/src/lat_pagefault.c.org	Mon Mar 24 10:40:46 2003
+++ LMbench/src/lat_pagefault.c	Mon Mar 24 10:54:34 2003
@@ -67,5 +67,5 @@
 		n++;
 	}
 	use_int(sum);
-	fprintf(stderr, "Pagefaults on %s: %d usecs\n", file, usecs/n);
+	fprintf(stderr, "Pagefaults on %s: %f usecs\n", file, (1.0 *
usecs) / n);
 }


^ permalink raw reply	[flat|nested] 20+ messages in thread
* RE: lmbench results for 2.4 and 2.5 -- updated results
@ 2003-03-24 20:11 Nakajima, Jun
  0 siblings, 0 replies; 20+ messages in thread
From: Nakajima, Jun @ 2003-03-24 20:11 UTC (permalink / raw)
  To: Larry McVoy, Pallipadi, Venkatesh; +Cc: linux-kernel, Linus Torvalds

I don't think it's measuring anything useful at this point, especially with the cost of start(0) and stop(0,0) (they are eventually gettimeofday(), as far as I looked at the code) are substantial compared to page fault (sum += *end;) itself. If you move them outside the while loop, I think it's beter.

void
timeit(char *file, char *where, int size)
{
        char    *end = where + size - 16*1024;
        int     sum = 0;
        int     n = 0, usecs = 0;

        while (end > where) {
                start(0); 
                sum += *end;
                end -= 256*1024;
                usecs += stop(0,0);
                n++;
        }
        use_int(sum);
        fprintf(stderr, "Pagefaults on %s: %d usecs\n", file, usecs/n);



> -----Original Message-----
> From: Larry McVoy [mailto:lm@bitmover.com]
> Sent: Monday, March 24, 2003 12:01 PM
> To: Pallipadi, Venkatesh
> Cc: linux-kernel@vger.kernel.org; Linus Torvalds
> Subject: Re: lmbench results for 2.4 and 2.5 -- updated results
> 
> On Mon, Mar 24, 2003 at 11:53:44AM -0800, Pallipadi, Venkatesh wrote:
> > --- LMbench/src/lat_pagefault.c.org	Mon Mar 24 10:40:46 2003
> > +++ LMbench/src/lat_pagefault.c	Mon Mar 24 10:54:34 2003
> > @@ -67,5 +67,5 @@
> >  		n++;
> >  	}
> >  	use_int(sum);
> > -	fprintf(stderr, "Pagefaults on %s: %d usecs\n", file, usecs/n);
> > +	fprintf(stderr, "Pagefaults on %s: %f usecs\n", file, (1.0 *
> > usecs) / n);
> >  }
> 
> It's been a long time since I've looked at this benchmark, has anyone
> stared at it and do you believe it measures anything useful?  If not,
> I'll drop it from a future release.  If I remember correctly what I
> was trying to do was to measure the cost of setting up the mapping
> but I might be crackin smoke.
> --
> ---
> Larry McVoy              lm at bitmover.com
> http://www.bitmover.com/lm
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2003-03-26  2:08 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-22 16:11 lmbench results for 2.4 and 2.5 Chris Friesen
2003-03-22 16:31 ` William Lee Irwin III
2003-03-22 16:37 ` Martin J. Bligh
2003-03-22 17:29 ` Alan Cox
2003-03-23  5:27 ` Linus Torvalds
2003-03-24  6:08 ` lmbench results for 2.4 and 2.5 -- updated results Chris Friesen
2003-03-24  8:39   ` Linus Torvalds
2003-03-24  9:03     ` William Lee Irwin III
  -- strict thread matches above, loose matches on Subject: below --
2003-03-24 19:53 Pallipadi, Venkatesh
2003-03-24 20:01 ` Larry McVoy
2003-03-24 21:09   ` Martin J. Bligh
2003-03-24 23:36     ` Andrew Morton
2003-03-24 22:04       ` Larry McVoy
2003-03-24 22:04         ` Martin J. Bligh
2003-03-24 22:23           ` Larry McVoy
2003-03-24 22:19         ` Chris Friesen
2003-03-25 18:23         ` Martin J. Bligh
2003-03-26  1:50           ` Larry McVoy
2003-03-26  2:09             ` Martin J. Bligh
2003-03-24 20:11 Nakajima, Jun

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox