Skip to main content

Monitor of memory buffers for better estimation of copying time

Project description

copymon

GitHub version PyPI version

99% is pleasing only for the first hour.

Copymon is a monitor of memory buffers for better estimation of copying time.

It shows the most probable estimated time of copying files by monitoring Dirty-Writeback Memory stream. It estimates the time until all the buffers are REALLY written to the disk - as opposed to most of the file managers which are showing the estimated time to writing to a buffer only.

Enter copymon to start monitoring:
copymon in action

It observes /proc/meminfo which allows to determine ETA more precisely:

MemTotal:       16343812 kB
MemFree:         6123312 kB
MemAvailable:   13108588 kB
Buffers:         3053664 kB
Cached:          5056684 kB
SwapCached:            0 kB
Active:          5100292 kB
Inactive:        4756604 kB
Active(anon):    1743648 kB
Inactive(anon):   926468 kB
Active(file):    3356644 kB
Inactive(file):  3830136 kB
Unevictable:          48 kB
Mlocked:              48 kB
SwapTotal:       1998164 kB
SwapFree:        1998164 kB
Dirty:               952 kB
Writeback:             0 kB
AnonPages:       1666548 kB
Mapped:          1123908 kB
Shmem:            928232 kB
Slab:             200200 kB
SReclaimable:     111172 kB
SUnreclaim:        89028 kB
KernelStack:        9840 kB
PageTables:        26592 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    10170068 kB
Committed_AS:    7271044 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
Percpu:             1584 kB
HardwareCorrupted:     0 kB
AnonHugePages:    606208 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      340204 kB
DirectMap2M:    13207552 kB
DirectMap1G:     3145728 kB

Installation

pip3 install copymon

Requirements:

  • Python 3.6 (or newer) with pip

Usage

$ copymon
[13:33:08] Remaining:  152.71 MB, Speed:    -8.96 MB/s, AVG speed:    -6.95 MB/s, ETA:       21 s
[13:33:09] Remaining:  143.72 MB, Speed:    -8.92 MB/s, AVG speed:    -7.31 MB/s, ETA:       19 s
[13:33:10] Remaining:  136.72 MB, Speed:    -6.93 MB/s, AVG speed:    -7.72 MB/s, ETA:       17 s
[13:33:11] Remaining:  134.72 MB, Speed:    -1.99 MB/s, AVG speed:    -6.94 MB/s, ETA:       19 s
[13:33:12] Remaining:  125.67 MB, Speed:    -8.97 MB/s, AVG speed:    -6.95 MB/s, ETA:       18 s
[13:33:13] Remaining:  116.65 MB, Speed:    -8.94 MB/s, AVG speed:    -6.95 MB/s, ETA:       16 s
[13:33:14] Remaining:  107.67 MB, Speed:    -8.88 MB/s, AVG speed:    -7.18 MB/s, ETA:       14 s
[13:33:15] Remaining:   99.81 MB, Speed:    -7.79 MB/s, AVG speed:    -7.81 MB/s, ETA:       12 s
[13:33:16] Remaining:   98.67 MB, Speed:    -1.14 MB/s, AVG speed:    -6.95 MB/s, ETA:       14 s
[13:33:17] Remaining:   89.60 MB, Speed:    -8.99 MB/s, AVG speed:    -6.95 MB/s, ETA:       12 s
[13:33:18] Remaining:   80.61 MB, Speed:    -8.90 MB/s, AVG speed:    -6.95 MB/s, ETA:       11 s
[13:33:19] Remaining:   71.61 MB, Speed:    -8.88 MB/s, AVG speed:    -7.17 MB/s, ETA:        9 s
[13:33:20] Remaining:   63.62 MB, Speed:    -7.91 MB/s, AVG speed:    -7.82 MB/s, ETA:        8 s
[13:33:21] Remaining:   62.63 MB, Speed:    -1013 kB/s, AVG speed:    -6.94 MB/s, ETA:        9 s
[13:33:22] Remaining:   53.66 MB, Speed:    -8.81 MB/s, AVG speed:    -6.93 MB/s, ETA:        7 s
[13:33:23] Remaining:   44.66 MB, Speed:    -8.92 MB/s, AVG speed:    -6.93 MB/s, ETA:        6 s
[13:33:24] Remaining:   35.81 MB, Speed:    -8.78 MB/s, AVG speed:    -7.04 MB/s, ETA:        5 s
[13:33:25] Remaining:   26.66 MB, Speed:    -9.06 MB/s, AVG speed:    -7.92 MB/s, ETA:        3 s
[13:33:26] Remaining:   25.66 MB, Speed:    -1014 kB/s, AVG speed:    -7.03 MB/s, ETA:        3 s
[13:33:27] Remaining:   17.66 MB, Speed:    -7.93 MB/s, AVG speed:    -6.92 MB/s, ETA:        2 s
[13:33:28] Remaining:    8.66 MB, Speed:    -8.93 MB/s, AVG speed:    -6.93 MB/s, ETA:        1 s
[13:33:29] Remaining:     296 kB, Speed:    -8.30 MB/s, AVG speed:    -6.97 MB/s, ETA:        0 s
[13:33:30] Remaining:     100 kB, Speed:     -195 kB/s, AVG speed:    -6.88 MB/s, ETA:        0 s
[13:33:31] Remaining:     104 kB, Speed:       +3 kB/s, AVG speed:    -5.91 MB/s, ETA:        0 s
[13:33:32] Remaining:     104 kB, Speed:        0 kB/s, AVG speed:    -4.91 MB/s, ETA:        0 s

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

copymon-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

copymon-0.1.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file copymon-0.1.0.tar.gz.

File metadata

  • Download URL: copymon-0.1.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for copymon-0.1.0.tar.gz
Algorithm Hash digest
SHA256 43624f67a26a54cc57f97b437a9bf7a91de18444b3443af98ff3777e3889ba21
MD5 ed643a9f8c1fca2e297a9db688c95b58
BLAKE2b-256 b2455f471ccfce40eac3ad25e12e14495a41fd2e8600280c7325ce6fd53a694f

See more details on using hashes here.

File details

Details for the file copymon-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: copymon-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for copymon-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd8a94f3a7563691c865610752c3529a6d4f36ca5e534032706af650278f1383
MD5 f6e687d16f10d3857811215f0e3447d2
BLAKE2b-256 60d356645cc8ac29ee9785bceac73d3dafd10febd86fa4251ff09c4d1814897b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page