lkml.org 
[lkml]   [1999]   [May]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject2.2.7_andrea6.bz2
2.2.7_andrea6.bz2 is out. As main things now I dropped the lockmap lock
and I support swapcache in the shm memory. I do swapin readahead also for
SHM pages. I also do async swapout for shm pages.

The only thing I don't do with the swap cache is to map the swap cache in
the pte in a readonly access. I don't think it worth to increase the
complexity of the swap cache code to achieve such behaviour (that really
seems to harm performances in real life due many more pagefaults at the
first write access to a mapped swap cache page).

I also cleaned up a bit the code of 2.2.6_andrea4. Everything seems rock
solid. (forget to tell don't use the unofficial 2.2.6_andrea5 because I
missed a swap_free in shm.c ;).

I also included my fix for the popular SMP lockup with the two network
cards drivers that are using disable_irq/enable_irq instead of
spin_lock_irq. I think it's the right one but the issue it's under
discussion on the list.

This new patch should be rock solid.

Now I am also doing some nice benchmark with HINT hacked by me to run only
in virtual (swap) memory. I'll attach the graph. "DOUBLE-2.2.7" (green) is
referred to a clean 2.2.7. "DOUBLE" is 2.2.7_andrea6.bz2 (red). The
machine I run the test is a genuine P5166mhz with a slowww HD. The memory
of the machine is this when it's idle:

andrea@black:~$ free
total used free shared buffers cached
Mem: 31164 5824 25340 3032 264 3408
-/+ buffers/cache: 2152 29012
Swap: 72540 1432 71108

So basically it start to swap at 25mbyte of memory alloced.

The graph is not logaritmic in the X because it seems that it looks better
with a linear X when the results came from swap.

In X you have the memory used by the benchmark, and in Y you have a
performance number that should increase linear with the performances that
the machine had in such run.

HINT is __far__ to be interesting for the global VM improvement I did
though, simply because it never stress the cache or the buffers, except to
take itself mapped in memory (and the binary are some kbyte of code). So
the HINT benchmark done by me mainly tell us __only__ the swapout
performances (still interesting though). And my tree seems to kick to swap
pages slower. But it runs 2 times better than 2.2.7 when the benchmark is
run at the start of the swap (most common usage). The reason it's better
is for my lru handling that preserve _two_ times better the working set
(100000 netquips at 25mbyte of RAM by 2.2.7 VS 200000 netquips at 25mbyte
of RAM by 2.2.7_andrea6.bz2).

Before going to swap the HINT benchmark is the same (and I never run it
anymore) simply because HINT (when fits in RAM) _never_ stress the OS.

I am working to fix also the swap performance issue (the right part of the
graph) but at such point things are so slow that I am not too much worried
to optimize a so little interesting case. But I'll try to see if I can
came with something of interesting... It's very fun to produce such graphs
though ;)).

begin 644 2.2.7-vs-2.2.7_andrea6.gif
M1TE&.#=A=P*X`?<```````#\`/@``/C\^&0!!%0``!@```@``,0;Q$.V0PP`
M#$``0-Z@`)OA``,-`$!``%`,#`$X]@#4U`#$Q,J7@TP``!H``$`$!,```%$`
M`"``34```,`3"F(``!3T]HP`!>P``/\`_[\`__T!H%@`]1H`_T``O^#6J>R,
M`/\`A;\``<"@7F+A`10-30A``+^I#!0`U`P`Q``0@P``!,"G^<0294,```P`
M]M0$!-P```8`R$```@.(7@!-`0`8'``(`*@$J5,``!@`Y`@``DR(4`%-```8
M%\0X#$/L`0S_U$"_Q+0U@_\#`+]`!/1P`.=4``880T`(`3BX7E/K`1C_'`B_
M`*@$`Q@`00@`"$S$<`%#;P`,1P!`",2(<$--;PP81T`("*B(!%--`!@8``@(
M`.#$#.Q;]?\8U+\(Q,8;@R.V``4``$``!#@$`!@`7P@``:B(4!@8%TP$`@$`
M````)P``",2(`$--``P8`$`(`"!P&.WL//__-;^_"&`U`+^,``@#`&VD`Z54
M``T8``#PD`#KT@#_%0"_"*@$3.T`];\`OPC$"N!#`#P,%P"(`0!-```8`*R(
M5NU-`?\8`+\(`*C$`.U;``@`SN``33P`&@``P```40``(```0%``I.T`D_\`
M#;\`"+`$U.D`\0<`_P@`OPB(_^!-_SP8_T`(_P&H``#L``#_``"_```UB`&,
M\0`#_P!`O[BD)@%4@@`8&0`(0``HU`#L\0#__P"_OP`$I```DP``#0#$!@!#
M```,``!```"(P`!-4?\8(+\(0/2(8.A-\O\8_[\(OQ7$U+%;\0`8_P`(OQD`
M`2``&^D`MO]0H+_LX0#_#0"_0`!O#`"/.``#U`!`Q`!8A`"_!`!O``"/```#
M`#2(V>E-`/\8]```````````````````````````````````````````````
M````````````````````````````````````````````````````````````
M`````````````````````"P`````=P*X`0`(_@`'"!Q(L*#!@P@3*ES(L*'#
MAQ`C2IQ(L:+%BQ@S:MS(L:/'CR!#BAQ9$(!)@293#@10LB5!EB1CRIQ)LZ;-
MFSASZMS)LR?*E0-@O@P*5"A+HT1]*EW*M*G3IU"C2E6*5.C/GU6+`IW*M:O7
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
GZJ_<2K,N^S)F"[;..HQR*T]Q:U)YFK=ZN[=\V[=^^[>`"QP!`0`[
`
end

Andrea Arcangeli

PS. if you benchmark it as usual let me know ;)).


-
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/

\
 
 \ /
  Last update: 2005-03-22 13:51    [W:0.113 / U:0.348 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site