A unidade de troca está listada - mas não está sendo usada

1

Estou usando um USB Thumb Stick de 16GB para uma unidade de troca, porque preciso fazer um processo que consuma muita memória. A unidade de troca diz que está listada e instalada, mas o ODROID está congelando por falta de memória quando atinge 2 GB. Aqui está a informação.

uname -a

Linux odroidxu4 4.9.11-odroidxu4 #12 SMP PREEMPT Thu Feb 23 22:10:22 CET 2017 armv7l GNU/Linux

sudo fdisk -l

Device         Boot Start      End  Sectors  Size Id Type
/dev/mmcblk1p1       8192 30493951 30485760 14.5G 83 Linux

Device     Boot Start      End  Sectors  Size Id Type
/dev/sda1  *     8064 30719999 30711936 14.7G  b W95 FAT32

/ etc / fstab

UUID=78fe8581-c55e-4665-bbf1-724ea046a7c3 none swap sw,pri=5 0 0
UUID=4d62b70f-fbde-4e55-bf71-089484f36c8f / ext4 errors=remount-ro 0 1 
tmpfs /tmp tmpfs defaults,nosuid 0 0
/var/swap none swap sw 0 0

sudo swap -s

master@odroidxu4:~$ sudo swapon -s
Filename                Type        Size    Used    Priority
/dev/sda1                               partition   15355964    0   -1

blkid

/dev/mmcblk1p1: UUID="4d62b70f-fbde-4e55-bf71-089484f36c8f" TYPE="ext4" PARTUUID="d528b458-01"
/dev/sda1: UUID="78fe8581-c55e-4665-bbf1-724ea046a7c3" TYPE="swap" PARTUUID="cf5e55bf-01"
/dev/mmcblk1: PTUUID="d528b458" PTTYPE="dos"

Mas quando o processo ativo é executado, o swap claramente não está funcionando. Quando eu uso free -m você pode ver que eu estou completamente sem RAM e o swap ainda diz 0.

master@odroidxu4:~$ free -m
             total       used       free     shared    buffers     cached
Mem:          1950       1913         37          9          0         11
-/+ buffers/cache:       1901         48
Swap:        14996          0      14996

Atualmente, o ODROID está congelando e desligando devido à falta de memória.

Alguma ideia de como posso corrigir isso?

mount

master@odroidxu4:~$ mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=187287,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,relatime,size=399444k,mode=755)
/dev/mmcblk1p1 on / type ext4 (rw,relatime,errors=remount-ro)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,relatime)
/dev/mmcblk1p1 on /var/log.hdd type ext4 (rw,relatime,errors=remount-ro)
log2ram on /var/log type tmpfs (rw,nosuid,nodev,noexec,relatime,size=51200k,mode=755)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=199724k,mode=700)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=199724k,mode=700,uid=1000,gid=1000)

tentando o mkswap agora também ...

Na verdade, esse último mkswap transformou meu swapon -s em

master@odroidxu4:~$ sudo swapon -s
Filename                Type        Size    Used    Priority
/dev/sda1                               partition   15355964    0   -2
/var/swap                               file        131068  0   -1
    
por Nefariis 02.03.2017 / 22:57

2 respostas

1

O Odroid C2 tem um processador de 32 bits, o que significa que ele fornece um espaço de endereço virtual de 4 GB. Desses 4 GB, 2 GB estão disponíveis para o espaço do usuário, os 2 GB restantes são reservados para o kernel (supondo que o kernel esteja configurado com CONFIG_VMSPLIT_2G). Isso significa que um único processo pode crescer até 2 GB.

Com os atuais tamanhos crescentes de RAM, o espaço de endereçamento de 32 bits está diminuindo muito rapidamente.

Você pode tentar dividir o processo intensivo de memória em vários processos menores. Ou mova o aplicativo para um computador de 64 bits.

    
por 03.03.2017 / 02:33
0

Sua partição swap tem o tipo errado. fdisk -l deve retornar 82 para Id e Linux swap / Solaris para System . mkswap /dev/mmcblk1p1 deve criar o tipo correto.

Por favor, consulte o link . Outro guia seria: link .

    
por 03.03.2017 / 08:06