[PATCH v2 0/5] makedumpfile: --split: assign fair I/O workloads in appropriate time
Atsushi Kumagai
kumagai-atsushi at mxc.nes.nec.co.jp
Thu Oct 16 20:50:35 PDT 2014
Hello,
The code looks good to me, thanks Zhou.
Now, I have a question on performance.
>The issue is discussed at http://lists.infradead.org/pipermail/kexec/2014-March/011289.html
>
>This patch implements the idea of 2-pass algorhythm with smaller memory to manage splitblock table.
>Exactly the algorhythm is still 3-pass,but the time of second pass is much shorter.
>The tables below show the performence with different size of cyclic-buffer and splitblock.
>The test is executed on the machine having 128G memory.
>
>the value is total time (including first pass and second pass).
>the value in brackets is the time of second pass.
Do you have any idea why the time of second pass is much larger when
the splitblock-size is 2G ? I worry about the scalability.
Thanks
Atsushi Kumagai
> sec
> cyclic-buffer 1 2 4 8 16 32
> 64
>splitblock-size
>1M 4.74(0.00) 4.22(0.01) 3.94(0.01) 3.78(0.02) 3.71(0.03) 3.73(0.07)
> 3.74(0.10)
>2M 4.74(0.00) 4.19(0.00) 3.94(0.01) 3.80(0.03) 3.71(0.03) 3.72(0.07)
> 3.72(0.09)
>4M 4.73(0.00) 4.21(0.01) 3.95(0.01) 3.78(0.02) 3.70(0.02) 3.73(0.08)
> 3.73(0.10)
>8M 4.73(0.00) 4.19(0.00) 3.94(0.01) 3.83(0.02) 3.73(0.03) 3.72(0.07)
> 3.74(0.10)
>16M 4.74(0.01) 4.21(0.00) 3.94(0.01) 3.76(0.01) 3.73(0.03) 3.73(0.08)
> 3.74(0.10)
>32M 4.72(0.00) 4.20(0.02) 3.92(0.01) 3.77(0.02) 3.71(0.02) 3.70(0.06)
> 3.74(0.10)
>64M 4.74(0.01) 4.20(0.00) 3.95(0.01) 3.78(0.02) 3.70(0.02) 3.71(0.07)
> 3.72(0.09)
>128M 4.73(0.01) 4.20(0.00) 3.94(0.01) 3.78(0.02) 3.76(0.03) 3.72(0.08)
> 3.74(0.09)
>256M 4.75(0.02) 4.22(0.02) 3.96(0.03) 3.78(0.02) 3.70(0.03) 3.70(0.07)
> 3.74(0.11)
>512M 4.77(0.04) 4.21(0.03) 3.97(0.04) 3.79(0.03) 3.73(0.04) 3.75(0.09)
> 3.82(0.13)
>1G 4.82(0.09) 4.26(0.07) 4.00(0.08) 3.83(0.07) 3.76(0.08) 3.73(0.08)
> 3.76(0.12)
>2G 8.26(3.54) 7.34(3.14) 6.86(2.93) 6.56(2.80) 6.44(2.76) 6.45(2.79)
> 6.42(2.80)
>
>the performence of 3-pass algorhythm
>origin 8.25(3.54) 7.26(3.11) 6.80(2.91) 6.52(2.80) 6.39(2.76) 6.40(2.78)
> 6.45(2.85)
>
>
> sec
> cyclic-buffer 128 256 512 1024 2048 4096
> 8192
>splitblock-size
>1M 3.83(0.21) 3.94(0.33) 4.16(0.54) 4.61(0.99) 7.03(3.41) 8.73(5.11)
> 8.69(5.08)
>2M 3.86(0.21) 3.92(0.32) 4.16(0.54) 4.64(0.98) 7.02(3.41) 8.71(5.09)
> 8.72(5.09)
>4M 3.82(0.21) 3.95(0.32) 4.18(0.55) 4.62(0.99) 7.05(3.44) 8.70(5.09)
> 8.68(5.07)
>8M 3.82(0.21) 3.95(0.33) 4.17(0.54) 4.58(0.97) 7.03(3.41) 8.79(5.16)
> 8.71(5.09)
>16M 3.83(0.21) 3.93(0.31) 4.15(0.54) 4.60(0.98) 7.06(3.43) 8.76(5.13)
> 8.73(5.10)
>32M 3.84(0.22) 3.93(0.32) 4.15(0.54) 4.61(0.98) 7.00(3.40) 8.69(5.08)
> 8.75(5.13)
>64M 3.84(0.21) 3.94(0.33) 4.15(0.54) 4.60(0.98) 7.04(3.42) 8.74(5.10)
> 8.80(5.16)
>128M 3.85(0.22) 3.97(0.33) 4.16(0.54) 4.60(0.98) 7.07(3.44) 8.68(5.07)
> 8.69(5.07)
>256M 3.84(0.21) 3.94(0.33) 4.16(0.55) 4.64(1.00) 7.02(3.41) 8.74(5.11)
> 8.73(5.11)
>512M 3.85(0.24) 3.97(0.34) 4.17(0.56) 4.61(0.99) 7.05(3.44) 8.73(5.11)
> 8.75(5.13)
>1G 3.85(0.22) 3.96(0.35) 4.18(0.56) 4.65(1.00) 7.06(3.44) 8.76(5.12)
> 8.72(5.11)
>2G 6.53(2.91) 6.86(3.25) 7.54(3.92) 8.95(5.31) 10.60(6.97) 14.08(10.47)
> 14.32(10.60)
>
>the performence of 3-pass algorhythm
>origin 6.64(3.05) 6.81(3.24) 7.51(3.93) 8.86(5.30) 10.51(6.94) 13.92(10.36)
> 14.11(10.55)
>
>
>v1->v2:
> use splitblock instead of block
> add restriction (align to the page size) to splitblock size
> adjust the position of prepare_splitblock_table and check the return code
> use --splitblock-size to specify splitblock size and modify the print_info.c
>
>
>Zhou Wenjian (5):
> Add support for splitblock
> Add tools for reading and writing from splitblock table
> Add module of generating table
> Add module of calculating start_pfn and end_pfn in each dumpfile
> Add support for --splitblock-size
>
> makedumpfile.8 | 16 ++++
> makedumpfile.c | 254 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
> makedumpfile.h | 17 ++++
> print_info.c | 16 ++++-
> 4 files changed, 296 insertions(+), 7 deletions(-)
>
>_______________________________________________
>kexec mailing list
>kexec at lists.infradead.org
>http://lists.infradead.org/mailman/listinfo/kexec
More information about the kexec
mailing list