Size Can Matter: Ramdisk Journal Metadata Performance – Part 2

Previously, we examined the impact of journal size using a separate disk on metadata performance as measured by fdtree. In this follow-up we repeat the same test but use a ramdisk for the journal, thereby boosting the best performance. Or does it?

Appendix – Table of Results

The first combination tested was for small files (4 KiB) with a shallow directory structure. Table 1 below lists the results with an average value and just below it, in red, is the standard deviation.

Table 1 – Benchmark Times Small Files (4 KiB) – Shallow Directory Structure

Journal Size Directory Create
(secs.)
File Create
(secs.)
File Remove
(secs.)
Directory Remove
(secs.)
16MB 26.30
0.46
351.10
3.33
70.50
1.02
15.70
0.64
64MB 15.10
0.94
339.40
2.29
67.70
0.46
3.90
0.3
256MB 9.60
0.66
330.20
2.40
52.70
1.00
2.00
1.34
1GB 9.30
0.46
328.50
1.20
53.30
1.19
2.70
2.93

Table 2 below lists the performance results with an average value and just below it, in red, is the standard deviation.

Table 2 – Performance Results of Small Files (4 KiB) – Shallow Directory Structure

Journal Size Directory Create
(Dirs/sec)
File Create
(Files/sec)
File Create
(KiB/sec)
File Remove
(Files/sec)
Directory Remove
(Dirs/sec)
16MB 319.40
5.50
959.00
9.25
3,837.20
36.44
4,778.60
69.39
536.90
21.62
64MB 559.60
37.25
991.80
6.87
3,969.70
27.03
4,975.20
33.91
2,175.20
210.60
256MB 880.80
58.41
1,019.50
7.34
4,080.10
29.51
6,093.30
3,026.97
5,852.40
2,692.57
1GB 907.10
42.62
1,024.70
3.87
4,101.00
15.03
6,322.20
140.45
6,093.30
3,026.97

The next test was for small files (4 KiB) with a deep directory structure. Table 3 below lists the benchmark times with an average value and just below it, in red, is the standard deviation.

Table 3 – Benchmark Times Small Files (4 KiB) – Deep Directory Structure

Journal Size Directory Create
(secs.)
File Create
(secs.)
File Remove
(secs.)
Directory Remove
(secs.)
16MB 312.40
3.56
624.80
4.66
333.00
3.07
253.00
25.78
64MB 230.90
2.81
518.10
7.67
243.40
5.00
82.40
3.38
256MB 145.30
5.02
413.00
16.25
169.00
9.69
52.30
3.55
1GB 120.10
7.23
400.60
13.35
136.60
6.81
52.50
17.20

Table 4 below lists the performance results with an average value and just below it, in red, is the standard deviation.

Table 4 – Performance Results of Small Files (4 KiB) – Deep Directory Structure

Journal Size Directory Create
(Dirs/sec)
File Create
(Files/sec)
File Create
(KiB/sec)
File Remove
(Files/sec)
Directory Remove
(Dirs/sec)
16MB 282.80
2.99
566.60
4.25
2,267.80
17.08
1,063.60
9.62
362.60
3.95
64MB 383.20
4.77
683.40
10.03
2,735.40
40.14
1,455.70
30.04
1,076.50
45.00
256MB 597.90
14.59
832.10
30.30
3,330.60
121.08
2,091.90
110.24
1,639.70
102.91
1GB 609.80
21.67
858.60
32.71
3,435.90
130.96
2,102.80
119.26
1,701.20
119.50

The third combination tested was for medium files (4 MiB) with a shallow directory structure. Table 5 below lists the benchmark times with an average value and just below it, in red, is the standard deviation.

Table 5 – Benchmark Times Medium Files (4 MiB) – Shallow Directory Structure

Journal Size Directory Create
(secs.)
File Create
(secs.)
File Remove
(secs.)
Directory Remove
(secs.)
16MB 0.40
0.49
153.40
2.06
13.20
3.25
0.10
0.30
64MB 0.30
0.46
155.00
2.65
11.70
3.82
0.00
0.00
256MB 0.10
0.30
155.50
2.33
10.70
2.28
0.10
0.30
1GB 0.30
0.46
157.10
1.70
10.50
2.87
0.10
0.30

Table 6 below lists the performance results with an average value and just below it, in red, is the standard deviation.

Table 6 – Performance Results of Medium Files (4 MiB) – Shallow Directory Structure

Journal Size Directory Create
(Dirs/sec)
File Create
(Files/sec)
File Create
(KiB/sec)
File Remove
(Files/sec)
Directory Remove
(Dirs/sec)
16MB 122.80
150.40
19.80
0.40
80,065.70
1,047.94
252.30
84.27
30.70
92.10
64MB 92.10
140.69
19.20
0.40
79,239.30
1,336.94
290.50
88.78
0.00
0.00
256MB 30.70
92.10
19.30
0.46
78,988.20
1,184.63
298.00
54.11
30.70
92.10
1GB 92.10
140.69
19.00
0.00
78,175.30
845.26
322.90
118.09
30.70
92.10

The fourth and final combination tested was for medium files (4 MiB) with a deep directory structure. Table 7 below lists the benchmark times with an average value and just below it, in red, is the standard deviation.

Table 7 – Benchmark Times Medium Files (4 MiB) – Deep Directory Structure

Journal Size Directory Create
(secs.)
File Create
(secs.)
File Remove
(secs.)
Directory Remove
(secs.)
16MB 5.50
0.50
225.90
1.51
14.90
3.86
2.40
0.49
64MB 2.60
0.49
221.40
2.01
12.40
1.85
2.00
1.00
256MB 2.60
0.66
221.50
1.<63/font>
14.80
4.28
2.40
1.20
1GB 2.70
0.64
222.90
2.02
10.90
2.17
2.60
1.80

Table 8 below lists the performance results with an average value and just below it, in red, is the standard deviation.

Table 8 – Results of Medium Files (4 MiB) – Deep Directory Structure

Journal Size Directory Create
(Dirs/sec)
File Create
(Files/sec)
File Create
(KiB/sec)
File Remove
(Files/sec)
Directory Remove
(Dirs/sec)
16MB 375.00
34.00
18.00
0.45
72,495.00
485.26
296.10
87.63
886.60
167.06
64MB 818.40
167.06
18.00
0.00
73,971.30
672.82
336.80
48.63
1,313.20
620.23
256MB 835.40
193.73
18.00
0.00
73,935.70
541.31
306.20
106.08
1,132.40
621.95
1GB 801.30
187.63
17.90
0.30
73,473.30
658.96
388.10
67.04
1,286.00
767.33
Jeff Layton is an Enterprise Technologist for HPC at Dell. He can be found lounging around at a nearby Frys enjoying the coffee and waiting for sales (but never during working hours).

Comments on "Size Can Matter: Ramdisk Journal Metadata Performance – Part 2"

djekels

I tried creating ram drives on a 3TB ext4 File System.

pvcreate /dev/ram[0-20]
vgcreate jrnlvg /dev/ram[0-20]
lvcreate -L1G -n lv0 jrnlvg

mkfs -O journal_dev /dev/jrnlvg/lv0
tune2fs -L /opt journal device /dev/jrnlvg/lv0

tune2fs -j -J device=/dev/jrnlvg/lv0 /dev/myTBvg/lv10

this all works great

the problem is when the system reboots, you must go through the whole process and 1+TB file systems regenerating their journals takes forever.

Q: how can I dd or copy the ram device data to a regular disk.
so when the system reboot, you setup the ram devices then copy the old jourabck before you fire up the FS?

Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>