Управление буфером NFS
Модераторы: Trinity admin`s, Free-lance moderator`s
Управление буфером NFS
Народ, подскажите как управлять буфером NFS ?
Я так понял, что по умолчанию он захватывает по возможности всю оперативную память, а так как у нас идёт работа с сейсмическими данными, то возможности у него есть и он действительно захватывает всю оперативную память.
Можно ли каким-то параметром ограничить в процентах или конкретным размером максимально допустимый объём для одного потока или процесса?
Я, конечно, почитал про sb_max и sockthresh, но всё это мне чудится немного из другой оперы или я чего-то недопонял.
И ещё: Есть какие-то формулы или таблицы как расчитать оптимальное количество потоков NFS в зависимости от объёма памяти и количества ядер?
Я так понял, что по умолчанию он захватывает по возможности всю оперативную память, а так как у нас идёт работа с сейсмическими данными, то возможности у него есть и он действительно захватывает всю оперативную память.
Можно ли каким-то параметром ограничить в процентах или конкретным размером максимально допустимый объём для одного потока или процесса?
Я, конечно, почитал про sb_max и sockthresh, но всё это мне чудится немного из другой оперы или я чего-то недопонял.
И ещё: Есть какие-то формулы или таблицы как расчитать оптимальное количество потоков NFS в зависимости от объёма памяти и количества ядер?
Re: Управление буфером NFS
я может не врубаюсь в суть проблемы но первый раз такое вообще слышу
какая разница с какими данными идет работа по NFS
чем вам мешает кеш?
почитайте как линукс работает с памятью, а после этого порадуйтесь что у вас вся свободная память занята кешем.
какая разница с какими данными идет работа по NFS
чем вам мешает кеш?
почитайте как линукс работает с памятью, а после этого порадуйтесь что у вас вся свободная память занята кешем.
t.me: @RoboforumSetar ; st@3nt.ru
Re: Управление буфером NFS
Я наоборот этому не рад. Мне надо ограничить память, которую может съесть NFS на сервере.
Re: Управление буфером NFS
я пишу в пустоту ?
почитайте КАК линукс использует память
кэш это не память которая "съедена"
она освобождается автоматически для процессов по мере надобности
почитайте КАК линукс использует память
кэш это не память которая "съедена"
она освобождается автоматически для процессов по мере надобности
t.me: @RoboforumSetar ; st@3nt.ru
Re: Управление буфером NFS
Освежил в памяти работу памяти, ибо когда-то проходил в институте, но никогда оно не пригождалось.
Во всех статьях расписана постраничная работа памяти, с формулами и всё такое, но я не программист, к тому же в данной ситуации считаю такие тонкости излишними.
В общем вкратце происходит вот такое дело:
Клиент заходит удалённо на сервер и запускает нужную ему программу, которая работает с данными по NFS. Эти данные съедают всю память, потому что их много. Тут подключается ещё один клиент и запускает свой экземпляр программы со своими данными, начинает отжирать память у первого и начинается какой-то жуткий свопинг. А ещё могут быть клиенты, которым NFS и не нужен - тут уже надо смотреть приоритеты кто там у кого будет отбирать, но это и не так важно.
В общем я надеялся, что может быть в NFS есть какой-то параметр позволяющий ограничить каждому клиенту или потоку размер занимаемой памяти. И тогда NFS для каждого клиента изначально будет выстраивать работу по другому алгоритму и никаких своппингов не будет.
Вот сижу читаю и про память и про NFS и пока не вижу не выхода ни входа.
Во всех статьях расписана постраничная работа памяти, с формулами и всё такое, но я не программист, к тому же в данной ситуации считаю такие тонкости излишними.
В общем вкратце происходит вот такое дело:
Клиент заходит удалённо на сервер и запускает нужную ему программу, которая работает с данными по NFS. Эти данные съедают всю память, потому что их много. Тут подключается ещё один клиент и запускает свой экземпляр программы со своими данными, начинает отжирать память у первого и начинается какой-то жуткий свопинг. А ещё могут быть клиенты, которым NFS и не нужен - тут уже надо смотреть приоритеты кто там у кого будет отбирать, но это и не так важно.
В общем я надеялся, что может быть в NFS есть какой-то параметр позволяющий ограничить каждому клиенту или потоку размер занимаемой памяти. И тогда NFS для каждого клиента изначально будет выстраивать работу по другому алгоритму и никаких своппингов не будет.
Вот сижу читаю и про память и про NFS и пока не вижу не выхода ни входа.
Re: Управление буфером NFS
Ну пика-то ждать долго можно. Так что вот примерный top:
top - 11:47:57 up 8 days, 47 min, 19 users, load average: 11.73, 11.65, 10.58
Tasks: 704 total, 6 running, 694 sleeping, 0 stopped, 4 zombie
Cpu(s): 3.1%us, 2.4%sy, 0.5%ni, 71.0%id, 22.5%wa, 0.1%hi, 0.4%si, 0.0%st
Mem: 132168380k total, 128213292k used, 3955088k free, 186480k buffers
Swap: 76758552k total, 2094904k used, 74663648k free, 117790828k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18721 root 15 0 0 0 0 S 11 0.0 656:50.71 ptlrpcd
2280 prouser 19 1 138m 108m 5024 R 27 0.1 204:52.31 exec.exe
17605 root 15 0 0 0 0 D 3 0.0 78:23.36 nfsd
17603 root 15 0 0 0 0 R 4 0.0 68:11.16 nfsd
17600 root 15 0 0 0 0 D 3 0.0 65:55.92 nfsd
17598 root 15 0 0 0 0 D 4 0.0 65:35.68 nfsd
17602 root 15 0 0 0 0 R 3 0.0 60:59.74 nfsd
17601 root 15 0 0 0 0 D 3 0.0 57:52.92 nfsd
17604 root 15 0 0 0 0 R 4 0.0 53:23.38 nfsd
17599 root 15 0 0 0 0 D 4 0.0 49:04.93 nfsd
32744 prouser 17 1 197m 171m 5004 D 1 0.1 44:44.54 exec.exe
18956 root 15 0 0 0 0 S 0 0.0 41:08.30 ldlm_poold
17856 root 15 0 10984 992 724 S 0 0.0 28:04.47 pbs_mom
13991 nobody 15 0 132m 2604 1644 S 2 0.0 26:52.20 smbd
1850 root 11 -5 0 0 0 S 0 0.0 22:27.00 kswapd0
1857 root 10 -5 0 0 0 S 0 0.0 21:08.25 kswapd7
1855 root 10 -5 0 0 0 S 0 0.0 17:00.80 kswapd5
1852 root 10 -5 0 0 0 S 0 0.0 16:26.01 kswapd2
1856 root 10 -5 0 0 0 S 0 0.0 15:46.73 kswapd6
1851 root 10 -5 0 0 0 S 0 0.0 15:39.05 kswapd1
1853 root 10 -5 0 0 0 S 0 0.0 15:20.70 kswapd3
1854 root 10 -5 0 0 0 S 0 0.0 15:15.18 kswapd4
17140 root 10 -5 0 0 0 S 1 0.0 11:30.21 rpciod/4
1849 root 15 0 0 0 0 S 0 0.0 10:51.97 pdflush
12148 prouser 19 1 32912 6008 4764 D 20 0.0 8:51.60 exec.exe
18580 root 15 0 0 0 0 S 0 0.0 4:56.11 kiblnd_sd_00
18611 root 15 0 0 0 0 S 0 0.0 4:56.05 kiblnd_sd_31
18588 root 15 0 0 0 0 S 0 0.0 4:55.09 kiblnd_sd_08
18590 root 15 0 0 0 0 S 0 0.0 4:55.09 kiblnd_sd_10
18594 root 15 0 0 0 0 S 0 0.0 4:55.02 kiblnd_sd_14
18581 root 15 0 0 0 0 S 0 0.0 4:54.92 kiblnd_sd_01
18606 root 15 0 0 0 0 S 0 0.0 4:54.80 kiblnd_sd_26
18607 root 15 0 0 0 0 S 0 0.0 4:54.76 kiblnd_sd_27
Вот о чём речь, что с каждой строкой nfsd появляется новая строка kswapd.
Они конечно всё показывают по нулям (на данный момент), но всё это очень странно.
И когда их действительно много, то тормоза заметны наглядно.
А вот в таком виде (Shift+M) их вообще не видно:
top - 11:59:49 up 8 days, 59 min, 19 users, load average: 15.60, 13.48, 12.16
Tasks: 751 total, 5 running, 732 sleeping, 0 stopped, 14 zombie
Cpu(s): 0.0%us, 10.9%sy, 0.9%ni, 79.1%id, 7.8%wa, 0.0%hi, 1.3%si, 0.0%st
Mem: 132168380k total, 132049116k used, 119264k free, 185288k buffers
Swap: 76758552k total, 2094904k used, 74663648k free, 110096688k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14050 prouser 15 0 12.7g 12g 1860 S 57 9.6 3:47.08 sdatasrv_server
32744 prouser 16 1 197m 171m 5004 D 1 0.1 44:49.05 exec.exe
14526 prouser 17 1 148m 130m 129m S 0 0.1 0:41.24 minput.exe
14842 prouser 17 1 148m 130m 129m S 0 0.1 0:47.70 minput.exe
14855 prouser 17 1 148m 130m 129m S 0 0.1 0:45.20 minput.exe
14881 prouser 17 1 148m 130m 129m S 0 0.1 0:40.34 minput.exe
14898 prouser 17 1 148m 130m 129m S 0 0.1 0:38.66 minput.exe
14868 prouser 17 1 148m 130m 129m S 0 0.1 0:45.39 minput.exe
2280 prouser 19 1 138m 108m 5024 D 3 0.1 206:30.77 exec.exe
14860 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
14886 prouser 18 1 84336 66m 65m S 0 0.1 0:00.11 moutput.exe
14903 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
14847 prouser 18 1 84332 66m 65m S 0 0.1 0:00.11 moutput.exe
14873 prouser 18 1 84332 66m 65m S 0 0.1 0:00.11 moutput.exe
14892 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
19144 gdm 16 0 216m 16m 7100 S 0 0.0 0:13.54 gdmgreeter
14048 prouser 15 0 27752 10m 4708 S 0 0.0 0:44.91 promax
9232 prouser 15 0 25928 9216 4688 S 0 0.0 0:06.87 promax
1663 prouser 15 0 24516 7788 4676 S 0 0.0 0:03.38 promax
17398 root 18 0 151m 6636 928 S 0 0.0 0:01.61 python
19106 root 15 0 90476 6296 4308 S 0 0.0 0:08.74 Xorg
12148 prouser 19 1 32912 6008 4764 R 75 0.0 11:53.32 exec.exe
12151 prouser 18 1 23748 5792 4952 S 0 0.0 0:00.09 traceDisplay.ex
14523 prouser 16 1 34732 5484 4472 S 0 0.0 0:29.22 exec.exe
14839 prouser 16 1 34736 5472 4460 S 0 0.0 0:34.37 exec.exe
14852 prouser 17 1 34732 5472 4460 S 0 0.0 0:31.59 exec.exe
14865 prouser 16 1 34732 5472 4460 S 0 0.0 0:32.00 exec.exe
14878 prouser 17 1 34736 5472 4460 S 0 0.0 0:28.20 exec.exe
14895 prouser 16 1 34732 5472 4460 S 0 0.0 0:27.38 exec.exe
1547 prouser 17 0 22672 5072 3880 S 0 0.0 0:00.29 promax
17459 ntp 15 0 23328 4964 3848 S 0 0.0 0:05.06 ntpd
18384 haldaemo 15 0 31448 4536 1552 S 0 0.0 0:17.24 hald
19105 root 16 0 159m 3316 2708 S 0 0.0 0:00.02 gdm-rh-security
Настройки kswapd не смог посмотреть, ибо не нашёл его в /proc/sys/vm
а swappiness 60.
top - 11:47:57 up 8 days, 47 min, 19 users, load average: 11.73, 11.65, 10.58
Tasks: 704 total, 6 running, 694 sleeping, 0 stopped, 4 zombie
Cpu(s): 3.1%us, 2.4%sy, 0.5%ni, 71.0%id, 22.5%wa, 0.1%hi, 0.4%si, 0.0%st
Mem: 132168380k total, 128213292k used, 3955088k free, 186480k buffers
Swap: 76758552k total, 2094904k used, 74663648k free, 117790828k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18721 root 15 0 0 0 0 S 11 0.0 656:50.71 ptlrpcd
2280 prouser 19 1 138m 108m 5024 R 27 0.1 204:52.31 exec.exe
17605 root 15 0 0 0 0 D 3 0.0 78:23.36 nfsd
17603 root 15 0 0 0 0 R 4 0.0 68:11.16 nfsd
17600 root 15 0 0 0 0 D 3 0.0 65:55.92 nfsd
17598 root 15 0 0 0 0 D 4 0.0 65:35.68 nfsd
17602 root 15 0 0 0 0 R 3 0.0 60:59.74 nfsd
17601 root 15 0 0 0 0 D 3 0.0 57:52.92 nfsd
17604 root 15 0 0 0 0 R 4 0.0 53:23.38 nfsd
17599 root 15 0 0 0 0 D 4 0.0 49:04.93 nfsd
32744 prouser 17 1 197m 171m 5004 D 1 0.1 44:44.54 exec.exe
18956 root 15 0 0 0 0 S 0 0.0 41:08.30 ldlm_poold
17856 root 15 0 10984 992 724 S 0 0.0 28:04.47 pbs_mom
13991 nobody 15 0 132m 2604 1644 S 2 0.0 26:52.20 smbd
1850 root 11 -5 0 0 0 S 0 0.0 22:27.00 kswapd0
1857 root 10 -5 0 0 0 S 0 0.0 21:08.25 kswapd7
1855 root 10 -5 0 0 0 S 0 0.0 17:00.80 kswapd5
1852 root 10 -5 0 0 0 S 0 0.0 16:26.01 kswapd2
1856 root 10 -5 0 0 0 S 0 0.0 15:46.73 kswapd6
1851 root 10 -5 0 0 0 S 0 0.0 15:39.05 kswapd1
1853 root 10 -5 0 0 0 S 0 0.0 15:20.70 kswapd3
1854 root 10 -5 0 0 0 S 0 0.0 15:15.18 kswapd4
17140 root 10 -5 0 0 0 S 1 0.0 11:30.21 rpciod/4
1849 root 15 0 0 0 0 S 0 0.0 10:51.97 pdflush
12148 prouser 19 1 32912 6008 4764 D 20 0.0 8:51.60 exec.exe
18580 root 15 0 0 0 0 S 0 0.0 4:56.11 kiblnd_sd_00
18611 root 15 0 0 0 0 S 0 0.0 4:56.05 kiblnd_sd_31
18588 root 15 0 0 0 0 S 0 0.0 4:55.09 kiblnd_sd_08
18590 root 15 0 0 0 0 S 0 0.0 4:55.09 kiblnd_sd_10
18594 root 15 0 0 0 0 S 0 0.0 4:55.02 kiblnd_sd_14
18581 root 15 0 0 0 0 S 0 0.0 4:54.92 kiblnd_sd_01
18606 root 15 0 0 0 0 S 0 0.0 4:54.80 kiblnd_sd_26
18607 root 15 0 0 0 0 S 0 0.0 4:54.76 kiblnd_sd_27
Вот о чём речь, что с каждой строкой nfsd появляется новая строка kswapd.
Они конечно всё показывают по нулям (на данный момент), но всё это очень странно.
И когда их действительно много, то тормоза заметны наглядно.
А вот в таком виде (Shift+M) их вообще не видно:
top - 11:59:49 up 8 days, 59 min, 19 users, load average: 15.60, 13.48, 12.16
Tasks: 751 total, 5 running, 732 sleeping, 0 stopped, 14 zombie
Cpu(s): 0.0%us, 10.9%sy, 0.9%ni, 79.1%id, 7.8%wa, 0.0%hi, 1.3%si, 0.0%st
Mem: 132168380k total, 132049116k used, 119264k free, 185288k buffers
Swap: 76758552k total, 2094904k used, 74663648k free, 110096688k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14050 prouser 15 0 12.7g 12g 1860 S 57 9.6 3:47.08 sdatasrv_server
32744 prouser 16 1 197m 171m 5004 D 1 0.1 44:49.05 exec.exe
14526 prouser 17 1 148m 130m 129m S 0 0.1 0:41.24 minput.exe
14842 prouser 17 1 148m 130m 129m S 0 0.1 0:47.70 minput.exe
14855 prouser 17 1 148m 130m 129m S 0 0.1 0:45.20 minput.exe
14881 prouser 17 1 148m 130m 129m S 0 0.1 0:40.34 minput.exe
14898 prouser 17 1 148m 130m 129m S 0 0.1 0:38.66 minput.exe
14868 prouser 17 1 148m 130m 129m S 0 0.1 0:45.39 minput.exe
2280 prouser 19 1 138m 108m 5024 D 3 0.1 206:30.77 exec.exe
14860 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
14886 prouser 18 1 84336 66m 65m S 0 0.1 0:00.11 moutput.exe
14903 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
14847 prouser 18 1 84332 66m 65m S 0 0.1 0:00.11 moutput.exe
14873 prouser 18 1 84332 66m 65m S 0 0.1 0:00.11 moutput.exe
14892 prouser 18 1 84336 66m 65m S 0 0.1 0:00.13 moutput.exe
19144 gdm 16 0 216m 16m 7100 S 0 0.0 0:13.54 gdmgreeter
14048 prouser 15 0 27752 10m 4708 S 0 0.0 0:44.91 promax
9232 prouser 15 0 25928 9216 4688 S 0 0.0 0:06.87 promax
1663 prouser 15 0 24516 7788 4676 S 0 0.0 0:03.38 promax
17398 root 18 0 151m 6636 928 S 0 0.0 0:01.61 python
19106 root 15 0 90476 6296 4308 S 0 0.0 0:08.74 Xorg
12148 prouser 19 1 32912 6008 4764 R 75 0.0 11:53.32 exec.exe
12151 prouser 18 1 23748 5792 4952 S 0 0.0 0:00.09 traceDisplay.ex
14523 prouser 16 1 34732 5484 4472 S 0 0.0 0:29.22 exec.exe
14839 prouser 16 1 34736 5472 4460 S 0 0.0 0:34.37 exec.exe
14852 prouser 17 1 34732 5472 4460 S 0 0.0 0:31.59 exec.exe
14865 prouser 16 1 34732 5472 4460 S 0 0.0 0:32.00 exec.exe
14878 prouser 17 1 34736 5472 4460 S 0 0.0 0:28.20 exec.exe
14895 prouser 16 1 34732 5472 4460 S 0 0.0 0:27.38 exec.exe
1547 prouser 17 0 22672 5072 3880 S 0 0.0 0:00.29 promax
17459 ntp 15 0 23328 4964 3848 S 0 0.0 0:05.06 ntpd
18384 haldaemo 15 0 31448 4536 1552 S 0 0.0 0:17.24 hald
19105 root 16 0 159m 3316 2708 S 0 0.0 0:00.02 gdm-rh-security
Настройки kswapd не смог посмотреть, ибо не нашёл его в /proc/sys/vm
а swappiness 60.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость