Bagaimana HDD saya bisa bertukar tanpa partisi swap?

9

Saya tidak memiliki partisi swap pada disk saya karena saya lebih suka meminta reaper OOM membunuh apa pun yang diinginkan dengan cepat daripada harus menunggu 10 menit agar partisi swap saya terisi + 5 menit lainnya untuk meluncurkan crash OOM reaper + crash. Pada dasarnya, masalah saya adalah:

  1. meluncurkan eat_all_my_memory;
  2. tunggu 10 menit dengan sistem tidak responsif (LED HDD selalu menyala);
  3. Sementara itu, cobalah untuk beralih ke TTY;
  4. tunggu beberapa menit untuk benar-benar beralih;
  5. masukkan nama pengguna dan kata sandi;
  6. tunggu beberapa menit;
  7. Gabung;
  8. logout karena mesin penuai OOM;
  9. ulangi dari 5 sampai berhasil;
  10. gunakan topdan lihat bahwa a kworker"berfungsi";
  11. terbunuh lagi;
  12. dapatkan pesan dari mesin penuai mengatakan bahwa eat_all_my_memoryitu terbunuh;
  13. Memori terbebaskan.

Butuh 12 menit terakhir kali. Upaya saya untuk masuk ke TTY tampaknya tidak berpengaruh pada seluruh waktu siklus. Saya punya beberapa pertanyaan kemudian:

  1. Mengapa sistem saya bahkan menulis sesuatu di disk? Tidak ada swap !!!
  2. Di mana ia menulis?
  3. Masih belum ada cara untuk memberitahu pembunuh OOM untuk membunuh proses pengguna terbesar atau yang memakan sebagian besar memori dalam waktu minimum. Lalu, apakah ada cara untuk mendapatkan pembunuh OOM hanya melakukan tugasnya tanpa mencoba melakukan apa pun dengan disk?

Saya punya masalah dengan Debian, Ubuntu dan sekarang Archlinux jadi ini sepertinya tidak spesifik distro.

EDIT: kutipan file log

Saya meluncurkan perintah menyinggung sekitar 15:28. Tampaknya sistem sebenarnya membutuhkan banyak waktu sebelum mencari tahu bahwa tidak ada yang tersisa.

déc. 11 15:28:56 hostname dbus[475]: [system] Failed to activate service 'org.freedesktop.ModemManager1': timed out
déc. 11 15:29:40 hostname dbus[475]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.ModemManager1.service': Unit dbus-org.freedesktop.ModemManager1.service failed to load: No such file or directory.
déc. 11 15:30:31 hostname dbus-daemon[475]: dbus[475]: [system] Failed to activate service 'org.freedesktop.ModemManager1': timed out
déc. 11 15:30:46 hostname systemd[1]: Starting Getty on tty2...
déc. 11 15:30:46 hostname systemd[1]: Started Getty on tty2.
déc. 11 15:31:56 hostname systemd[1]: Starting Session 2 of user username.
déc. 11 15:31:56 hostname systemd[1]: Started Session 2 of user username.
déc. 11 15:31:57 hostname systemd-logind[472]: New session 2 of user username.
déc. 11 15:31:58 hostname systemd[1]: [email protected] holdoff time over, scheduling restart.
déc. 11 15:31:58 hostname systemd[1]: Starting Getty on tty2...
déc. 11 15:31:58 hostname systemd[1]: Started Getty on tty2.
déc. 11 15:32:10 hostname systemd[1]: Stopped Session 2 of user username.
déc. 11 15:32:18 hostname systemd-logind[472]: Removed session 2.
déc. 11 15:33:01 hostname systemd[1]: Starting Session 3 of user username.
déc. 11 15:33:02 hostname systemd[1]: Started Session 3 of user username.
déc. 11 15:33:15 hostname systemd-logind[472]: New session 3 of user username.
déc. 11 15:33:37 hostname systemd-logind[472]: Failed to save session data for 3: No space left on device
déc. 11 15:35:00 hostname dbus-daemon[475]: dbus[475]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.nm-dispatcher.service': Unit dbus-org.freedesktop.nm-dispatcher.service failed to load: No such file or directory.
déc. 11 15:35:00 hostname kernel: chromium invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=300
déc. 11 15:34:52 hostname systemd[1]: [email protected] holdoff time over, scheduling restart.
déc. 11 15:34:52 hostname systemd[1]: Stopping Getty on tty2...
déc. 11 15:34:52 hostname systemd[1]: Starting Getty on tty2...
déc. 11 15:34:52 hostname systemd[1]: Started Getty on tty2.
déc. 11 15:34:52 hostname systemd-logind[472]: Removed session 3.
déc. 11 15:35:00 hostname kernel: chromium cpuset=/ mems_allowed=0
déc. 11 15:35:00 hostname kernel: CPU: 0 PID: 9811 Comm: chromium Not tainted 3.12.3-1-ARCH #1
déc. 11 15:35:00 hostname kernel: Hardware name: Dell Inc. Latitude E6400                  /0X574R, BIOS A20 12/21/2009
déc. 11 15:35:00 hostname kernel:  0000000000000000 ffff8800502179a8 ffffffff814ee3db ffff8800ab6588b0
déc. 11 15:35:01 hostname kernel:  ffff880050217a38 ffffffff814ec36e ffff8800502179c8 ffffffff81062d66
déc. 11 15:35:01 hostname kernel:  ffff880050217a10 ffffffff810f3354 0000000000000000 ffff8800bf449b28
déc. 11 15:35:01 hostname kernel: Call Trace:
déc. 11 15:35:01 hostname kernel:  [<ffffffff814ee3db>] dump_stack+0x54/0x8d
déc. 11 15:35:01 hostname kernel:  [<ffffffff814ec36e>] dump_header+0x7f/0x200
déc. 11 15:35:01 hostname kernel:  [<ffffffff81062d66>] ? put_online_cpus+0x56/0x80
déc. 11 15:35:01 hostname kernel:  [<ffffffff810f3354>] ? rcu_oom_notify+0xe4/0x100
déc. 11 15:35:01 hostname kernel:  [<ffffffff81138dd6>] oom_kill_process+0x206/0x390
déc. 11 15:35:01 hostname kernel:  [<ffffffff81139557>] out_of_memory+0x437/0x480
déc. 11 15:35:01 hostname kernel:  [<ffffffff8113f3e9>] __alloc_pages_nodemask+0xad9/0xaf0
déc. 11 15:35:01 hostname kernel:  [<ffffffff8117eaa9>] alloc_pages_current+0xa9/0x160
déc. 11 15:35:01 hostname kernel:  [<ffffffff81136297>] __page_cache_alloc+0x97/0xc0
déc. 11 15:35:01 hostname kernel:  [<ffffffff81137c38>] filemap_fault+0x188/0x430
déc. 11 15:35:01 hostname kernel:  [<ffffffff8115c2bf>] __do_fault+0x6f/0x590
déc. 11 15:35:01 hostname kernel:  [<ffffffff811610e8>] handle_mm_fault+0x398/0x10f0
déc. 11 15:35:01 hostname kernel:  [<ffffffff814f8c59>] __do_page_fault+0x1e9/0x5f0
déc. 11 15:35:01 hostname kernel:  [<ffffffff81168177>] ? do_mmap_pgoff+0x357/0x3e0
déc. 11 15:35:01 hostname kernel:  [<ffffffff814f906e>] do_page_fault+0xe/0x10
déc. 11 15:35:01 hostname kernel:  [<ffffffff814f5c88>] page_fault+0x28/0x30
déc. 11 15:35:01 hostname kernel: Mem-Info:
déc. 11 15:35:01 hostname kernel: Node 0 DMA per-cpu:
déc. 11 15:35:01 hostname kernel: Node 0 DMA per-cpu:
déc. 11 15:35:01 hostname kernel: CPU    0: hi:    0, btch:   1 usd:   0
déc. 11 15:35:01 hostname kernel: CPU    1: hi:    0, btch:   1 usd:   0
déc. 11 15:35:01 hostname kernel: Node 0 DMA32 per-cpu:
déc. 11 15:35:01 hostname kernel: CPU    0: hi:  186, btch:  31 usd:  30
déc. 11 15:35:01 hostname kernel: CPU    1: hi:  186, btch:  31 usd:  64
déc. 11 15:35:01 hostname kernel: active_anon:690683 inactive_anon:9400 isolated_anon:0
                                      active_file:92 inactive_file:104 isolated_file:0
                                      unevictable:37 dirty:3 writeback:24 unstable:0
                                      free:14229 slab_reclaimable:4844 slab_unreclaimable:6907
                                      mapped:9344 shmem:12110 pagetables:9731 bounce:0
                                      free_cma:0
déc. 11 15:35:01 hostname kernel: Node 0 DMA free:12148kB min:232kB low:288kB high:348kB active_anon:3024kB inactive_anon:44kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15992kB managed:15908kB mlocked:0kB dirty:0kB writeback:0kB mapped:40kB shmem:44kB slab_reclaimable:32kB slab_unreclaimable:160kB kernel_stack:40kB pagetables:200kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
déc. 11 15:35:01 hostname kernel: lowmem_reserve[]: 0 2984 2984 2984
déc. 11 15:35:01 hostname kernel: Node 0 DMA32 free:44768kB min:44820kB low:56024kB high:67228kB active_anon:2759708kB inactive_anon:37556kB active_file:368kB inactive_file:416kB unevictable:148kB isolated(anon):0kB isolated(file):0kB present:3117364kB managed:3058728kB mlocked:148kB dirty:12kB writeback:96kB mapped:37336kB shmem:48396kB slab_reclaimable:19344kB slab_unreclaimable:27468kB kernel_stack:3424kB pagetables:38724kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:1540 all_unreclaimable? yes
déc. 11 15:35:01 hostname kernel: lowmem_reserve[]: 0 0 0 0
déc. 11 15:35:01 hostname kernel: Node 0 DMA: 5*4kB (UEM) 4*8kB (UE) 6*16kB (UE) 1*32kB (E) 7*64kB (UEM) 0*128kB 3*256kB (UEM) 3*512kB (UEM) 1*1024kB (E) 2*2048kB (ER) 1*4096kB (M) = 12148kB
déc. 11 15:35:01 hostname kernel: Node 0 DMA32: 402*4kB (UER) 661*8kB (UEM) 437*16kB (UE) 141*32kB (UE) 96*64kB (UEM) 16*128kB (UE) 3*256kB (U) 0*512kB 15*1024kB (M) 1*2048kB (M) 0*4096kB = 44768kB
déc. 11 15:35:01 hostname kernel: Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=2048kB
déc. 11 15:35:01 hostname kernel: 12341 total pagecache pages
déc. 11 15:35:01 hostname kernel: 0 pages in swap cache
déc. 11 15:35:01 hostname kernel: Swap cache stats: add 0, delete 0, find 0/0
déc. 11 15:35:01 hostname kernel: Free swap  = 0kB
déc. 11 15:35:01 hostname kernel: Total swap = 0kB
déc. 11 15:35:01 hostname kernel: 783436 pages RAM
déc. 11 15:35:01 hostname kernel: 14777 pages reserved
déc. 11 15:35:01 hostname kernel: 557929 pages shared
déc. 11 15:35:01 hostname kernel: 739735 pages non-shared
déc. 11 15:35:01 hostname kernel: [ pid ]   uid  tgid total_vm      rss nr_ptes swapents oom_score_adj name
déc. 11 15:35:01 hostname kernel: [  152]     0   152   157732       79     284        0             0 systemd-journal
déc. 11 15:35:01 hostname kernel: [  184]     0   184     8115      317      19        0         -1000 systemd-udevd
déc. 11 15:35:01 hostname kernel: [  471]     0   471    82124      530      56        0             0 NetworkManager
déc. 11 15:35:01 hostname kernel: [  472]     0   472     6454       79      18        0             0 systemd-logind
déc. 11 15:35:01 hostname kernel: [  474]     0   474    20099      626      41        0             0 cupsd
déc. 11 15:35:01 hostname kernel: [  475]    81   475     4604      317      14        0          -900 dbus-daemon
déc. 11 15:35:01 hostname login[17681]: pam_unix(login:session): session opened for user username by LOGIN(uid=0)
déc. 11 15:35:01 hostname kernel: [  478]     0   478    47623      185      28        0             0 gdm
déc. 11 15:35:01 hostname kernel: [  491]     0   491    69089      264      38        0             0 gdm-simple-slav
déc. 11 15:35:01 hostname kernel: [  495]     0   495    52967    17799     112        0             0 Xorg
déc. 11 15:35:01 hostname kernel: [  496]     0   496    65758      934      32        0             0 accounts-daemon
déc. 11 15:35:01 hostname kernel: [  502]   102   502   126663     1810      46        0             0 polkitd
déc. 11 15:35:01 hostname kernel: [  504]     0   504    78582     1823      52        0             0 colord
déc. 11 15:35:01 hostname kernel: [  515]     0   515     7563      150      19        0             0 wpa_supplicant
déc. 11 15:35:01 hostname kernel: [  525]   120   525     7213      100      19        0             0 systemd
déc. 11 15:35:01 hostname kernel: [  527]   120   527    12666      255      29        0             0 (sd-pam)
déc. 11 15:35:01 hostname kernel: [  533]     0   533     2152       46      10        0             0 dhcpcd
déc. 11 15:35:01 hostname kernel: [  557]     0   557    56854      316      40        0             0 upowerd
déc. 11 15:35:01 hostname kernel: [  614]     0   614     2152       46      10        0             0 dhcpcd
déc. 11 15:35:01 hostname kernel: [  745]     0   745    98980     2352      64        0             0 gdm-session-wor
déc. 11 15:35:01 hostname kernel: [  748]  1000   748     7213       99      19        0             0 systemd
déc. 11 15:35:01 hostname kernel: [  749]  1000   749    12666      263      29        0             0 (sd-pam)
déc. 11 15:35:01 hostname kernel: [  752]  1000   752    91654     1159      41        0             0 gnome-keyring-d
déc. 11 15:35:01 hostname kernel: [  754]  1000   754   138634      493      99        0             0 gnome-session
déc. 11 15:35:01 hostname kernel: [  768]  1000   768     3976       38      13        0             0 dbus-launch
déc. 11 15:35:02 hostname kernel: [  769]  1000   769     4912      513      14        0             0 dbus-daemon
déc. 11 15:35:02 hostname kernel: [  772]  1000   772     3166       80      10        0             0 ssh-agent
déc. 11 15:35:02 hostname kernel: [  775]  1000   775    84370      678      33        0             0 at-spi-bus-laun
déc. 11 15:35:02 hostname systemd[1]: Starting Session 4 of user username.
déc. 11 15:35:02 hostname systemd-logind[472]: New session 4 of user username.
déc. 11 15:35:02 hostname systemd[1]: Started Session 4 of user username.
déc. 11 15:35:02 hostname login[17681]: LOGIN ON tty2 BY username
déc. 11 15:35:02 hostname kernel: [  779]  1000   779     4395      116      13        0             0 dbus-daemon
déc. 11 15:35:02 hostname kernel: [  782]  1000   782    31222      198      32        0             0 at-spi2-registr
déc. 11 15:35:02 hostname kernel: [  791]  1000   791   341490     2546     212        0             0 gnome-settings-
déc. 11 15:35:02 hostname kernel: [  803]  1000   803    50098      217      32        0             0 gvfsd
déc. 11 15:35:02 hostname kernel: [  809]  1000   809    93198      652      88        0             0 pulseaudio
déc. 11 15:35:02 hostname kernel: [  810]   133   810    42165       55      19        0             0 rtkit-daemon
déc. 11 15:35:02 hostname kernel: [  816]  1000   816    88701      219      39        0             0 gvfsd-fuse
déc. 11 15:35:02 hostname kernel: [  827]  1000   827    44128      285      21        0             0 dconf-service
déc. 11 15:35:02 hostname kernel: [  830]     0   830    88452      393      37        0             0 udisksd
déc. 11 15:35:02 hostname kernel: [  837]  1000   837   103711      438      97        0             0 gsd-printer
déc. 11 15:35:02 hostname kernel: [  846]  1000   846    17304      135      37        0             0 gconf-helper
déc. 11 15:35:02 hostname kernel: [  848]  1000   848    11426      202      27        0             0 gconfd-2
déc. 11 15:35:02 hostname kernel: [  850]  1000   850    89925     1001      40        0             0 ibus-daemon
déc. 11 15:35:02 hostname kernel: [  854]  1000   854    71274      207      40        0             0 ibus-dconf
déc. 11 15:35:02 hostname kernel: [  856]  1000   856    82143      550      89        0             0 ibus-x11
déc. 11 15:35:02 hostname kernel: [  865]  1000   865   490808    84757     496        0             0 gnome-shell
déc. 11 15:35:02 hostname kernel: [  873]  1000   873    52301      253      36        0             0 ibus-engine-sim
déc. 11 15:35:02 hostname kernel: [  886]  1000   886   122524     1764      70        0             0 gnome-shell-cal
déc. 11 15:35:02 hostname kernel: [  892]  1000   892   302273     2741     165        0             0 evolution-sourc
déc. 11 15:35:02 hostname kernel: [  895]  1000   895    95391      499      54        0             0 mission-control
déc. 11 15:35:02 hostname kernel: [  899]  1000   899   288823     8032     184        0             0 goa-daemon
déc. 11 15:35:03 hostname kernel: [  908]  1000   908    74163      402      43        0             0 gvfs-udisks2-vo
déc. 11 15:35:03 hostname kernel: [  913]  1000   913    52309      264      38        0             0 gvfs-goa-volume
déc. 11 15:35:03 hostname kernel: [  917]  1000   917    68304      236      34        0             0 gvfs-afc-volume
déc. 11 15:35:03 hostname kernel: [  922]  1000   922    49096      756      31        0             0 gvfs-gphoto2-vo
déc. 11 15:35:03 hostname kernel: [  926]  1000   926    46023      192      26        0             0 gvfs-mtp-volume
déc. 11 15:35:03 hostname kernel: [  928]  1000   928    27234      346      23        0             0 gvfsd-metadata
déc. 11 15:35:03 hostname kernel: [  969]  1000   969   393544    16251     221        0             0 evolution-calen
déc. 11 15:35:03 hostname kernel: [  970]  1000   970   121647     1552      99        0             0 zeitgeist-datah
déc. 11 15:35:03 hostname kernel: [  983]  1000   983   108204     2348      64        0             0 tracker-store
déc. 11 15:35:03 hostname kernel: [  989]  1000   989   134035     1425      84        0             0 tracker-miner-f
déc. 11 15:35:03 hostname kernel: [  994]  1000   994    89533      839      43        0             0 zeitgeist-daemo
déc. 11 15:35:04 hostname kernel: [  995]  1000   995   187376     2301     198        0             0 evolution-alarm
déc. 11 15:35:04 hostname kernel: [ 1093]  1000  1093   184129     1392     136        0             0 nm-applet
déc. 11 15:35:04 hostname kernel: [ 1100]  1000  1100    73740      286      45        0             0 telepathy-logge
déc. 11 15:35:04 hostname kernel: [ 1147]  1000  1147    68498      198      36        0             0 gvfsd-burn
déc. 11 15:35:04 hostname kernel: [ 1165]  1000  1165    12786      107      28        0             0 gnome-keyring-d
déc. 11 15:35:04 hostname kernel: [ 1389]  1000  1389   398982     8110     302        0             0 nautilus
déc. 11 15:35:04 hostname kernel: [ 1398]  1000  1398    88619      795      40        0             0 gvfsd-trash
déc. 11 15:35:04 hostname kernel: [ 1457]  1000  1457   203280    24474     225        0             0 lyx
déc. 11 15:35:04 hostname kernel: [ 1559]  1000  1559   183224     3012     149        0             0 gnome-terminal-
déc. 11 15:35:04 hostname kernel: [ 1562]  1000  1562     2092       30      10        0             0 gnome-pty-helpe
déc. 11 15:35:04 hostname kernel: [ 1563]  1000  1563    10912      634      25        0             0 zsh
déc. 11 15:35:04 hostname kernel: [ 1593]  1000  1593    57029     4140     110        0             0 gvim
déc. 11 15:35:04 hostname kernel: [ 2607]  1000  2607   102633      532      67        0             0 gvfsd-dav
déc. 11 15:35:04 hostname kernel: [ 3103]  1000  3103    10908      627      27        0             0 zsh
déc. 11 15:35:04 hostname kernel: [ 3148]  1000  3148   133807    31626     181        0             0 ipython2
déc. 11 15:35:04 hostname kernel: [ 3162]  1000  3162    98936     1056      60        0             0 gvfsd-http
déc. 11 15:35:04 hostname kernel: [ 3302]  1000  3302   107936      982      42        0             0 gvfsd-sftp
déc. 11 15:35:04 hostname kernel: [ 3308]  1000  3308     8996      212      21        0             0 ssh
déc. 11 15:35:04 hostname kernel: [ 5660]     2  5660    14912      126      31        0             0 dbus
déc. 11 15:35:04 hostname kernel: [ 8987]     0  8987     3653       42      11        0             0 rsync
déc. 11 15:35:04 hostname kernel: [ 9769]  1000  9769   511482    26442     351        0             0 chromium
déc. 11 15:35:05 hostname kernel: [ 9773]  1000  9773    93826     1522     144        0             0 chromium
déc. 11 15:35:05 hostname kernel: [ 9774]  1000  9774     1594       20       9        0             0 chrome-sandbox
déc. 11 15:35:05 hostname kernel: [ 9775]  1000  9775   104526     1647     158        0             0 chromium
déc. 11 15:35:05 hostname kernel: [ 9781]  1000  9781    42248      284      78        0             0 nacl_helper
déc. 11 15:35:05 hostname kernel: [ 9782]  1000  9782   159825     1664     139        0             0 chromium
déc. 11 15:35:05 hostname kernel: [ 9811]  1000  9811   329690    27929     379        0           300 chromium
déc. 11 15:35:05 hostname kernel: [ 9821]  1000  9821   321850    24448     515        0           300 chromium
déc. 11 15:35:05 hostname kernel: [ 9828]  1000  9828   305135     5463     199        0           300 chromium
déc. 11 15:35:05 hostname kernel: [ 9834]  1000  9834   305197     7785     219        0           300 chromium
déc. 11 15:35:05 hostname kernel: [13644]  1000 13644    11491      702      27        0             0 zsh
déc. 11 15:35:05 hostname kernel: [14978]  1000 14978   510597     4097     190        0             0 epiphany
déc. 11 15:35:05 hostname kernel: [15037]  1000 15037   490075     7884     183        0             0 WebKitWebProces
déc. 11 15:35:05 hostname kernel: [16463]  1000 16463   606648   342911     976        0             0 python2
déc. 11 15:35:05 hostname kernel: [17520]  1000 17520   307237     7027     213        0           300 chromium
déc. 11 15:35:05 hostname kernel: [17570]  1000 17570   308086     8086     216        0           300 chromium
déc. 11 15:35:05 hostname kernel: [17577]  1000 17577   308518     7981     210        0           300 chromium
déc. 11 15:35:05 hostname kernel: [17665]     0 17665    15239      114      36        0             0 login
déc. 11 15:35:05 hostname kernel: Out of memory: Kill process 16463 (python2) score 447 or sacrifice child
déc. 11 15:35:05 hostname kernel: Killed process 16463 (python2) total-vm:2426592kB, anon-rss:1366496kB, file-rss:5148kB

sumber
2
Mungkin Anda harus menjelaskan lebih detail apa itu "eat_all_my_memory". Jika Anda memiliki satu proses yang tiba-tiba memaksimalkan memori sistem, biasanya proses ini selesai dengan cepat.
goldilocks
Terakhir kali itu adalah notebook IPython. Saya membuat kesalahan sederhana dan mengalokasikan matriks 100 kali lebih besar dari yang saya inginkan. Dan OOM dan crash.
Ini cukup mudah dilakukan dengan sengaja, tentu saja, dan setiap kali saya mengujinya, ketika meteran merah garis proses mati segera. Apakah ini sistem inti tunggal? Kenyataan bahwa HDD Anda membuat semua sans swap sibuk adalah aneh - bahkan dengan swap diaktifkan, saya tidak melihat sistem mencoba untuk memanfaatkannya ketika satu proses berubah menjadi kacau. Telusuri kembali /var/log/syslog(atau messages, atau di mana pun) hingga terakhir kali ini terjadi dan poskan hal-hal menarik yang Anda temukan.
goldilocks

Jawaban:

7

Itu tidak menulis apa pun ke disk; itu membaca dari itu. Swap hanya digunakan untuk menyimpan data yang tidak didukung oleh file lain. Data, termasuk kode program, yang didukung oleh file lain dapat dengan mudah dibuang ketika belum dimodifikasi. Jadi yang Anda lihat adalah program Anda dibuang untuk membebaskan beberapa ram, kemudian harus dibaca dari disk lagi.

Jika Anda menetapkan /proc/sys/vm/overcommit_memoryke 2 dan /proc/sys/vm/overcommit_ratioke 90, kernel ini akan menolak untuk mengalokasikan lebih dari 90% ram Anda. Ini akan memastikan Anda tidak pernah mendapatkan ram terlalu rendah. Namun dalam praktiknya, Anda akan mendapatkan lebih dari 10% ram gratis sebelum alokasi gagal, karena sebagian besar aplikasi tidak menggunakan semua ram yang mereka alokasikan.

psusi
sumber
Saya benar-benar tidak mengerti paragraf pertama Anda. Saya keliru mengalokasikan terlalu banyak memori dari sesi interaktif Python. Mengapa itu membaca GB data? Data apa dalam kasus ini?
2
@Gael, semua program lain yang membutuhkan waktu lama untuk merespons terus-menerus dibaca ulang dari disk.
psusi
1
@ Ya ampun, langkah-langkah yang saya sarankan sudah untuk menghindari kehabisan ram.
psusi
1
Kemungkinan besar ini adalah jawaban yang tepat. Mematikan swap tidak membuat sistem lebih responsif. Ini memiliki RAM yang cukup.
Gilles 'SO- stop being evil'
2
@goldilocks, tentu saja lebih agresif ketika ram rendah. Reklamasi hanya tendangan sama sekali ketika ram relatif rendah dan masuk ke gigi tinggi ketika benar-benar rendah. Apakah itu mengklaim kembali dengan menulis data anonim ke perangkat swap, atau hanya membuang halaman yang dipetakan (apakah mereka dipetakan secara aktif oleh proses yang berjalan atau hanya di cache sistem file) tidak terlalu penting untuk jalur penerimaan kembali. Jika itu harus membebaskan memori, maka itu harus membebaskan memori, bahkan jika itu berarti program Anda yang sedang berjalan harus menunggu untuk membawa kode mereka kembali.
psusi
3

Tukar bukan masalahnya, karena tidak menggunakan:

hostname kernel: Free swap  = 0kB
hostname kernel: Total swap = 0kB

Dan saya pikir aktivitas OOM juga bukan masalah utama:

systemd-logind[472]: Failed to save session data for 3: No space left on device

Itu mungkin akan melemparkan kunci pas ke sejumlah karya. Jika Anda benar-benar mengisi sistem file root, perkirakan kinerja sistem akan sangat menurun. Kasus khusus ini selama upaya login, jadi "8. log off karena reaper OOM" harus benar-benar "8. log off karena hard disk penuh" ...

systemd-logind[472]: Removed session 3.

Satu-satunya proses dalam laporan yang mengalami konsekuensi yang terkait langsung dengan masalah OOM adalah kromium dan python2.

goldilocks
sumber
1
Dugaan saya adalah bahwa systemd menyimpannya ke tmpfs, jadi ram penuh juga akan menyebabkan kesalahan di samping semua kelambatan yang terasa seperti bertukar / paging (dan secara teknis itu bahkan ketika Anda tidak memiliki swap).
psusi
Ya, maka pertanyaannya adalah "apa yang memakan 15GB HDD meskipun tidak ada yang seharusnya ditulis ke disk?"
Itulah pertanyaannya, apakah Anda memiliki 15 GB gratis. Jika Anda masih memiliki 15 GB segera setelah ini, maka mungkin itu adalah sesuatu yang dipicu oleh masalah memori rendah, dan yang dibersihkan setelahnya. Itu adalah jumlah yang cukup luar biasa untuk satu proses untuk digunakan, saya tidak tahu apa yang akan terjadi. Dan banyak proses tidak mungkin, kecuali mereka semua adalah contoh dari hal yang sama (karena beberapa proses yang tidak terkait terlibat dalam perilaku aneh yang sama akan menjadi kebetulan yang bahkan lebih aneh).
goldilocks