1 |
Zero Z. Zeibov wrote:
|
2 |
> Интересные факты, выявлены при сравнении reiservs vs jfs |
3 |
> Тестировалось на двух файлах по 500мб, подмонтированных через loop. |
4 |
> CPU: Intel(R) Celeron(R) CPU 2.26GHz |
5 |
> RAM: 1024Mb Dual channel |
6 |
> HDD: IDE WDC WD800BB |
7 |
> Очень интересная особенность reiserfs - удалось распаковать на раздел в |
8 |
> 500мб архив portage, причем он смог поместиться два раза (!!!) и еще |
9 |
> осталось место порядка 72 мб. Если кто-то не понял почему акцентировал |
10 |
> внимание, попробуйте выполнить du --exclude=distfiles -sh /usr/portage/. |
11 |
> У меня на разделе c ReiserFS-v3 в 5Gb: |
12 |
> |
13 |
> 531M /usr/portage/ |
14 |
> |
15 |
> На раздел в 500мб с jfs рапакованный portage даже не поместился. Такие |
16 |
> вот чудеса творит рейзер на маленьких разделах. |
17 |
> Выводы, которые я сделал для себя - на jfs быстрее выполняются операции |
18 |
> создания, монтирования, операции подсчета размера файлов. Кроме того |
19 |
> почти на каждой операции видно, что jfs занимает меньше процессорного |
20 |
> времени при выполнении операций. Reiser имеет неоспоримое преимущество |
21 |
> на ФС с малым размером, так как более компактно размещает файлы, а также |
22 |
> быстрее выполняет операции удаления файлов. |
23 |
> Единственное что мне возразил знакомый, который был инициатором тестов, |
24 |
> это то что, reiser отъедает очень много памяти, в то время как jfs |
25 |
> отбирает память только на время плотной работы с диском, и после того |
26 |
> как она заканчивается дисковые буфера уменьшаются и память |
27 |
> вывобождается. Имея 1Gb оперативной памяти у меня |
28 |
> Mem: 906656k total, 882144k used, 24512k free, 269728k buffers |
29 |
> т.е. почти четверть (269728k) выделено под буфер. |
30 |
> На jfs буферы занимают значительно меньшее место. Поэтому могу |
31 |
> предположить что, если провести подобные тесты на машине с 512 или 256 |
32 |
> RAM Mb, а также на более слабых CPU, то результаты будут совсем иными. |
33 |
> |
34 |
> |
35 |
> Результаты проводимых тестов: |
36 |
> 1. Создание файловой системы |
37 |
> time mkfs.reiserfs -q /dev/loop1 |
38 |
> |
39 |
> real 0m10.645s |
40 |
> user 0m0.032s |
41 |
> sys 0m0.172s |
42 |
> |
43 |
> time mkfs.jfs -q /dev/loop2 |
44 |
> |
45 |
> real 0m0.356s |
46 |
> user 0m0.000s |
47 |
> sys 0m0.000s |
48 |
> |
49 |
> 2. Монтирование |
50 |
> time mount -t reiserfs /dev/loop1 /mnt/r3/ |
51 |
> |
52 |
> real 0m3.201s |
53 |
> user 0m0.000s |
54 |
> sys 0m0.036s |
55 |
> |
56 |
> time mount -t jfs /dev/loop2 /mnt/jfs/ |
57 |
> |
58 |
> real 0m0.007s |
59 |
> user 0m0.000s |
60 |
> sys 0m0.000s |
61 |
> |
62 |
> 3. Распаковка исходников ядра |
63 |
> time tar -xjf /usr/portage/distfiles/linux-2.6.17.tar.bz2 -C /mnt/r3/ |
64 |
> |
65 |
> real 1m38.255s |
66 |
> user 0m45.215s |
67 |
> sys 0m8.001s |
68 |
> |
69 |
> time tar -xjf /usr/portage/distfiles/linux-2.6.17.tar.bz2 -C /mnt/jfs/ |
70 |
> |
71 |
> real 1m47.717s |
72 |
> user 0m44.639s |
73 |
> sys 0m4.564s |
74 |
> |
75 |
> 4. Удаление исходникоов ядра |
76 |
> time rm -rf /mnt/r3/linux-2.6.17/ |
77 |
> |
78 |
> real 0m2.253s |
79 |
> user 0m0.052s |
80 |
> sys 0m2.024s |
81 |
> |
82 |
> time rm -rf /mnt/jfs/linux-2.6.17/ |
83 |
> |
84 |
> real 0m14.015s |
85 |
> user 0m0.060s |
86 |
> sys 0m0.712s |
87 |
> |
88 |
> 5. Копирование большого файла (с другой FS на тестируемую) |
89 |
> time cp /mnt/hd/Linux/Gentoo/distfiles/OOo_2.0.3_LinuxIntel_ru.tar.bz2 |
90 |
> /mnt/r3/ |
91 |
> |
92 |
> real 0m9.176s |
93 |
> user 0m0.008s |
94 |
> sys 0m0.528s |
95 |
> |
96 |
> time cp /mnt/hd/Linux/Gentoo/distfiles/OOo_2.0.3_LinuxIntel_ru.tar.bz2 |
97 |
> /mnt/jfs/ |
98 |
> |
99 |
> real 0m9.578s |
100 |
> user 0m0.032s |
101 |
> sys 0m0.448s |
102 |
> |
103 |
> 6. Копирование большого файла (внутри тестируемой FS) |
104 |
> time cp OOo_2.0.3_LinuxIntel_ru.tar.bz2 OOo_2.0.3_LinuxIntel_ru.tar.bz2.copy |
105 |
> |
106 |
> real 0m11.129s |
107 |
> user 0m0.016s |
108 |
> sys 0m0.612s |
109 |
> |
110 |
> time cp OOo_2.0.3_LinuxIntel_ru.tar.bz2 OOo_2.0.3_LinuxIntel_ru.tar.bz2.copy |
111 |
> |
112 |
> real 0m9.624s |
113 |
> user 0m0.004s |
114 |
> sys 0m0.408s |
115 |
> |
116 |
> 7. Запуск find (на FS находится расспакованное ядро) |
117 |
> time find /mnt/r3/ |
118 |
> |
119 |
> real 0m7.349s |
120 |
> user 0m0.064s |
121 |
> sys 0m0.196s |
122 |
> |
123 |
> time find /mnt/jfs/ |
124 |
> |
125 |
> real 0m7.062s |
126 |
> user 0m0.096s |
127 |
> sys 0m0.152s |
128 |
> |
129 |
> 8. Запуск find без вывода на консоль |
130 |
> time find /mnt/r3/>1 |
131 |
> |
132 |
> real 0m0.423s |
133 |
> user 0m0.032s |
134 |
> sys 0m0.076s |
135 |
> |
136 |
> time find /mnt/jfs/>1 |
137 |
> |
138 |
> real 0m0.284s |
139 |
> user 0m0.036s |
140 |
> sys 0m0.040s |
141 |
> |
142 |
> 9. Замер размера ядра |
143 |
> time du -sh /mnt/r3/ |
144 |
> 255M /mnt/r3/ |
145 |
> |
146 |
> real 0m15.953s |
147 |
> user 0m0.084s |
148 |
> sys 0m0.436s |
149 |
> |
150 |
> time du -sh /mnt/jfs |
151 |
> 259M /mnt/jfs |
152 |
> |
153 |
> real 0m2.272s |
154 |
> user 0m0.028s |
155 |
> sys 0m0.116s |
156 |
> |
157 |
> 10. Сборка ядра на тестируемой FS |
158 |
> time make bzImage modules (r3) |
159 |
> |
160 |
> real 20m43.271s |
161 |
> user 15m12.773s |
162 |
> sys 1m28.194s |
163 |
> |
164 |
> time make bzImage modules (jfs) |
165 |
> |
166 |
> real 25m57.474s |
167 |
> user 15m53.712s |
168 |
> sys 1m48.527s |
169 |
> |
170 |
Пересоздайте jfs с блоком в 512 байт. Стандартно используются блоки по
|
171 |
4096 байт. ReiserFS ныкает хвосты файлов в свое дерево. Если
|
172 |
использовать функцию notail у него то тоже особо не влезет :]
|
173 |
|
174 |
|
175 |
--
|
176 |
gentoo-user-ru@g.o mailing list |