2002-09-10 13:10:46

by Hans Reiser

[permalink] [raw]
Subject: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

This patch should only go in if 2.4.20 is 3 weeks or more away,
otherwise it should wait for the next pre1.

It passes all of our testing, but it is the kind of code that is more
likely than most to have elusive lurking bugs. It cannot be tested in
2.5 first because 2.5 is too broken at this particular moment. For the
lkml readers let me say that it also should not go onto any distros
without three weeks of testing.;-)

It substantially reduces CPU consumption for large writes. It does so
by finally ridding the code of that 4k at a time write loop that
performed a balancing operation and a block allocation for each 4k
written. This might be the last substantial patch from Namesys before
V4.:) Chris still has some patches that are substantive though which I
hope he sends in very soon...

It also contains some trivial fixes in the second of the attachments
from Oleg.

Adding back mistakenly forgotten "attrs" mount option, fix a problem
with displacing_large_files allocator option and fix a bug in remounting
code on remount from readwarite to readwrite mode that can cause livelock
if there was delayed unlinks scheduled on the filesystem.


Marcelo, since you know how long it will be until 2.4.20, you should
decide if it will go in.

Hans


Attachments:
changesets for Marcelo (README changes removed). (70.34 kB)

2002-09-10 14:02:42

by Dave Jones

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

On Tue, Sep 10, 2002 at 05:15:10PM +0400, Hans Reiser wrote:

> It passes all of our testing, but it is the kind of code that is more
> likely than most to have elusive lurking bugs. It cannot be tested in
> 2.5 first because 2.5 is too broken at this particular moment.

What in particular holds you back from testing this in 2.5 ?
This seems quite dubious for inclusion first in what it supposed
to be the stable series.

Dave

--
| Dave Jones. http://www.codemonkey.org.uk
| SuSE Labs

2002-09-10 14:06:03

by Oleg Drokin

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Hello!

On Tue, Sep 10, 2002 at 04:07:00PM +0200, Dave Jones wrote:
> > It passes all of our testing, but it is the kind of code that is more
> > likely than most to have elusive lurking bugs. It cannot be tested in
> > 2.5 first because 2.5 is too broken at this particular moment.
> What in particular holds you back from testing this in 2.5 ?

I cannot boot into 2.5.34, that's it. ;)

> This seems quite dubious for inclusion first in what it supposed
> to be the stable series.

I believe that code itself is pretty stable now ;)
Also it got some testing outside of NAMESYS already.

Bye,
Oleg

2002-09-10 14:57:10

by Marcelo Tosatti

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)



On Tue, 10 Sep 2002, Hans Reiser wrote:

> This patch should only go in if 2.4.20 is 3 weeks or more away,
> otherwise it should wait for the next pre1.
>
> It passes all of our testing, but it is the kind of code that is more
> likely than most to have elusive lurking bugs. It cannot be tested in
> 2.5 first because 2.5 is too broken at this particular moment. For the
> lkml readers let me say that it also should not go onto any distros
> without three weeks of testing.;-)

So lets wait for 2.4.21pre for this one.

We already have enough stuff to be tested on 2.4.20-pre for reiserfs.

2002-09-10 15:05:11

by Oleg Drokin

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Hello!

On Tue, Sep 10, 2002 at 11:09:38AM -0300, Marcelo Tosatti wrote:
> > This patch should only go in if 2.4.20 is 3 weeks or more away,
> > otherwise it should wait for the next pre1.
> > It passes all of our testing, but it is the kind of code that is more
> > likely than most to have elusive lurking bugs. It cannot be tested in
> > 2.5 first because 2.5 is too broken at this particular moment. For the
> > lkml readers let me say that it also should not go onto any distros
> > without three weeks of testing.;-)
> So lets wait for 2.4.21pre for this one.
> We already have enough stuff to be tested on 2.4.20-pre for reiserfs.

Please pick up at least the fixes from
bk://thebsh.namesys.com/bk/reiser3-linux-2.4
I am removed everything related to reiserfs_file_write from there now, so you
can just do a pull.

Thank you.

Bye,
Oleg

2002-09-10 18:59:18

by Marcelo Tosatti

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)



On Tue, 10 Sep 2002, Oleg Drokin wrote:

> Hello!
>
> On Tue, Sep 10, 2002 at 11:09:38AM -0300, Marcelo Tosatti wrote:
> > > This patch should only go in if 2.4.20 is 3 weeks or more away,
> > > otherwise it should wait for the next pre1.
> > > It passes all of our testing, but it is the kind of code that is more
> > > likely than most to have elusive lurking bugs. It cannot be tested in
> > > 2.5 first because 2.5 is too broken at this particular moment. For the
> > > lkml readers let me say that it also should not go onto any distros
> > > without three weeks of testing.;-)
> > So lets wait for 2.4.21pre for this one.
> > We already have enough stuff to be tested on 2.4.20-pre for reiserfs.
>
> Please pick up at least the fixes from
> bk://thebsh.namesys.com/bk/reiser3-linux-2.4
> I am removed everything related to reiserfs_file_write from there now, so you
> can just do a pull.

Huh, now that I released -pre6 _with_ this stuff by accident its too late.
Silly me.

Can you make me a tree which backouts the big write code please?

Will be releasing a -pre7 shortly due to that.

2002-09-10 19:35:56

by Hans Reiser

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Marcelo Tosatti wrote:

>On Tue, 10 Sep 2002, Oleg Drokin wrote:
>
>
>
>>Hello!
>>
>>On Tue, Sep 10, 2002 at 11:09:38AM -0300, Marcelo Tosatti wrote:
>>
>>
>>>> This patch should only go in if 2.4.20 is 3 weeks or more away,
>>>>otherwise it should wait for the next pre1.
>>>>It passes all of our testing, but it is the kind of code that is more
>>>>likely than most to have elusive lurking bugs. It cannot be tested in
>>>>2.5 first because 2.5 is too broken at this particular moment. For the
>>>>lkml readers let me say that it also should not go onto any distros
>>>>without three weeks of testing.;-)
>>>>
>>>>
>>>So lets wait for 2.4.21pre for this one.
>>>We already have enough stuff to be tested on 2.4.20-pre for reiserfs.
>>>
>>>
>>Please pick up at least the fixes from
>>bk://thebsh.namesys.com/bk/reiser3-linux-2.4
>>I am removed everything related to reiserfs_file_write from there now, so you
>>can just do a pull.
>>
>>
>
>Huh, now that I released -pre6 _with_ this stuff by accident its too late.
>Silly me.
>
>Can you make me a tree which backouts the big write code please?
>
>Will be releasing a -pre7 shortly due to that.
>
>
>
>
>
We'll send it to you. Oleg has gone home and trying his cell phone does
not reach him, but hopefully he will read his email before bedtime.

It is not the end of the world though if this goes in.... Oleg sent it
out for testing, a user hit a bug, and then he fixed the bug and it
worked for the user. It passed testing by Oleg and Elena and some
unknown number of users on our mailing list. If you are going to
release in less than 10 days, then it needs to be yanked back out
though. If you want to yank it back out anyway, I also understand.

For now we will assume you want it out, and we'll send you the reverse
for it.

Hans

2002-09-10 19:51:13

by Hans Reiser

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Dave Jones wrote:

>On Tue, Sep 10, 2002 at 05:15:10PM +0400, Hans Reiser wrote:
>
> > It passes all of our testing, but it is the kind of code that is more
> > likely than most to have elusive lurking bugs. It cannot be tested in
> > 2.5 first because 2.5 is too broken at this particular moment.
>
>What in particular holds you back from testing this in 2.5 ?
>
Oleg answered this.

>This seems quite dubious for inclusion first in what it supposed
>to be the stable series.
>
> Dave
>
>
>
It is a performance tweak, not a new feature. 2.5 is for things like
reiser4. Also, remember that we do perform internal testing, and we
also tested this on our mailing list, which makes our tweaks much more
stable than most of the tweaks that go into 2.5 first. It is strange,
but Namesys seems to have much more of a release management
infrastructure than most code submitters (I think that means merely that
we have one;-), since there are two persons that test every patch, and
that makes us oddly unusual). However, waiting for 2.4.21pre1 is also
quite reasonable since the number of lines of new code is significant,
and reiserfs is used on mission critical servers. A lot depends on
just how soon 2.4.20 is planned to come out, and only Marcelo knows that.

Hans

2002-09-10 20:35:54

by Oleg Drokin

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Hello!

On Tue, Sep 10, 2002 at 03:16:51PM -0300, Marcelo Tosatti wrote:

>
> Huh, now that I released -pre6 _with_ this stuff by accident its too late.
> Silly me.
> Can you make me a tree which backouts the big write code please?

Can you execute bk cset -x1.594,1.595,1.596
And that will remove our code for now.

Actually you can only do bk cset -x1.594,1.595
So that while our code is gone, stuff that exports VFS functions will stay.

Is this enough for your purposes? (I hope it is).

> Will be releasing a -pre7 shortly due to that.

That's your decision of course.

Bye,
Oleg

2002-09-11 17:25:17

by Diego Calleja

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

On Tue, 10 Sep 2002 15:16:51 -0300 (BRT)
Marcelo Tosatti <[email protected]> escribi?:

>
> Huh, now that I released -pre6 _with_ this stuff by accident its too late.
> Silly me.
>
> Can you make me a tree which backouts the big write code please?
>
> Will be releasing a -pre7 shortly due to that.

Although some changes are going to be removed in -pre7, i've run tiobench to test the changes.
Kernel versions are plain -pre4 and -pre6

Unit information
================
File size = megabytes
Blk Size = bytes
Rate = megabytes per second
CPU% = percentage of CPU used during the test
Latency = milliseconds
Lat% = percent of requests that took longer than X seconds
CPU Eff = Rate divided by CPU% - throughput per cpu load

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre4 200 4096 1 11.78 28.50% 0.328 146.54 0.00000 0.00000 41
2.4.20-pre4 200 4096 2 10.30 23.02% 0.709 1349.77 0.00000 0.00000 45
2.4.20-pre4 200 4096 4 9.14 22.06% 1.585 1309.01 0.00000 0.00000 41
2.4.20-pre4 200 4096 8 8.92 21.84% 2.751 1472.06 0.00000 0.00000 41

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre4 200 4096 1 0.53 2.389% 7.307 20.08 0.00000 0.00000 22
2.4.20-pre4 200 4096 2 0.55 2.201% 14.157 39.98 0.00000 0.00000 25
2.4.20-pre4 200 4096 4 0.55 2.766% 27.646 80.48 0.00000 0.00000 20
2.4.20-pre4 200 4096 8 0.60 2.527% 49.805 159.53 0.00000 0.00000 24

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre4 200 4096 1 10.76 80.14% 0.348 1100.04 0.00000 0.00000 13
2.4.20-pre4 200 4096 2 11.63 87.26% 0.637 294.75 0.00000 0.00000 13
2.4.20-pre4 200 4096 4 11.42 85.24% 1.258 424.02 0.00000 0.00000 13
2.4.20-pre4 200 4096 8 11.49 84.29% 2.514 745.41 0.00000 0.00000 14

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre4 200 4096 1 1.13 3.620% 0.131 1.94 0.00000 0.00000 31
2.4.20-pre4 200 4096 2 1.18 3.770% 0.254 22.61 0.00000 0.00000 31
2.4.20-pre4 200 4096 4 1.14 4.002% 0.483 42.89 0.00000 0.00000 28
2.4.20-pre4 200 4096 8 1.19 4.048% 0.930 83.60 0.00000 0.00000 29
root@diego:/home/diego/kernel/tiobench/tiobench-0.3.3#

Unit information
================
File size = megabytes
Blk Size = bytes
Rate = megabytes per second
CPU% = percentage of CPU used during the test
Latency = milliseconds
Lat% = percent of requests that took longer than X seconds
CPU Eff = Rate divided by CPU% - throughput per cpu load

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 12.16 29.78% 0.317 135.42 0.00000 0.00000 41
2.4.20-pre6 200 4096 2 10.20 23.96% 0.697 1226.99 0.00000 0.00000 43
2.4.20-pre6 200 4096 4 9.49 23.14% 1.409 1197.27 0.00000 0.00000 41
2.4.20-pre6 200 4096 8 8.36 21.69% 2.970 5532.30 0.00391 0.00000 39

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 0.55 2.037% 7.106 30.01 0.00000 0.00000 27
2.4.20-pre6 200 4096 2 0.54 2.118% 14.170 40.09 0.00000 0.00000 26
2.4.20-pre6 200 4096 4 0.56 2.308% 27.007 79.38 0.00000 0.00000 24
2.4.20-pre6 200 4096 8 0.58 2.593% 51.235 321.18 0.00000 0.00000 22

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 12.01 87.73% 0.311 280.04 0.00000 0.00000 14
2.4.20-pre6 200 4096 2 11.36 83.79% 0.645 509.40 0.00000 0.00000 14
2.4.20-pre6 200 4096 4 11.58 85.63% 1.261 528.34 0.00000 0.00000 14
2.4.20-pre6 200 4096 8 9.67 69.58% 2.986 2158.01 0.00195 0.00000 14

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 1.19 4.191% 0.130 0.76 0.00000 0.00000 28
2.4.20-pre6 200 4096 2 1.16 4.067% 0.255 23.82 0.00000 0.00000 28
2.4.20-pre6 200 4096 4 1.23 4.159% 0.495 42.33 0.00000 0.00000 29
2.4.20-pre6 200 4096 8 1.21 4.432% 1.270 228.09 0.00000 0.00000 27
root@diego:/home/diego/kernel/tiobench/tiobench-0.3.3#



Diego Calleja

2002-09-11 17:34:45

by Hans Reiser

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Thanks for benchmarks. It suggests that the new code doesn't scale to
lots of threads as well as the old, but performs much better for single
threads. Maybe Oleg can comment on why that might be --- I have no idea.

On the whole it looks like a win, but why more threads perform worse in
some cases probably is worth trying to understand. Maybe we should have
a seminar on exactly what tiobench is doing and how it interacts with
this code.

Hans


Arador wrote:

>On Tue, 10 Sep 2002 15:16:51 -0300 (BRT)
>Marcelo Tosatti <[email protected]> escribi?:
>
>
>
>>Huh, now that I released -pre6 _with_ this stuff by accident its too late.
>>Silly me.
>>
>>Can you make me a tree which backouts the big write code please?
>>
>>Will be releasing a -pre7 shortly due to that.
>>
>>
>
>Although some changes are going to be removed in -pre7, i've run tiobench to test the changes.
>Kernel versions are plain -pre4 and -pre6
>
>Unit information
>================
>File size = megabytes
>Blk Size = bytes
>Rate = megabytes per second
>CPU% = percentage of CPU used during the test
>Latency = milliseconds
>Lat% = percent of requests that took longer than X seconds
>CPU Eff = Rate divided by CPU% - throughput per cpu load
>
>Sequential Reads
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre4 200 4096 1 11.78 28.50% 0.328 146.54 0.00000 0.00000 41
>2.4.20-pre4 200 4096 2 10.30 23.02% 0.709 1349.77 0.00000 0.00000 45
>2.4.20-pre4 200 4096 4 9.14 22.06% 1.585 1309.01 0.00000 0.00000 41
>2.4.20-pre4 200 4096 8 8.92 21.84% 2.751 1472.06 0.00000 0.00000 41
>
>Random Reads
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre4 200 4096 1 0.53 2.389% 7.307 20.08 0.00000 0.00000 22
>2.4.20-pre4 200 4096 2 0.55 2.201% 14.157 39.98 0.00000 0.00000 25
>2.4.20-pre4 200 4096 4 0.55 2.766% 27.646 80.48 0.00000 0.00000 20
>2.4.20-pre4 200 4096 8 0.60 2.527% 49.805 159.53 0.00000 0.00000 24
>
>Sequential Writes
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre4 200 4096 1 10.76 80.14% 0.348 1100.04 0.00000 0.00000 13
>2.4.20-pre4 200 4096 2 11.63 87.26% 0.637 294.75 0.00000 0.00000 13
>2.4.20-pre4 200 4096 4 11.42 85.24% 1.258 424.02 0.00000 0.00000 13
>2.4.20-pre4 200 4096 8 11.49 84.29% 2.514 745.41 0.00000 0.00000 14
>
>Random Writes
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre4 200 4096 1 1.13 3.620% 0.131 1.94 0.00000 0.00000 31
>2.4.20-pre4 200 4096 2 1.18 3.770% 0.254 22.61 0.00000 0.00000 31
>2.4.20-pre4 200 4096 4 1.14 4.002% 0.483 42.89 0.00000 0.00000 28
>2.4.20-pre4 200 4096 8 1.19 4.048% 0.930 83.60 0.00000 0.00000 29
>root@diego:/home/diego/kernel/tiobench/tiobench-0.3.3#
>
>Unit information
>================
>File size = megabytes
>Blk Size = bytes
>Rate = megabytes per second
>CPU% = percentage of CPU used during the test
>Latency = milliseconds
>Lat% = percent of requests that took longer than X seconds
>CPU Eff = Rate divided by CPU% - throughput per cpu load
>
>Sequential Reads
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre6 200 4096 1 12.16 29.78% 0.317 135.42 0.00000 0.00000 41
>2.4.20-pre6 200 4096 2 10.20 23.96% 0.697 1226.99 0.00000 0.00000 43
>2.4.20-pre6 200 4096 4 9.49 23.14% 1.409 1197.27 0.00000 0.00000 41
>2.4.20-pre6 200 4096 8 8.36 21.69% 2.970 5532.30 0.00391 0.00000 39
>
>Random Reads
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre6 200 4096 1 0.55 2.037% 7.106 30.01 0.00000 0.00000 27
>2.4.20-pre6 200 4096 2 0.54 2.118% 14.170 40.09 0.00000 0.00000 26
>2.4.20-pre6 200 4096 4 0.56 2.308% 27.007 79.38 0.00000 0.00000 24
>2.4.20-pre6 200 4096 8 0.58 2.593% 51.235 321.18 0.00000 0.00000 22
>
>Sequential Writes
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre6 200 4096 1 12.01 87.73% 0.311 280.04 0.00000 0.00000 14
>2.4.20-pre6 200 4096 2 11.36 83.79% 0.645 509.40 0.00000 0.00000 14
>2.4.20-pre6 200 4096 4 11.58 85.63% 1.261 528.34 0.00000 0.00000 14
>2.4.20-pre6 200 4096 8 9.67 69.58% 2.986 2158.01 0.00195 0.00000 14
>
>Random Writes
> File Blk Num Avg Maximum Lat% Lat% CPU
>Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
>---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
>2.4.20-pre6 200 4096 1 1.19 4.191% 0.130 0.76 0.00000 0.00000 28
>2.4.20-pre6 200 4096 2 1.16 4.067% 0.255 23.82 0.00000 0.00000 28
>2.4.20-pre6 200 4096 4 1.23 4.159% 0.495 42.33 0.00000 0.00000 29
>2.4.20-pre6 200 4096 8 1.21 4.432% 1.270 228.09 0.00000 0.00000 27
>root@diego:/home/diego/kernel/tiobench/tiobench-0.3.3#
>
>
>
>Diego Calleja
>
>
>
>
>



2002-09-12 07:05:42

by Oleg Drokin

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

Hello!

On Wed, Sep 11, 2002 at 07:30:23PM +0200, Arador wrote:

> > Huh, now that I released -pre6 _with_ this stuff by accident its too late.
> > Silly me.
> > Can you make me a tree which backouts the big write code please?
> > Will be releasing a -pre7 shortly due to that.
> Although some changes are going to be removed in -pre7, i've run tiobench to test the changes.
> Kernel versions are plain -pre4 and -pre6

What kind of hardware were these tests on?

Can you please conduct one more test with line 212 in fs/reiserfs/file.c
changed:
hint.preallocate = 0;
change 0 there to 1

Thank you.

Bye,
Oleg

2002-09-12 18:27:20

by Diego Calleja

[permalink] [raw]
Subject: Re: [BK] ReiserFS changesets for 2.4 (performs writes more than 4k at a time)

On Thu, 12 Sep 2002 11:10:29 +0400
Oleg Drokin <[email protected]> escribi?:

>
> What kind of hardware were these tests on?

The sis ide chipset can do multiword dma 2, (16 mb/s i think)
A seagate barracuda 40 GB 7200 rpm UDMA 100
32 mb ram and a cyrix 6x86 MX 233+ (200 mhz)

>
> Can you please conduct one more test with line 212 in fs/reiserfs/file.c
> changed:
> hint.preallocate = 0;
> change 0 there to 1

Sure ;)

I've run two tests per kernel version, (-pre5 and -pre6 + that tweak)
I can do more tests if you want ;)

Unit information
================
File size = megabytes
Blk Size = bytes
Rate = megabytes per second
CPU% = percentage of CPU used during the test
Latency = milliseconds
Lat% = percent of requests that took longer than X seconds
CPU Eff = Rate divided by CPU% - throughput per cpu load

The two 2.4.20-pre5 benchs

================================================= 2.4.20-pre5 =====================================================

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 12.12 26.54% 0.319 187.11 0.00000 0.00000 46
2.4.20-pre5 200 4096 2 10.46 27.03% 0.735 1425.90 0.00000 0.00000 39
2.4.20-pre5 200 4096 4 9.77 21.92% 1.361 1201.57 0.00000 0.00000 45
2.4.20-pre5 200 4096 8 8.84 20.69% 2.750 2648.61 0.00195 0.00000 43

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 0.54 2.590% 7.219 20.03 0.00000 0.00000 21
2.4.20-pre5 200 4096 2 0.56 2.395% 13.948 39.78 0.00000 0.00000 23
2.4.20-pre5 200 4096 4 0.54 2.494% 27.794 100.76 0.00000 0.00000 22
2.4.20-pre5 200 4096 8 0.60 2.809% 50.116 160.74 0.00000 0.00000 21

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 11.86 87.89% 0.314 265.36 0.00000 0.00000 13
2.4.20-pre5 200 4096 2 11.91 88.60% 0.616 504.35 0.00000 0.00000 13
2.4.20-pre5 200 4096 4 12.06 89.30% 1.224 280.16 0.00000 0.00000 14
2.4.20-pre5 200 4096 8 11.84 88.50% 2.466 432.46 0.00000 0.00000 13

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 1.14 4.236% 0.244 429.52 0.00000 0.00000 27
2.4.20-pre5 200 4096 2 1.13 4.060% 0.255 24.09 0.00000 0.00000 28
2.4.20-pre5 200 4096 4 1.15 3.668% 0.476 49.99 0.00000 0.00000 31
2.4.20-pre5 200 4096 8 1.16 4.098% 0.935 81.35 0.00000 0.00000 28


----------> The second becnh for -pre5....

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 12.22 29.07% 0.316 28.21 0.00000 0.00000 42
2.4.20-pre5 200 4096 2 10.86 25.96% 0.700 1049.20 0.00000 0.00000 42
2.4.20-pre5 200 4096 4 10.00 24.79% 1.463 1144.01 0.00000 0.00000 40
2.4.20-pre5 200 4096 8 8.70 20.44% 2.992 2106.78 0.00195 0.00000 43

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 0.55 3.295% 7.026 20.05 0.00000 0.00000 17
2.4.20-pre5 200 4096 2 0.55 2.327% 13.977 40.04 0.00000 0.00000 24
2.4.20-pre5 200 4096 4 0.54 3.095% 28.571 90.03 0.00000 0.00000 17
2.4.20-pre5 200 4096 8 0.61 2.610% 48.261 150.45 0.00000 0.00000 23

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 11.96 85.87% 0.313 340.07 0.00000 0.00000 14
2.4.20-pre5 200 4096 2 12.13 86.45% 0.612 279.22 0.00000 0.00000 14
2.4.20-pre5 200 4096 4 11.61 85.42% 1.229 356.53 0.00000 0.00000 14
2.4.20-pre5 200 4096 8 11.97 87.52% 2.421 616.12 0.00000 0.00000 14

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre5 200 4096 1 1.18 3.463% 0.128 0.87 0.00000 0.00000 34
2.4.20-pre5 200 4096 2 1.15 3.755% 0.244 22.89 0.00000 0.00000 31
2.4.20-pre5 200 4096 4 1.15 3.976% 0.456 44.42 0.00000 0.00000 29
2.4.20-pre5 200 4096 8 1.16 3.771% 0.879 102.81 0.00000 0.00000 31




========================================= 2.4.20-pre6 + tweak ==================================================


------>First for -pre6 ...

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 12.21 27.22% 0.315 20.37 0.00000 0.00000 45
2.4.20-pre6 200 4096 2 10.13 26.12% 0.682 1241.05 0.00000 0.00000 39
2.4.20-pre6 200 4096 4 9.42 21.67% 1.382 1048.15 0.00000 0.00000 43
2.4.20-pre6 200 4096 8 8.90 20.78% 2.882 2709.68 0.00195 0.00000 43

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 0.53 2.076% 7.328 20.65 0.00000 0.00000 26
2.4.20-pre6 200 4096 2 0.54 1.915% 14.206 40.18 0.00000 0.00000 28
2.4.20-pre6 200 4096 4 0.56 2.215% 27.334 90.00 0.00000 0.00000 25
2.4.20-pre6 200 4096 8 0.60 2.931% 49.111 259.38 0.00000 0.00000 21

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 11.76 85.21% 0.314 433.33 0.00000 0.00000 14
2.4.20-pre6 200 4096 2 11.56 84.14% 0.627 408.37 0.00000 0.00000 14
2.4.20-pre6 200 4096 4 11.48 84.32% 1.236 393.79 0.00000 0.00000 14
2.4.20-pre6 200 4096 8 8.91 62.13% 3.179 2189.47 0.00195 0.00000 14

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 1.16 3.851% 0.131 5.96 0.00000 0.00000 30
2.4.20-pre6 200 4096 2 1.13 4.196% 0.251 24.96 0.00000 0.00000 27
2.4.20-pre6 200 4096 4 1.11 3.540% 0.464 52.49 0.00000 0.00000 31
2.4.20-pre6 200 4096 8 1.14 4.026% 0.936 94.44 0.00000 0.00000 28

------> and second......

Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 11.87 27.17% 0.325 169.14 0.00000 0.00000 44
2.4.20-pre6 200 4096 2 10.14 24.79% 0.742 900.01 0.00000 0.00000 41
2.4.20-pre6 200 4096 4 9.23 22.37% 1.512 1294.06 0.00000 0.00000 41
2.4.20-pre6 200 4096 8 8.79 21.30% 2.723 3030.53 0.00195 0.00000 41

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 0.54 2.525% 7.206 20.13 0.00000 0.00000 21
2.4.20-pre6 200 4096 2 0.53 2.166% 14.600 39.85 0.00000 0.00000 24
2.4.20-pre6 200 4096 4 0.56 2.135% 27.360 79.95 0.00000 0.00000 26
2.4.20-pre6 200 4096 8 0.60 2.672% 50.614 231.03 0.00000 0.00000 22

Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 10.87 75.62% 0.340 981.54 0.00000 0.00000 14
2.4.20-pre6 200 4096 2 10.87 75.41% 0.675 1233.92 0.00000 0.00000 14
2.4.20-pre6 200 4096 4 10.40 73.56% 1.335 1160.16 0.00000 0.00000 14
2.4.20-pre6 200 4096 8 8.73 63.34% 3.192 1543.25 0.00000 0.00000 14

Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.4.20-pre6 200 4096 1 1.13 3.962% 0.130 0.67 0.00000 0.00000 28
2.4.20-pre6 200 4096 2 1.14 3.660% 0.249 29.81 0.00000 0.00000 31
2.4.20-pre6 200 4096 4 1.15 4.184% 0.469 43.59 0.00000 0.00000 27
2.4.20-pre6 200 4096 8 1.13 3.973% 0.887 84.27 0.00000 0.00000 28



Diego Calleja