выяснить, какую тему я использую под Debian-mate?

GnuPG читает из /dev/random, что блокируется, когда недостаточно энтропии (что является спорным поведением). Фактические вычислительные усилия довольно незначительны. Вы также можете заметить, что первый запуск/несколько запусков завершаются быстрее, так как пул энтропии все еще был заполнен «свежими битами». Я рекомендую запустить watch cat /proc/sys/kernel/random/entropy_avail в дополнительном терминале, чтобы понять, когда GnuPG переходит в режим «низкой энтропии».

На современных аппаратных платформах процессы, заблокированные вводом-выводом или спящие, будут переведены в фоновый режим, поэтому время ЦП учитываться не будет.

$ time --format='Wall clock: %e[s], CPU (userspace): %U[s], CPU (workload): %P%' sleep 5
Wall clock: 5.00[s], CPU (userspace): 0.00[s], CPU (workload): 0%

Это также видно при копировании некоторых байтов из /dev/random (что может занять довольно много времени, особенно на виртуальных машинах):

time --format='Wall clock: %e[s], CPU (userspace): %U[s], CPU (workload): %P%' dd if=/dev/random of=/dev/null bs=1 count=512
512+0 records in
512+0 records out
512 bytes copied, 210.672 s, 0.0 kB/s
Wall clock: 210.67[s], CPU (userspace): 0.00[s], CPU (workload): 0%

Наконец, это также объясняет, почему быстрые итерации имели гораздо более высокая нагрузка на ЦП: поскольку процессы были заблокированы в ожидании ввода-вывода в течение гораздо меньшего периода времени, часть фактического времени вычислений от полного времени выполнения намного больше.

1
31.05.2016, 02:20
0 ответов

Теги

Похожие вопросы