Fabric very high memory usage #800

Closed
jstarcher opened this Issue Dec 15, 2012 · 8 comments

Projects

None yet

4 participants

@jstarcher

I have a fabric task I often use to reindex my solr index from a 4 GB mysql database. The process takes around 10 hours to complete and is very verbose. I invoke the fab task via Jenkins so I can capture the output nicely. I noticed today while running the reindex that the fab process took 2.7 GB of my system memory!

Fabric 1.4.3
ssh (library) 1.7.14
Python 2.7.3

Linux jenkins 2.6.32-24-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.1 LTS

From top

VIRT   RES   SHR S  %CPU %MEM TIME+ COMMAND
3318m 2.7g 3716 R   40 69.3 114:19.58 fab

cat /proc/16816/status

Name:   fab
State:  S (sleeping)
Tgid:   16816
Pid:    16816
PPid:   16813
TracerPid:  0
Uid:    111 111 111 111
Gid:    120 120 120 120
FDSize: 64
Groups: 27 120 
VmPeak:  3397896 kB
VmSize:  3397896 kB
VmLck:         0 kB
VmHWM:   2805864 kB
VmRSS:   2805864 kB
VmData:  3338936 kB
VmStk:       248 kB
VmExe:      2500 kB
VmLib:      6064 kB
VmPTE:      5700 kB
Threads:    5
SigQ:   0/31881
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000004
SigIgn: 0000000001001000
SigCgt: 0000000180000002
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
Cpus_allowed:   f
Cpus_allowed_list:  0-3
Mems_allowed:   00000000,00000001
Mems_allowed_list:  0
voluntary_ctxt_switches:    5187747
nonvoluntary_ctxt_switches: 530

cat /proc/16816/pmap

16816:   /usr/bin/python /usr/local/bin/fab -f /home/foo/utility/fabfile.py -R prod solr_index:foo=bar,bar=baz
0000000000400000   2500K r-x--  /usr/bin/python2.7
0000000000870000      4K r----  /usr/bin/python2.7
0000000000871000    420K rw---  /usr/bin/python2.7
00000000008da000     72K rw---    [ anon ]
00000000018dd000   5076K rw---    [ anon ]
00007f8867bd9000 1512944K rw---    [ anon ]
00007f8902c90000 1512944K rw---    [ anon ]
00007f8994000000    132K rw---    [ anon ]
00007f8994021000  65404K -----    [ anon ]
00007f8998000000    132K rw---    [ anon ]
00007f8998021000  65404K -----    [ anon ]
00007f899c000000    864K rw---    [ anon ]
00007f899c0d8000  64672K -----    [ anon ]
00007f89a21fd000      4K -----    [ anon ]
00007f89a21fe000  10240K rw---    [ anon ]
00007f89a2bfe000      4K -----    [ anon ]
00007f89a2bff000  10240K rw---    [ anon ]
00007f89a35ff000      4K -----    [ anon ]
00007f89a3600000  10240K rw---    [ anon ]
00007f89a4000000    248K rw---    [ anon ]
00007f89a403e000  65288K -----    [ anon ]
00007f89a8530000      4K -----    [ anon ]
00007f89a8531000  10240K rw---    [ anon ]
00007f89a8f31000     96K r-x--  /lib/x86_64-linux-gnu/libresolv-2.15.so
00007f89a8f49000   2048K -----  /lib/x86_64-linux-gnu/libresolv-2.15.so
00007f89a9149000      4K r----  /lib/x86_64-linux-gnu/libresolv-2.15.so
00007f89a914a000      4K rw---  /lib/x86_64-linux-gnu/libresolv-2.15.so
00007f89a914b000      8K rw---    [ anon ]
00007f89a914d000     28K r-x--  /lib/x86_64-linux-gnu/libnss_dns-2.15.so
00007f89a9154000   2044K -----  /lib/x86_64-linux-gnu/libnss_dns-2.15.so
00007f89a9353000      4K r----  /lib/x86_64-linux-gnu/libnss_dns-2.15.so
00007f89a9354000      4K rw---  /lib/x86_64-linux-gnu/libnss_dns-2.15.so
00007f89a9355000     48K r-x--  /lib/x86_64-linux-gnu/libnss_files-2.15.so
00007f89a9361000   2044K -----  /lib/x86_64-linux-gnu/libnss_files-2.15.so
00007f89a9560000      4K r----  /lib/x86_64-linux-gnu/libnss_files-2.15.so
00007f89a9561000      4K rw---  /lib/x86_64-linux-gnu/libnss_files-2.15.so
00007f89a9562000    260K rw---    [ anon ]
00007f89a95a3000     80K r-x--  /usr/lib/python2.7/lib-dynload/datetime.so
00007f89a95b7000   2044K -----  /usr/lib/python2.7/lib-dynload/datetime.so
00007f89a97b6000      4K r----  /usr/lib/python2.7/lib-dynload/datetime.so
00007f89a97b7000     16K rw---  /usr/lib/python2.7/lib-dynload/datetime.so
00007f89a97bb000    260K rw---    [ anon ]
00007f89a97fc000      8K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
00007f89a97fe000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
00007f89a99fd000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
00007f89a99fe000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
00007f89a99ff000    260K rw---    [ anon ]
00007f89a9a40000      8K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
00007f89a9a42000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
00007f89a9c41000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
00007f89a9c42000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
00007f89a9c43000     28K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
00007f89a9c4a000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
00007f89a9e49000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
00007f89a9e4a000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
00007f89a9e4b000    260K rw---    [ anon ]
00007f89a9e8c000     56K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
00007f89a9e9a000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
00007f89aa099000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
00007f89aa09a000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
00007f89aa09b000    520K rw---    [ anon ]
00007f89aa11d000     32K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
00007f89aa125000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
00007f89aa324000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
00007f89aa325000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
00007f89aa326000     12K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
00007f89aa329000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
00007f89aa528000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
00007f89aa529000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
00007f89aa52a000    408K r-x--  /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
00007f89aa590000   2044K -----  /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
00007f89aa78f000      4K r----  /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
00007f89aa790000     32K rw---  /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
00007f89aa798000     64K r-x--  /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
00007f89aa7a8000   2044K -----  /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
00007f89aa9a7000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
00007f89aa9a8000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
00007f89aa9a9000      8K r-x--  /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
00007f89aa9ab000   2048K -----  /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
00007f89aabab000      4K r----  /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
00007f89aabac000      4K rw---  /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
00007f89aabad000   1032K rw---    [ anon ]
00007f89aacaf000     16K r-x--  /usr/lib/python2.7/lib-dynload/termios.so
00007f89aacb3000   2044K -----  /usr/lib/python2.7/lib-dynload/termios.so
00007f89aaeb2000      4K r----  /usr/lib/python2.7/lib-dynload/termios.so
00007f89aaeb3000      8K rw---  /usr/lib/python2.7/lib-dynload/termios.so
00007f89aaeb5000    520K rw---    [ anon ]
00007f89aaf37000     12K r-x--  /usr/lib/python2.7/lib-dynload/_heapq.so
00007f89aaf3a000   2044K -----  /usr/lib/python2.7/lib-dynload/_heapq.so
00007f89ab139000      4K r----  /usr/lib/python2.7/lib-dynload/_heapq.so
00007f89ab13a000      8K rw---  /usr/lib/python2.7/lib-dynload/_heapq.so
00007f89ab13c000     84K r-x--  /lib/x86_64-linux-gnu/libgcc_s.so.1
00007f89ab151000   2044K -----  /lib/x86_64-linux-gnu/libgcc_s.so.1
00007f89ab350000      4K r----  /lib/x86_64-linux-gnu/libgcc_s.so.1
00007f89ab351000      4K rw---  /lib/x86_64-linux-gnu/libgcc_s.so.1
00007f89ab352000   1748K r-x--  /lib/x86_64-linux-gnu/libc-2.15.so
00007f89ab507000   2044K -----  /lib/x86_64-linux-gnu/libc-2.15.so
00007f89ab706000     16K r----  /lib/x86_64-linux-gnu/libc-2.15.so
00007f89ab70a000      8K rw---  /lib/x86_64-linux-gnu/libc-2.15.so
00007f89ab70c000     20K rw---    [ anon ]
00007f89ab711000   1004K r-x--  /lib/x86_64-linux-gnu/libm-2.15.so
00007f89ab80c000   2044K -----  /lib/x86_64-linux-gnu/libm-2.15.so
00007f89aba0b000      4K r----  /lib/x86_64-linux-gnu/libm-2.15.so
00007f89aba0c000      4K rw---  /lib/x86_64-linux-gnu/libm-2.15.so
00007f89aba0d000     88K r-x--  /lib/x86_64-linux-gnu/libz.so.1.2.3.4
00007f89aba23000   2044K -----  /lib/x86_64-linux-gnu/libz.so.1.2.3.4
00007f89abc22000      4K r----  /lib/x86_64-linux-gnu/libz.so.1.2.3.4
00007f89abc23000      4K rw---  /lib/x86_64-linux-gnu/libz.so.1.2.3.4
00007f89abc24000   1660K r-x--  /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
00007f89abdc3000   2044K -----  /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
00007f89abfc2000    108K r----  /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
00007f89abfdd000     44K rw---  /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
00007f89abfe8000     16K rw---    [ anon ]
00007f89abfec000    328K r-x--  /lib/x86_64-linux-gnu/libssl.so.1.0.0
00007f89ac03e000   2048K -----  /lib/x86_64-linux-gnu/libssl.so.1.0.0
00007f89ac23e000     12K r----  /lib/x86_64-linux-gnu/libssl.so.1.0.0
00007f89ac241000     24K rw---  /lib/x86_64-linux-gnu/libssl.so.1.0.0
00007f89ac247000      4K rw---    [ anon ]
00007f89ac248000      8K r-x--  /lib/x86_64-linux-gnu/libutil-2.15.so
00007f89ac24a000   2044K -----  /lib/x86_64-linux-gnu/libutil-2.15.so
00007f89ac449000      4K r----  /lib/x86_64-linux-gnu/libutil-2.15.so
00007f89ac44a000      4K rw---  /lib/x86_64-linux-gnu/libutil-2.15.so
00007f89ac44b000      8K r-x--  /lib/x86_64-linux-gnu/libdl-2.15.so
00007f89ac44d000   2048K -----  /lib/x86_64-linux-gnu/libdl-2.15.so
00007f89ac64d000      4K r----  /lib/x86_64-linux-gnu/libdl-2.15.so
00007f89ac64e000      4K rw---  /lib/x86_64-linux-gnu/libdl-2.15.so
00007f89ac64f000     96K r-x--  /lib/x86_64-linux-gnu/libpthread-2.15.so
00007f89ac667000   2044K -----  /lib/x86_64-linux-gnu/libpthread-2.15.so
00007f89ac866000      4K r----  /lib/x86_64-linux-gnu/libpthread-2.15.so
00007f89ac867000      4K rw---  /lib/x86_64-linux-gnu/libpthread-2.15.so
00007f89ac868000     16K rw---    [ anon ]
00007f89ac86c000    136K r-x--  /lib/x86_64-linux-gnu/ld-2.15.so
00007f89ac88f000    212K r--s-  /var/cache/nscd/passwd
00007f89ac8c4000    520K rw---    [ anon ]
00007f89ac947000    520K rw---    [ anon ]
00007f89ac9fb000    544K rw---    [ anon ]
00007f89aca8a000     16K rw---    [ anon ]
00007f89aca8e000      4K r----  /lib/x86_64-linux-gnu/ld-2.15.so
00007f89aca8f000      8K rw---  /lib/x86_64-linux-gnu/ld-2.15.so
00007ffffa697000    244K rw---    [ stack ]
00007ffffa7ff000      4K r-x--    [ anon ]
ffffffffff600000      4K r-x--    [ anon ]
 total          3397896K

cat /proc/16816/smaps

00400000-00671000 r-xp 00000000 ca:11 272276                             /usr/bin/python2.7
Size:               2500 kB
Rss:                1468 kB
Pss:                1468 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:      1468 kB
Private_Dirty:         0 kB
Referenced:         1468 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
00870000-00871000 r--p 00270000 ca:11 272276                             /usr/bin/python2.7
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
00871000-008da000 rw-p 00271000 ca:11 272276                             /usr/bin/python2.7
Size:                420 kB
Rss:                 280 kB
Pss:                 280 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        84 kB
Private_Dirty:       196 kB
Referenced:          212 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
008da000-008ec000 rw-p 00000000 00:00 0 
Size:                 72 kB
Rss:                  68 kB
Pss:                  68 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        68 kB
Referenced:           52 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
018dd000-01dd2000 rw-p 00000000 00:00 0                                  [heap]
Size:               5076 kB
Rss:                4632 kB
Pss:                4632 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:      4632 kB
Referenced:          728 kB
Swap:                332 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8867bd9000-7f88c4155000 rw-p 00000000 00:00 0 
Size:            1512944 kB
Rss:             1397240 kB
Pss:             1397240 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:   1397240 kB
Referenced:      1185920 kB
Swap:              13936 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8902c90000-7f895f20c000 rw-p 00000000 00:00 0 
Size:            1512944 kB
Rss:             1397032 kB
Pss:             1397032 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:   1397032 kB
Referenced:      1186600 kB
Swap:              14144 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8994000000-7f8994021000 rw-p 00000000 00:00 0 
Size:                132 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8994021000-7f8998000000 ---p 00000000 00:00 0 
Size:              65404 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8998000000-7f8998021000 rw-p 00000000 00:00 0 
Size:                132 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f8998021000-7f899c000000 ---p 00000000 00:00 0 
Size:              65404 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f899c000000-7f899c0d8000 rw-p 00000000 00:00 0 
Size:                864 kB
Rss:                 128 kB
Pss:                 128 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       128 kB
Referenced:           12 kB
Swap:                 12 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f899c0d8000-7f89a0000000 ---p 00000000 00:00 0 
Size:              64672 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a21fd000-7f89a21fe000 ---p 00000000 00:00 0 
Size:                  4 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a21fe000-7f89a2bfe000 rw-p 00000000 00:00 0 
Size:              10240 kB
Rss:                  24 kB
Pss:                  24 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        24 kB
Referenced:           24 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a2bfe000-7f89a2bff000 ---p 00000000 00:00 0 
Size:                  4 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a2bff000-7f89a35ff000 rw-p 00000000 00:00 0 
Size:              10240 kB
Rss:                  12 kB
Pss:                  12 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        12 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a35ff000-7f89a3600000 ---p 00000000 00:00 0 
Size:                  4 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a3600000-7f89a4000000 rw-p 00000000 00:00 0 
Size:              10240 kB
Rss:                  20 kB
Pss:                  20 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        20 kB
Referenced:           20 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a4000000-7f89a403e000 rw-p 00000000 00:00 0 
Size:                248 kB
Rss:                 184 kB
Pss:                 184 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       184 kB
Referenced:          176 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a403e000-7f89a8000000 ---p 00000000 00:00 0 
Size:              65288 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a8530000-7f89a8531000 ---p 00000000 00:00 0 
Size:                  4 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a8531000-7f89a8f31000 rw-p 00000000 00:00 0 
Size:              10240 kB
Rss:                  28 kB
Pss:                  28 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        28 kB
Referenced:           16 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a8f31000-7f89a8f49000 r-xp 00000000 ca:11 196136                     /lib/x86_64-linux-gnu/libresolv-2.15.so
Size:                 96 kB
Rss:                  56 kB
Pss:                   4 kB
Shared_Clean:         56 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           56 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a8f49000-7f89a9149000 ---p 00018000 ca:11 196136                     /lib/x86_64-linux-gnu/libresolv-2.15.so
Size:               2048 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9149000-7f89a914a000 r--p 00018000 ca:11 196136                     /lib/x86_64-linux-gnu/libresolv-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a914a000-7f89a914b000 rw-p 00019000 ca:11 196136                     /lib/x86_64-linux-gnu/libresolv-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a914b000-7f89a914d000 rw-p 00000000 00:00 0 
Size:                  8 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a914d000-7f89a9154000 r-xp 00000000 ca:11 196283                     /lib/x86_64-linux-gnu/libnss_dns-2.15.so
Size:                 28 kB
Rss:                  24 kB
Pss:                   2 kB
Shared_Clean:         24 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           24 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9154000-7f89a9353000 ---p 00007000 ca:11 196283                     /lib/x86_64-linux-gnu/libnss_dns-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9353000-7f89a9354000 r--p 00006000 ca:11 196283                     /lib/x86_64-linux-gnu/libnss_dns-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9354000-7f89a9355000 rw-p 00007000 ca:11 196283                     /lib/x86_64-linux-gnu/libnss_dns-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9355000-7f89a9361000 r-xp 00000000 ca:11 196262                     /lib/x86_64-linux-gnu/libnss_files-2.15.so
Size:                 48 kB
Rss:                  28 kB
Pss:                   1 kB
Shared_Clean:         28 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           28 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9361000-7f89a9560000 ---p 0000c000 ca:11 196262                     /lib/x86_64-linux-gnu/libnss_files-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9560000-7f89a9561000 r--p 0000b000 ca:11 196262                     /lib/x86_64-linux-gnu/libnss_files-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9561000-7f89a9562000 rw-p 0000c000 ca:11 196262                     /lib/x86_64-linux-gnu/libnss_files-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9562000-7f89a95a3000 rw-p 00000000 00:00 0 
Size:                260 kB
Rss:                 244 kB
Pss:                 244 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       244 kB
Referenced:           68 kB
Swap:                 12 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a95a3000-7f89a95b7000 r-xp 00000000 ca:11 302255                     /usr/lib/python2.7/lib-dynload/datetime.so
Size:                 80 kB
Rss:                  36 kB
Pss:                  36 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        36 kB
Private_Dirty:         0 kB
Referenced:           36 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a95b7000-7f89a97b6000 ---p 00014000 ca:11 302255                     /usr/lib/python2.7/lib-dynload/datetime.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a97b6000-7f89a97b7000 r--p 00013000 ca:11 302255                     /usr/lib/python2.7/lib-dynload/datetime.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a97b7000-7f89a97bb000 rw-p 00014000 ca:11 302255                     /usr/lib/python2.7/lib-dynload/datetime.so
Size:                 16 kB
Rss:                  16 kB
Pss:                  16 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        16 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a97bb000-7f89a97fc000 rw-p 00000000 00:00 0 
Size:                260 kB
Rss:                 232 kB
Pss:                 232 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       232 kB
Referenced:           88 kB
Swap:                 24 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a97fc000-7f89a97fe000 r-xp 00000000 ca:11 327422                     /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         8 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a97fe000-7f89a99fd000 ---p 00002000 ca:11 327422                     /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a99fd000-7f89a99fe000 r--p 00001000 ca:11 327422                     /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a99fe000-7f89a99ff000 rw-p 00002000 ca:11 327422                     /usr/lib/python2.7/dist-packages/Crypto/Util/strxor.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a99ff000-7f89a9a40000 rw-p 00000000 00:00 0 
Size:                260 kB
Rss:                 244 kB
Pss:                 244 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       244 kB
Referenced:           24 kB
Swap:                 12 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9a40000-7f89a9a42000 r-xp 00000000 ca:11 327431                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         8 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9a42000-7f89a9c41000 ---p 00002000 ca:11 327431                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9c41000-7f89a9c42000 r--p 00001000 ca:11 327431                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9c42000-7f89a9c43000 rw-p 00002000 ca:11 327431                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/ARC4.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9c43000-7f89a9c4a000 r-xp 00000000 ca:11 327426                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
Size:                 28 kB
Rss:                  16 kB
Pss:                  16 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        16 kB
Private_Dirty:         0 kB
Referenced:           16 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9c4a000-7f89a9e49000 ---p 00007000 ca:11 327426                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9e49000-7f89a9e4a000 r--p 00006000 ca:11 327426                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9e4a000-7f89a9e4b000 rw-p 00007000 ca:11 327426                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/Blowfish.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9e4b000-7f89a9e8c000 rw-p 00000000 00:00 0 
Size:                260 kB
Rss:                 240 kB
Pss:                 240 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       240 kB
Referenced:           52 kB
Swap:                 16 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9e8c000-7f89a9e9a000 r-xp 00000000 ca:11 327432                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
Size:                 56 kB
Rss:                  12 kB
Pss:                  12 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        12 kB
Private_Dirty:         0 kB
Referenced:           12 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89a9e9a000-7f89aa099000 ---p 0000e000 ca:11 327432                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa099000-7f89aa09a000 r--p 0000d000 ca:11 327432                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa09a000-7f89aa09b000 rw-p 0000e000 ca:11 327432                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/DES3.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa09b000-7f89aa11d000 rw-p 00000000 00:00 0 
Size:                520 kB
Rss:                 504 kB
Pss:                 504 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         4 kB
Private_Dirty:       500 kB
Referenced:          272 kB
Swap:                  8 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa11d000-7f89aa125000 r-xp 00000000 ca:11 327429                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
Size:                 32 kB
Rss:                  32 kB
Pss:                  32 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        32 kB
Private_Dirty:         0 kB
Referenced:           32 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa125000-7f89aa324000 ---p 00008000 ca:11 327429                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa324000-7f89aa325000 r--p 00007000 ca:11 327429                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa325000-7f89aa326000 rw-p 00008000 ca:11 327429                     /usr/lib/python2.7/dist-packages/Crypto/Cipher/AES.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa326000-7f89aa329000 r-xp 00000000 ca:11 327423                     /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
Size:                 12 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         8 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa329000-7f89aa528000 ---p 00003000 ca:11 327423                     /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa528000-7f89aa529000 r--p 00002000 ca:11 327423                     /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa529000-7f89aa52a000 rw-p 00003000 ca:11 327423                     /usr/lib/python2.7/dist-packages/Crypto/Util/_counter.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa52a000-7f89aa590000 r-xp 00000000 ca:11 286027                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
Size:                408 kB
Rss:                 116 kB
Pss:                 116 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:       116 kB
Private_Dirty:         0 kB
Referenced:          116 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa590000-7f89aa78f000 ---p 00066000 ca:11 286027                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa78f000-7f89aa790000 r--p 00065000 ca:11 286027                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa790000-7f89aa798000 rw-p 00066000 ca:11 286027                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.0.2
Size:                 32 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa798000-7f89aa7a8000 r-xp 00000000 ca:11 327444                     /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
Size:                 64 kB
Rss:                  24 kB
Pss:                  24 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        24 kB
Private_Dirty:         0 kB
Referenced:           24 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa7a8000-7f89aa9a7000 ---p 00010000 ca:11 327444                     /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa9a7000-7f89aa9a8000 r--p 0000f000 ca:11 327444                     /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa9a8000-7f89aa9a9000 rw-p 00010000 ca:11 327444                     /usr/lib/python2.7/dist-packages/Crypto/PublicKey/_fastmath.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa9a9000-7f89aa9ab000 r-xp 00000000 ca:11 327446                     /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         8 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aa9ab000-7f89aabab000 ---p 00002000 ca:11 327446                     /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
Size:               2048 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aabab000-7f89aabac000 r--p 00002000 ca:11 327446                     /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aabac000-7f89aabad000 rw-p 00003000 ca:11 327446                     /usr/lib/python2.7/dist-packages/Crypto/Hash/SHA256.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aabad000-7f89aacaf000 rw-p 00000000 00:00 0 
Size:               1032 kB
Rss:                 980 kB
Pss:                 980 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       980 kB
Referenced:          244 kB
Swap:                 48 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aacaf000-7f89aacb3000 r-xp 00000000 ca:11 302241                     /usr/lib/python2.7/lib-dynload/termios.so
Size:                 16 kB
Rss:                  16 kB
Pss:                  16 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:        16 kB
Private_Dirty:         0 kB
Referenced:           16 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aacb3000-7f89aaeb2000 ---p 00004000 ca:11 302241                     /usr/lib/python2.7/lib-dynload/termios.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aaeb2000-7f89aaeb3000 r--p 00003000 ca:11 302241                     /usr/lib/python2.7/lib-dynload/termios.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aaeb3000-7f89aaeb5000 rw-p 00004000 ca:11 302241                     /usr/lib/python2.7/lib-dynload/termios.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aaeb5000-7f89aaf37000 rw-p 00000000 00:00 0 
Size:                520 kB
Rss:                 492 kB
Pss:                 492 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       492 kB
Referenced:          208 kB
Swap:                 20 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aaf37000-7f89aaf3a000 r-xp 00000000 ca:11 302268                     /usr/lib/python2.7/lib-dynload/_heapq.so
Size:                 12 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         8 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aaf3a000-7f89ab139000 ---p 00003000 ca:11 302268                     /usr/lib/python2.7/lib-dynload/_heapq.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab139000-7f89ab13a000 r--p 00002000 ca:11 302268                     /usr/lib/python2.7/lib-dynload/_heapq.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab13a000-7f89ab13c000 rw-p 00003000 ca:11 302268                     /usr/lib/python2.7/lib-dynload/_heapq.so
Size:                  8 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  4 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab13c000-7f89ab151000 r-xp 00000000 ca:11 195565                     /lib/x86_64-linux-gnu/libgcc_s.so.1
Size:                 84 kB
Rss:                  16 kB
Pss:                   4 kB
Shared_Clean:         16 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           16 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab151000-7f89ab350000 ---p 00015000 ca:11 195565                     /lib/x86_64-linux-gnu/libgcc_s.so.1
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab350000-7f89ab351000 r--p 00014000 ca:11 195565                     /lib/x86_64-linux-gnu/libgcc_s.so.1
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab351000-7f89ab352000 rw-p 00015000 ca:11 195565                     /lib/x86_64-linux-gnu/libgcc_s.so.1
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab352000-7f89ab507000 r-xp 00000000 ca:11 196131                     /lib/x86_64-linux-gnu/libc-2.15.so
Size:               1748 kB
Rss:                 692 kB
Pss:                  23 kB
Shared_Clean:        688 kB
Shared_Dirty:          0 kB
Private_Clean:         4 kB
Private_Dirty:         0 kB
Referenced:          692 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab507000-7f89ab706000 ---p 001b5000 ca:11 196131                     /lib/x86_64-linux-gnu/libc-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab706000-7f89ab70a000 r--p 001b4000 ca:11 196131                     /lib/x86_64-linux-gnu/libc-2.15.so
Size:                 16 kB
Rss:                  16 kB
Pss:                  16 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        16 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab70a000-7f89ab70c000 rw-p 001b8000 ca:11 196131                     /lib/x86_64-linux-gnu/libc-2.15.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   8 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         8 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab70c000-7f89ab711000 rw-p 00000000 00:00 0 
Size:                 20 kB
Rss:                  20 kB
Pss:                  20 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        20 kB
Referenced:           12 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab711000-7f89ab80c000 r-xp 00000000 ca:11 196257                     /lib/x86_64-linux-gnu/libm-2.15.so
Size:               1004 kB
Rss:                 120 kB
Pss:                  61 kB
Shared_Clean:         84 kB
Shared_Dirty:          0 kB
Private_Clean:        36 kB
Private_Dirty:         0 kB
Referenced:          120 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ab80c000-7f89aba0b000 ---p 000fb000 ca:11 196257                     /lib/x86_64-linux-gnu/libm-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aba0b000-7f89aba0c000 r--p 000fa000 ca:11 196257                     /lib/x86_64-linux-gnu/libm-2.15.so
Size:                  4 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  4 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aba0c000-7f89aba0d000 rw-p 000fb000 ca:11 196257                     /lib/x86_64-linux-gnu/libm-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aba0d000-7f89aba23000 r-xp 00000000 ca:11 195588                     /lib/x86_64-linux-gnu/libz.so.1.2.3.4
Size:                 88 kB
Rss:                  16 kB
Pss:                   0 kB
Shared_Clean:         16 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           16 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89aba23000-7f89abc22000 ---p 00016000 ca:11 195588                     /lib/x86_64-linux-gnu/libz.so.1.2.3.4
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abc22000-7f89abc23000 r--p 00015000 ca:11 195588                     /lib/x86_64-linux-gnu/libz.so.1.2.3.4
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abc23000-7f89abc24000 rw-p 00016000 ca:11 195588                     /lib/x86_64-linux-gnu/libz.so.1.2.3.4
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abc24000-7f89abdc3000 r-xp 00000000 ca:11 195649                     /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
Size:               1660 kB
Rss:                 608 kB
Pss:                  82 kB
Shared_Clean:        608 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:          608 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abdc3000-7f89abfc2000 ---p 0019f000 ca:11 195649                     /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abfc2000-7f89abfdd000 r--p 0019e000 ca:11 195649                     /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
Size:                108 kB
Rss:                 104 kB
Pss:                 104 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:       104 kB
Referenced:            4 kB
Swap:                  4 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abfdd000-7f89abfe8000 rw-p 001b9000 ca:11 195649                     /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
Size:                 44 kB
Rss:                  44 kB
Pss:                  44 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        44 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abfe8000-7f89abfec000 rw-p 00000000 00:00 0 
Size:                 16 kB
Rss:                  16 kB
Pss:                  16 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        16 kB
Referenced:            4 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89abfec000-7f89ac03e000 r-xp 00000000 ca:11 195648                     /lib/x86_64-linux-gnu/libssl.so.1.0.0
Size:                328 kB
Rss:                 112 kB
Pss:                  26 kB
Shared_Clean:        112 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:          112 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac03e000-7f89ac23e000 ---p 00052000 ca:11 195648                     /lib/x86_64-linux-gnu/libssl.so.1.0.0
Size:               2048 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac23e000-7f89ac241000 r--p 00052000 ca:11 195648                     /lib/x86_64-linux-gnu/libssl.so.1.0.0
Size:                 12 kB
Rss:                  12 kB
Pss:                  12 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        12 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac241000-7f89ac247000 rw-p 00055000 ca:11 195648                     /lib/x86_64-linux-gnu/libssl.so.1.0.0
Size:                 24 kB
Rss:                  24 kB
Pss:                  24 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:        24 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac247000-7f89ac248000 rw-p 00000000 00:00 0 
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac248000-7f89ac24a000 r-xp 00000000 ca:11 196274                     /lib/x86_64-linux-gnu/libutil-2.15.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   0 kB
Shared_Clean:          8 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac24a000-7f89ac449000 ---p 00002000 ca:11 196274                     /lib/x86_64-linux-gnu/libutil-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac449000-7f89ac44a000 r--p 00001000 ca:11 196274                     /lib/x86_64-linux-gnu/libutil-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac44a000-7f89ac44b000 rw-p 00002000 ca:11 196274                     /lib/x86_64-linux-gnu/libutil-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac44b000-7f89ac44d000 r-xp 00000000 ca:11 196043                     /lib/x86_64-linux-gnu/libdl-2.15.so
Size:                  8 kB
Rss:                   8 kB
Pss:                   0 kB
Shared_Clean:          8 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            8 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac44d000-7f89ac64d000 ---p 00002000 ca:11 196043                     /lib/x86_64-linux-gnu/libdl-2.15.so
Size:               2048 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac64d000-7f89ac64e000 r--p 00002000 ca:11 196043                     /lib/x86_64-linux-gnu/libdl-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac64e000-7f89ac64f000 rw-p 00003000 ca:11 196043                     /lib/x86_64-linux-gnu/libdl-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         4 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac64f000-7f89ac667000 r-xp 00000000 ca:11 196133                     /lib/x86_64-linux-gnu/libpthread-2.15.so
Size:                 96 kB
Rss:                  64 kB
Pss:                   2 kB
Shared_Clean:         64 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:           64 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac667000-7f89ac866000 ---p 00018000 ca:11 196133                     /lib/x86_64-linux-gnu/libpthread-2.15.so
Size:               2044 kB
Rss:                   0 kB
Pss:                   0 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0 kB
Private_Dirty:         0 kB
Referenced:            0 kB
Swap:                  0 kB
KernelPageSize:        4 kB
MMUPageSize:           4 kB
7f89ac866000-7f89ac867000 r--p 00017000 ca:11 196133                     /lib/x86_64-linux-gnu/libpthread-2.15.so
Size:                  4 kB
Rss:                   4 kB
Pss:                   4 kB
Shared_Clean:          0 kB
Shared_Dirty:          0 kB
Private_Clean:         0
@bitprophet
Member

A few things:

  • I edited your description -- you needed newlines between the triple backtick and anything before/after them, for it to parse correctly :) (in github markdown)
  • 2.7 GB == wow :(
  • Python in general is a relatively RAM hungry language, so even if something in fabric isn't being grossly inefficient, you may see "lots" of RAM used.
  • Fabric is almost never run for this length of time, so we've never had to bother optimizing for memory usage over time.
  • If your process is "very verbose", that's probably a large culprit: Fabric has to store all your process stdout/stderr in order to deliver it to the caller at the end of the run, so 10 hours of heavily verbose text could have an impact, though I don't know if e.g. your_solr_reindex > file_on_disk would be anywhere near 2.7GB here (wouldn't be surprised).

Anyway -- given the unusual use case and my own admittedly weak skills in diagnosing RAM utilization, I'd have to ask you to do a few things before I can take any action:

  • Prove that there's an actual memory leak here vs this RAM use just being "Fabric holding all your stdout in a Python list-of-byte-sized-strings". E.g. what happens if you run your command in a shell by hand and redirect its stdout + stderr to disk? How large is it? (Keeping in mind that I assume a Python list of ~one-char strings -- which is how we store stdout/stderr -- would have some overhead vs the same text in raw ASCII. Not sure how much.)
  • Help identify something in Fabric that is being incorrectly retained instead of del'd or otherwise released, if it's not the above. I can't think of any resources off the top of my head that we could be deleting/closing/etc without impacting functionality, but that doesn't mean there aren't any.
  • Alternately, suggest an alternative mechanism that could be enabled for use cases like yours; e.g. a "don't store my stdout/stderr please" option that can be opted into.

Thanks for the report & your understanding :) Interested to see what you find.

@dunkpa
dunkpa commented Mar 14, 2013

I'm suffering from this problem as well. I use fabric to assist me with development and debug on an embedded device, and I'm currently running long, verbose test runs and redirecting fab output to file. Thismorning, the size of the file is 621MB, and the RSS of the fab process is 5.5GB.

Bitprohpet, could you give me some background on why fab currently stores all of stdout+stderr?

@bitprophet
Member

@dunkpa It's a core feature -- check the API docs for run/sudo. An enormous amount of Fabric usage revolves around doing things with returned stdout/stderr text blocks.

Thanks for the note re: your on-disk output + process usage. I'm assuming you aren't doing any output hiding (using with hide('stdout'): or similar)? I.e. that 621MB does represent the full stdout/stderr of the command Fab's running remotely?

If so, then that definitely sounds like a leak of some kind; if you have the time to poke around and see if there's anything that isn't being freed/del'd & which could be, it'd be appreciated. It also depends on what you are (or aren't) doing with the return values from your run/sudo calls - whether they are getting stored in your own data structures or what.

Your use case isn't the most common so I can't prioritize my own time for this right now :( though I will absolutely expedite merging of fixes should any be identified & proven.

Thanks!

@bitprophet bitprophet referenced this issue in paramiko/paramiko Jul 7, 2013
Open

Potential memory leak when connecting #182

@minifridge1138

I'm having a similar issue. I'm using fabric to start/stop scripts on many servers. Each server outputs a lot of information.
After about 15 minutes I ran out of RAM and then out of SWAP space and had to reboot my local machine.
I understand that fabric wants to return the stdout/stderr in order to be delivered to the caller, but shouldn't there be some configurable upper bound? 100GB of swap is kind of a lot.
I know I could redirect all output of run() to a text file, but I need to see the output of the script (I just don't need to store it all in memory as it streams by).

Any ideas or suggestions?

@bitprophet
Member

I'd +1 a PR that implements some sort of circular buffer (instead of the current list object) when the user opts-in. (Or whatever else would be reasonable in this situation - such as simply not storing the output at all and only printing it to the output streams; or halting collection after that upper bound instead of using a circle buffer.)

@omribahumi omribahumi pushed a commit to EverythingMe/fabric that referenced this issue Sep 21, 2014
Omri Bahumi Added an option to disable buffering stdout/stderr to memory in run()
Fixes #800
9251caa
@omribahumi omribahumi pushed a commit to EverythingMe/fabric that referenced this issue Sep 22, 2014
Omri Bahumi Added an option to disable buffering stdout/stderr to memory in run()
Fixes #800
291873b
@omribahumi omribahumi pushed a commit to EverythingMe/fabric that referenced this issue Sep 22, 2014
Omri Bahumi Added an option to disable buffering stdout/stderr to memory in run()
Fixes #800
51c6dcb
@bitprophet
Member

After reading #1195 and thinking about ramifications, I think what we need is the following:

  • Change the naive list object to a buffer class with a controllable size (either something from stdlib, if it exists - I think it does - or something basic we implement)
  • Its default size should be None or something else signifying "no limit" - that is the current behavior and the behavior most users will expect, as it means the full output of their run is captured for use afterwards.
  • We will expose that size so users can control it, probably with a suggestion in the docs that they not set it to anything smaller than len(env.sudo_prompt) lest they accidentally kill sudo password response...
    • Also a note stating the obvious, namely that the stdout and stderr values of run's return value will be the "tail" of the full output if this option is enabled.

I will write a patchset for this momentarily.

@bitprophet
Member

Looks like we already wrote a RingBuffer class and are using it, in an amusing sibling of the above problem: it stores what we wrote so we can answer the question of whether we printed our line prefix stuff.

So reusing that class for our capture buffers ought to work well. (And in Invoke/Fab 2, I can just use collections.deque as it grew a maxlen option in Python 2.6; we can't use it here as we still technically support Python 2.5 and I'm not interested in dropping that before 2.0.)

@bitprophet bitprophet referenced this issue in pyinvoke/invoke Apr 9, 2016
Open

Allow limiting stdout/err capture #344

0 of 4 tasks complete
@bitprophet
Member

Glad I decided to explicitly test the memory usage myself...even with this implemented we were still chewing crazy memory. Why? Organic code growth left us with an unused extra buffer object :( used in the past to track things like newlines & prefix printing, and never deleted by whomever overhauled that state-keeping functionality. That would have been exacerbating this problem for users (i.e. by about 2x).

With that also removed, using this new capture_buffer_size kwarg I just implemented seems to definitely cap memory usage even for super verbose programs.

To wit:

  • Test case is (vs a Debian box) run("while true; do cat /usr/share/dict/words; done") (with stdout printing turned off so my terminal doesn't kill me)
  • Without capture_buffer_size set, the Fabric process quickly grows in memory, adding hundreds of MB of memory every few seconds, with top showing RES cycling between ~100 and ~500 MB periodically (presumably as things get paged out or whatnot) and VIRT starting at ~9.7 GB (!) and growing consistently from there, about 0.1 GB every 10 seconds ish.
  • With capture_buffer_size set to, say, 1024 (and with that abovementioned other buffer removed) Python basically just sits there at its launch values of 9.7 GB VIRT and about 68k or so of RES

To get this working I had to enhance RingBuffer in a few ways (its use elsewhere is more limited in scope so e.g. I never had to worry about somebody using +=, or trying to slap in a value larger than maxlen in size...) but all unit+integration tests pass for me, and manual testing with various sudo/prompt configs also work OK. So not super worried about that despite this being a core code path. (Famous last words.)

@bitprophet bitprophet added a commit that closed this issue Apr 9, 2016
@bitprophet bitprophet Implement use of RingBuffer for stdout/err capture buffer.
And then expose its maxlen to users. Fixes #800, also re #1195
2db971a
@bitprophet bitprophet closed this in 2db971a Apr 9, 2016
@bitprophet bitprophet added a commit that referenced this issue Apr 9, 2016
@bitprophet bitprophet Changelog re #800 5bf8a35
@bitprophet bitprophet added this to the 1.11 milestone Apr 9, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment