Linux RAID subsystem development
 help / color / mirror / Atom feed
* RAID-0 read perf. decrease after 2.4.20
@ 2003-11-20 16:45 Mikael Johansson
  2003-11-21 13:47 ` Marcelo Tosatti
  0 siblings, 1 reply; 6+ messages in thread
From: Mikael Johansson @ 2003-11-20 16:45 UTC (permalink / raw)
  To: linux-raid, linux-kernel


Hello All!

Has anyone else experienced a drastic drop in read performance on software
RAID-0 with post 2.4.20 kernels? We have a few Athlon XP's here at our
lab with double IDE disks on different channels set up as RAID-0. Some
bonnie++ benchmark results with various kernels, on the same machine
(Athlon XP 2400+, 2 GHz, 1.5 GB RAM, VIA chipset, 2*Maxtor 120 GB
6Y060L0):
		write	read
2.4.20-ac1:	88,000 	135,000 K/sec
2.4.21-pre7:	93,000   75,000
2.4.22-ac4:	94,000	 82,000

So the write speed has gone up a bit, but the read speed performance has
plunged. Any ideas on what happened between 2.4.20 and 2.4.21 and what to
do about it? I'm eagerly awaiting suggestions, good read speed is quite
critical for many of our calculations :-) I will of course provide more
details if necessary.

Have a nice day,
    Mikael J.
    http://www.helsinki.fi/~mpjohans/

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

* Re: RAID-0 read perf. decrease after 2.4.20
  2003-11-20 16:45 RAID-0 read perf. decrease after 2.4.20 Mikael Johansson
@ 2003-11-21 13:47 ` Marcelo Tosatti
  2003-11-21 19:56   ` Mikael Johansson
  0 siblings, 1 reply; 6+ messages in thread
From: Marcelo Tosatti @ 2003-11-21 13:47 UTC (permalink / raw)
  To: Mikael Johansson; +Cc: linux-raid, linux-kernel



On Thu, 20 Nov 2003, Mikael Johansson wrote:

> 
> Hello All!
> 
> Has anyone else experienced a drastic drop in read performance on software
> RAID-0 with post 2.4.20 kernels? We have a few Athlon XP's here at our
> lab with double IDE disks on different channels set up as RAID-0. Some
> bonnie++ benchmark results with various kernels, on the same machine
> (Athlon XP 2400+, 2 GHz, 1.5 GB RAM, VIA chipset, 2*Maxtor 120 GB
> 6Y060L0):
> 		write	read
> 2.4.20-ac1:	88,000 	135,000 K/sec
> 2.4.21-pre7:	93,000   75,000
> 2.4.22-ac4:	94,000	 82,000
> 
> So the write speed has gone up a bit, but the read speed performance has
> plunged. Any ideas on what happened between 2.4.20 and 2.4.21 and what to
> do about it? I'm eagerly awaiting suggestions, good read speed is quite
> critical for many of our calculations :-) I will of course provide more
> details if necessary.

There have been no significant changes in the RAID driver in 2.4.21, so I
suspect the cause for the slowdowns might the changes to the IO scheduler
(ll_rw_blk.c) or VM changes.

Isolating the -pre which the slowdown starts helps a lot.




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

* Re: RAID-0 read perf. decrease after 2.4.20
  2003-11-21 13:47 ` Marcelo Tosatti
@ 2003-11-21 19:56   ` Mikael Johansson
  2003-12-08 12:47     ` Marcelo Tosatti
  0 siblings, 1 reply; 6+ messages in thread
From: Mikael Johansson @ 2003-11-21 19:56 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: linux-raid, linux-kernel


Hello Marcelo and All!

On Fri, 21 Nov 2003, Marcelo Tosatti wrote:

> There have been no significant changes in the RAID driver in 2.4.21, so I
> suspect the cause for the slowdowns might the changes to the IO scheduler
> (ll_rw_blk.c) or VM changes.
>
> Isolating the -pre which the slowdown starts helps a lot.

I tested a few kernels to pin point the where tha changes occured. It
turned out that both 2.4.20 and 2.4.21-pre1 have bad read performance. The
2.4.20-ac's show good read speed. I tested it on two machines (different
from yesterday). I also checked the VIA chipset drivers version; that's
not the reason for the differences.

Athlon XP 2400+, 2.09 GHz, 1.5 GB RAM, 2*160 GB Maxtor Maxtor 6Y080L0
		VIA	write	read
2.4.19		none	10,000	  9,000 K/sec (chipset not supported)
2.4.20		3.35	73,000	 88,000
2.4.20-ac1	3.35-ac	70,000	135,000
2.4.20-ac2	3.35-ac	71,000	140,000
2.4.21-pre1	3.35-ac 71,000	 79,000
2.4.21-pre3	3.35-ac 71,000   79,000

Athlon 1.4 GHz, 1.5 GB RAM, 2*80 GB IC35L040AVER07-0 (IBM, I think)
2.4.13-ac8	?	49,000	 44,000 K/sec
2.4.19		3.34	53,000	 41,000
2.4.20-ac2	3.35-ac	50,000	 69,000
2.4.21-pre1	3.35-ac	53,000	 46,000

So there was apparently something very right with the 2.4.20-ac's. It
would be nice to get it back :-)

Have a nice weekend,
    Mikael J.
    http://www.helsinki.fi/~mpjohans/

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

* Re: RAID-0 read perf. decrease after 2.4.20
  2003-11-21 19:56   ` Mikael Johansson
@ 2003-12-08 12:47     ` Marcelo Tosatti
  2003-12-08 13:11       ` Marc-Christian Petersen
  0 siblings, 1 reply; 6+ messages in thread
From: Marcelo Tosatti @ 2003-12-08 12:47 UTC (permalink / raw)
  To: Mikael Johansson; +Cc: linux-raid, linux-kernel, riel, knobi, Jens Axboe, mason



On Fri, 21 Nov 2003, Mikael Johansson wrote:

> 
> Hello Marcelo and All!

Hi Mikael,

> 
> On Fri, 21 Nov 2003, Marcelo Tosatti wrote:
> 
> > There have been no significant changes in the RAID driver in 2.4.21, so I
> > suspect the cause for the slowdowns might the changes to the IO scheduler
> > (ll_rw_blk.c) or VM changes.
> >
> > Isolating the -pre which the slowdown starts helps a lot.
> 
> I tested a few kernels to pin point the where tha changes occured. It
> turned out that both 2.4.20 and 2.4.21-pre1 have bad read performance. The
> 2.4.20-ac's show good read speed. I tested it on two machines (different
> from yesterday). I also checked the VIA chipset drivers version; that's
> not the reason for the differences.
> 
> Athlon XP 2400+, 2.09 GHz, 1.5 GB RAM, 2*160 GB Maxtor Maxtor 6Y080L0
> 		VIA	write	read
> 2.4.19		none	10,000	  9,000 K/sec (chipset not supported)
> 2.4.20		3.35	73,000	 88,000
> 2.4.20-ac1	3.35-ac	70,000	135,000
> 2.4.20-ac2	3.35-ac	71,000	140,000
> 2.4.21-pre1	3.35-ac 71,000	 79,000
> 2.4.21-pre3	3.35-ac 71,000   79,000
> 
> Athlon 1.4 GHz, 1.5 GB RAM, 2*80 GB IC35L040AVER07-0 (IBM, I think)
> 2.4.13-ac8	?	49,000	 44,000 K/sec
> 2.4.19		3.34	53,000	 41,000
> 2.4.20-ac2	3.35-ac	50,000	 69,000
> 2.4.21-pre1	3.35-ac	53,000	 46,000
> 
> So there was apparently something very right with the 2.4.20-ac's. It
> would be nice to get it back :-)

2.4.20-aa included rmap and some VM modifications most notably
"drop_behind()" logic which I believe should be the reason for the huge
read speedups. Can you please try it? Against 2.4.23.

--- mm/filemap.c	2003-12-08 10:26:58.000000000 -0200
+++ mm/filemap.c.orig	2003-12-08 10:24:57.000000000 -0200
@@ -1055,56 +1055,6 @@
 	return page;	
 }
 
-
- /* We combine this with read-ahead to deactivate pages when we
- * think there's sequential IO going on. Note that this is
- * harmless since we don't actually evict the pages from memory
- * but just move them to the inactive list.
- *
- * TODO:
- * - make the readahead code smarter
- * - move readahead to the VMA level so we can do the same
- *   trick with mmap()
- *
- * Rik van Riel, 2000
- */
-static void drop_behind(struct file * file, unsigned long index)
-{
-       struct inode *inode = file->f_dentry->d_inode;
-       struct address_space *mapping = inode->i_mapping;
-       struct page *page;
-       unsigned long start;
-
-       /* Nothing to drop-behind if we're on the first page. */
-       if (!index)
-               return;
-
-       if (index > file->f_rawin)
-               start = index - file->f_rawin;
-       else
-               start = 0;
-
-       /*
-        * Go backwards from index-1 and drop all pages in the
-        * readahead window. Since the readahead window may have
-        * been increased since the last time we were called, we
-        * stop when the page isn't there.
-        */
-       spin_lock(&pagemap_lru_lock);
-       while (--index >= start) {
-               struct page **hash = page_hash(mapping, index);
-               spin_lock(&pagecache_lock);
-               page = __find_page_nolock(mapping, index, *hash);
-               spin_unlock(&pagecache_lock);
-               if (!page || !PageActive(page))
-                       break;
-               drop_page(page);
-       }
-       spin_unlock(&pagemap_lru_lock);
-}
-
-
-
 /*
  * Same as grab_cache_page, but do not wait if the page is unavailable.
  * This is intended for speculative data generators, where the data can
@@ -1376,12 +1326,6 @@
 		if (filp->f_ramax > max_readahead)
 			filp->f_ramax = max_readahead;
 
-               /*
-                * Move the pages that have already been passed
-                * to the inactive list.
-                */
-               drop_behind(filp, index);
-
 #ifdef PROFILE_READAHEAD
 		profile_readahead((reada_ok == 2), filp);
 #endif





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

* Re: RAID-0 read perf. decrease after 2.4.20
  2003-12-08 12:47     ` Marcelo Tosatti
@ 2003-12-08 13:11       ` Marc-Christian Petersen
  2003-12-08 13:21         ` Marcelo Tosatti
  0 siblings, 1 reply; 6+ messages in thread
From: Marc-Christian Petersen @ 2003-12-08 13:11 UTC (permalink / raw)
  To: Marcelo Tosatti, Mikael Johansson
  Cc: linux-raid, linux-kernel, riel, knobi, Jens Axboe, mason

On Monday 08 December 2003 13:47, Marcelo Tosatti wrote:

Hi Marcelo,

> 2.4.20-aa included rmap and some VM modifications most notably
> "drop_behind()" logic which I believe should be the reason for the huge
> read speedups. Can you please try it? Against 2.4.23.

-aa tree never had -rmap :)

ciao, Marc


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

* Re: RAID-0 read perf. decrease after 2.4.20
  2003-12-08 13:11       ` Marc-Christian Petersen
@ 2003-12-08 13:21         ` Marcelo Tosatti
  0 siblings, 0 replies; 6+ messages in thread
From: Marcelo Tosatti @ 2003-12-08 13:21 UTC (permalink / raw)
  To: Marc-Christian Petersen
  Cc: Marcelo Tosatti, Mikael Johansson, linux-raid, linux-kernel, riel,
	knobi, Jens Axboe, mason



On Mon, 8 Dec 2003, Marc-Christian Petersen wrote:

> On Monday 08 December 2003 13:47, Marcelo Tosatti wrote:
> 
> Hi Marcelo,
> 
> > 2.4.20-aa included rmap and some VM modifications most notably
> > "drop_behind()" logic which I believe should be the reason for the huge
> > read speedups. Can you please try it? Against 2.4.23.
> 
> -aa tree never had -rmap :)

-ac I mean, sorry. 


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

end of thread, other threads:[~2003-12-08 13:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-11-20 16:45 RAID-0 read perf. decrease after 2.4.20 Mikael Johansson
2003-11-21 13:47 ` Marcelo Tosatti
2003-11-21 19:56   ` Mikael Johansson
2003-12-08 12:47     ` Marcelo Tosatti
2003-12-08 13:11       ` Marc-Christian Petersen
2003-12-08 13:21         ` Marcelo Tosatti

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