Голосование

Чему равен размер SWAP?

двойному ОЗУ
одинарному ОЗУ
половинному ОЗУ
тройному ОЗУ
дестярному ОЗУ
SWAP - это зло!
Не знаю

Автор Тема: Swap-раздел. Оперативная память. Общие вопросы свопа и оперативки.  (Прочитано 81752 раз)

Оффлайн ddv

  • Участник
  • *
  • Сообщений: 34
    • ООО "НЕВОД"
Re: SWAP
« Ответ #30 : 01.10.2008 13:24:44 »
Вообще реккомендуется делать в 2 раза больше чем оператива. Данное соотношение позволяет запустить давольно-таки много приложений. А делать больше нет смысла, т.к. работать будет практически невозможно(будет активный свопинг) если Вы захотите запустить больше приложений за счёт увеличения только свопа. Так же нужно учесть, что если у Вас система 32х разрядная, то адресовать можно максимум 4Гб, поэтому нет смысла при 2Гб ОЗУ делать своп 4Гб, в так случае своп тоже нужно сделать 2 Гб.

Из сказанного можно такую систему неравеств записать:
СВОП <= ОЗУ * 2
СВОП + ОЗУ <= 4 Гб

Кстати свап желательно размещать в начале диска, т.к. hdd с этой областью работает быстрее.
Хммм... Диск работает быстрее всего с центром блина, так как растояние от любого из краёв наименьшее растояние. При LBA адресации разве первые адреса распологаются в центре блинов?

Оффлайн KPETuH

  • Участник
  • *
  • Сообщений: 1 162
    • SG
Re: SWAP
« Ответ #31 : 01.10.2008 16:46:56 »
в общем помоему рекомендуют в начале или центре
Мой небосклон и чист, и ясен,
И полон радужных картин...  Не потому что мир прекрасен,  А потому, что я - KPETuH

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: SWAP
« Ответ #32 : 01.10.2008 17:00:15 »
Вообще в центре естественно увеличивается скорость позиционирования, а скорость чтения/записи выше в начале, вообще что бы не быть голословным. вот, потестил сейчас, на одном будущем сервере, который сейчас не в работе, каждый раздел тестировался по три раза:
[root@ns1 ~]# hdparm -t /dev/sda1
/dev/sda1:
 Timing buffered disk reads:  282 MB in  3.01 seconds =  93.82 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda1
/dev/sda1:
 Timing buffered disk reads:  282 MB in  3.00 seconds =  93.93 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda1
/dev/sda1:
 Timing buffered disk reads:  282 MB in  3.00 seconds =  93.93 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda2
/dev/sda2:
 Timing buffered disk reads:  282 MB in  3.00 seconds =  93.86 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda2
/dev/sda2:
 Timing buffered disk reads:  282 MB in  3.00 seconds =  93.93 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda2
/dev/sda2:
 Timing buffered disk reads:  282 MB in  3.00 seconds =  93.87 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda3
/dev/sda3:
 Timing buffered disk reads:  268 MB in  3.01 seconds =  88.97 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda3
/dev/sda3:
 Timing buffered disk reads:  268 MB in  3.01 seconds =  88.91 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda3
/dev/sda3:
 Timing buffered disk reads:  268 MB in  3.01 seconds =  88.90 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda5
/dev/sda5:
 Timing buffered disk reads:  252 MB in  3.00 seconds =  83.99 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda5
/dev/sda5:
 Timing buffered disk reads:  252 MB in  3.00 seconds =  83.97 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda5
/dev/sda5:
 Timing buffered disk reads:  254 MB in  3.02 seconds =  84.10 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda6
/dev/sda6:
 Timing buffered disk reads:  248 MB in  3.02 seconds =  82.05 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda6
/dev/sda6:
 Timing buffered disk reads:  248 MB in  3.02 seconds =  82.09 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda6
/dev/sda6:
 Timing buffered disk reads:  248 MB in  3.01 seconds =  82.34 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda7
/dev/sda7:
 Timing buffered disk reads:  244 MB in  3.02 seconds =  80.87 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda7
/dev/sda7:
 Timing buffered disk reads:  244 MB in  3.02 seconds =  80.74 MB/sec
[root@ns1 ~]# hdparm -t /dev/sda7
/dev/sda7:
 Timing buffered disk reads:  244 MB in  3.02 seconds =  80.69 MB/sec
[root@ns1 ~]#
Заметно уменьшение скорости в зависимости от удаления от начала диска.
таблица разделов такая:
[root@ns1 ~]# fdisk -l

Disk /dev/sda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xe243a2e6

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1         510     4096543+  fd  Linux raid autodetect
/dev/sda2             511        5609    40957717+  fd  Linux raid autodetect
/dev/sda3            5610       10708    40957717+  fd  Linux raid autodetect
/dev/sda4           10709       30401   158184022+   f  W95 Ext'd (LBA)
/dev/sda5           10709       11728     8193118+  fd  Linux raid autodetect
/dev/sda6           11729       14278    20482843+  fd  Linux raid autodetect
/dev/sda7           14279       30401   129507966   fd  Linux raid autodetect
With best regards, Yury Konovalov aka 2:453/53

Оффлайн Damir

  • alt linux team
  • ***
  • Сообщений: 134
Re: SWAP
« Ответ #33 : 01.10.2008 17:19:49 »
Заметна только статистическая погрешность, трактуемая автором в свою пользу.

Ну и стремление мерять скорость вращения диска путем buffered reads. :)
« Последнее редактирование: 01.10.2008 17:27:11 от Damir »
Ceterum censeo LORum esse delendam

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: SWAP
« Ответ #34 : 01.10.2008 17:25:25 »
Заметна только статистическая погрешность, трактуемая автором в свою пользу.

Ну и стремление мерять скорость вращения диска путем buffered reads.
Естественно тест ни на что не претендует, я уверен, если задаться целью, то можно нагуглить результаты более серьезных тестов. Я же просто высказал свое мнение, можете его не учитывать.
Кстати если бы я хотел почитать из буфера, я бы использовал параметр "-T",а не "-t"

-t   perform device read timings
 -T   perform cache read timings
With best regards, Yury Konovalov aka 2:453/53

Оффлайн Damir

  • alt linux team
  • ***
  • Сообщений: 134
Re: SWAP
« Ответ #35 : 01.10.2008 17:32:33 »
-T - это чтение из кэша, а не из буфера.

В современной Linux системе (с хорошими контроллерами и большими буферами (гы-гы, Бивис, он сказал большие буфера)), на мой взгляд, доли процента, которые можно выжать из особенностей геометрии диска, не имеют практического значения. Все равно загрузка файла в первый раз (не из кеша) будет относительно долгой. А дальше будет чтение из кеша, которое на порядок быстрее.

То есть я бы рекомендовал, если уж у вас больше 512 Мб оперативной памяти, не париться по поводу геометрии диска.

Впрочем, было бы интересно прочитать более серьезные тесты. Какие тесты из нагугленных вы считаете более серьезными?
Ceterum censeo LORum esse delendam

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: SWAP
« Ответ #36 : 01.10.2008 17:42:30 »
С чего вы взяли, что hdparm -t читает из буфера? Понятно, что буфер используется, но он же всегда используется. Я не думаю что hdparm читает одни и те же данные. А буферов на 282 мегабайта я не видел ;-) И как тогда объяснить что с раздела sda7 читает заметно медленней чем с sda1 ?
With best regards, Yury Konovalov aka 2:453/53

Оффлайн swi

  • alt linux team
  • ***
  • Сообщений: 67
    • "Риком-Траст"
Re: SWAP
« Ответ #37 : 01.10.2008 17:47:29 »
С чего вы взяли, что hdparm -t читает из буфера? Понятно, что буфер используется, но он же всегда используется. Я не думаю что hdparm читает одни и те же данные. А буферов на 282 мегабайта я не видел ;-) И как тогда объяснить что с раздела sda7 читает заметно медленней чем с sda1 ?

/dev/sda1:
 Timing buffered disk reads:  182 MB in  3.00 seconds =  60.66 MB/sec
root@alexey ~ # hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:  182 MB in  3.02 seconds =  60.24 MB/sec
root@alexey ~ # 

и чо?

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: SWAP
« Ответ #38 : 01.10.2008 17:56:02 »
Чо, попробуйте несколько раз.
Ну вот еще одна, правда старая машина, разделы в обратном порядке.
[root@mserver root]# hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:   48 MB in  3.08 seconds =  15.58 MB/sec
[root@mserver root]# hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:   46 MB in  3.11 seconds =  14.79 MB/sec
[root@mserver root]# hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:   46 MB in  3.01 seconds =  15.28 MB/sec
[root@mserver root]# hdparm -t /dev/sda1

/dev/sda1:
 Timing buffered disk reads:   66 MB in  3.00 seconds =  22.00 MB/sec
[root@mserver root]# hdparm -t /dev/sda1

/dev/sda1:
 Timing buffered disk reads:   72 MB in  3.05 seconds =  23.61 MB/sec
[root@mserver root]# hdparm -t /dev/sda1

/dev/sda1:
 Timing buffered disk reads:   74 MB in  3.15 seconds =  23.49 MB/sec
[root@mserver root]#
With best regards, Yury Konovalov aka 2:453/53

Оффлайн Damir

  • alt linux team
  • ***
  • Сообщений: 134
Re: SWAP
« Ответ #39 : 01.10.2008 17:56:10 »
С чего вы взяли, что hdparm -t читает из буфера?
Timing buffered disk reads:  248 MB in  3.02 seconds =  82.05 MB/sec
Достаточный ответ на вопрос?

Цитировать
Понятно, что буфер используется, но он же всегда используется. Я не думаю что hdparm читает одни и те же данные.
Я не про это. Просто чтение из буфера - это не совсем "скорость вращения диска" (тем более что у вас там RAID).

Цитировать
И как тогда объяснить что с раздела sda7 читает заметно медленней чем с sda1 ?
Объясняйте, как хотите - тут любые объяснения хороши. Я бы предположил, что в вашей системе sda7 используется интенсивнее, чем sda1 (что неудивительно при его размере). Или что RAID там помедленее.

Идеальный тест, на котором можно делать какие-то выводы про геометрию, это тест при загрузке в Single-User mode без RAID с прибиванием всех процессов кроме shell и init. Это куда интереснее.

А так - я могу вас только поздравить, у вас самый большой раздел (который наверное чаще всего читается и содержит большие файлы, постоянно выпадающие из кеша) - имеет самое медленное некешированное время доступа. Вы сэкономили кучу своего времени, правильно размещая своп :) Можно еще увидеть вывод команды free?
« Последнее редактирование: 01.10.2008 18:01:06 от Damir »
Ceterum censeo LORum esse delendam

Оффлайн swi

  • alt linux team
  • ***
  • Сообщений: 67
    • "Риком-Траст"
Re: SWAP
« Ответ #40 : 01.10.2008 17:57:23 »
Чо, попробуйте несколько раз.
Я пробовал по 4 раза... просто не стал постить всю муть. все равно пляшет около 58-60.
Это погрешность.

Alexei_VM

  • Гость
Re: SWAP
« Ответ #41 : 01.10.2008 18:08:34 »
Чо, попробуйте несколько раз.
Я пробовал по 4 раза... просто не стал постить всю муть. все равно пляшет около 58-60.
Это погрешность.

Дядьки, ну вы еще подеритесь! :)

Давайте поглядим хотя бы тут: http://www.ixbt.com/storage/maxtor-seagate-500gb.shtml
Сравнение более-менее современных "бытовых" дисков по скорости чтения. Падение скорости есть, в пределах 10%. Для SCSI вроде бы линии более ровные. Но в любом случае особо париться по поводу размещения свопа не стоит. Ибо если в него выпадают неиспользуемые приложения, то скорость не очень важна. А если в свопе постоянный круговорот, то пора подумать об увеличении памяти, ибо ситуация явно ненормальная. Остается еще наша tmpfs, но на нее обычно падают данные, которые тут же читаются с диска (например, вход в архив в мс), и куда важнее время позиционирования и оптимизация многопоточного чтения с дисков, а не линейное чтение.

Оффлайн swi

  • alt linux team
  • ***
  • Сообщений: 67
    • "Риком-Траст"
Re: SWAP
« Ответ #42 : 01.10.2008 18:13:50 »
Но в любом случае особо париться по поводу размещения свопа не стоит.
+1, мне кажется это уже как мифическое "своп = 2 * размер оперативки".

Оффлайн Damir

  • alt linux team
  • ***
  • Сообщений: 134
Re: SWAP
« Ответ #43 : 01.10.2008 18:22:44 »
Своп должен быть такой, чтобы не было мучительно больно, если вы используете tmpfs и вам не хватает места на tmpfs. У меня вот 2 Гб памяти и 3 Гб свопа. Когда разбивал диск, был всего 1 Гб памяти, и с 2 Гб свопа например я бы не смог собирать boost на tmpfs, поэтому и сделал 3 Гб. Теперь я думаю что 3 Гб свопа - это излишнее, хватило бы и 1 Гб. Но переразбивать лень.
Ceterum censeo LORum esse delendam

Оффлайн HaxHaxWin

  • Участник
  • *
  • Сообщений: 40
Re: SWAP
« Ответ #44 : 01.10.2008 18:34:49 »
... свап желательно размещать в начале диска, т.к. hdd с этой областью работает быстрее.
swap в начале диска емчее (ё-маё  :))
длина окружности внешнего края блина больше любой другой,
track внешний вместит больше еденичек и ноликАв, чем track у центра блина.
 см. справочник по элементарной геометрии - ср. школа
соответственно головкам позиционироваться надо меньше на
внешних - начальных дорожках и считывается быстрее

зы свидетель как из-за размещения swap-а на последних (у центра) дорожках
HHD вышел из строя потому-как свопил, свопил, свопил, свопил,
пока не сдох :o



на этом комменте получил -2
Ха однакО двоечников хватает  :D
« Последнее редактирование: 01.10.2008 18:45:43 от HaxHaxWin »