Что делает “Размер VM”, означают в Windows Task Manager? [закрытый]

Это альтернативный метод построения графика plot_date, который вы можете использовать, если ваша независимая переменная datetime, например, вместо использования более общего метода plot:

import datetime
data = np.random.rand(24)

#a list of time: 00:00:00 to 23:00:00
times = [datetime.datetime.strptime(str(i), '%H') for i in range(24)]

#'H' controls xticklabel format, 'H' means only the hours is shown
#day, year, week, month, etc are not shown
plt.plot_date(times, data, fmt='H')
plt.setp(plt.gca().xaxis.get_majorticklabels(),
         'rotation', 90)

Преимущество этого заключается в том, что теперь вы можете легко контролировать плотность xticks, если мы хотим иметь галочку каждый час, мы вставим эти строки после plot_date:

##import it if not already imported
#import matplotlib.dates as mdates
plt.gca().xaxis.set_major_locator(mdates.HourLocator())

12
задан Jonas Pegerfalk 26 August 2008 в 04:22
поделиться

4 ответа

Каков корректный ответ о Размере VM?

  • В кодировании ужаса

    Сколько из менее часто используемой памяти процессов было разбито на страницы к диску.

  • В комментарии кодирования ужаса

    Вы неправы в Размере VM. Это - общее количество всех частных (не совместно использованный) байты, выделенные этим процессом, ли в настоящее время в физической памяти или нет. Это - лучшее значение для отслеживания, есть ли у Вас утечка памяти, чем 'Использование Мадам'. То же значение доступно в Мониторе производительности как 'Процесс: Частные Байты.

  • В MSDN

    Размер Виртуальной памяти: объем виртуальной памяти или адресное пространство, согласился на процесс.

Я сбиваю с толку, что является corrent.

1
ответ дан 2 December 2019 в 23:43
поделиться

Это - общее количество всех частных (не совместно использованный) байты, выделенные этим процессом, ли в настоящее время в физической памяти или нет.

См. также вводное руководство по статье Windows Memory Management или Commit Charge Wikipedia

Для разработчика наблюдение обрабатывает состояние как это, я рекомендовал бы установить Проводник Процесса SysInternals и использовать его вместо Диспетчера задач по умолчанию. Это значение называют "Частными Байтами" в нем.

8
ответ дан 2 December 2019 в 23:43
поделиться

Как насчет сообщения ужаса кодирования для ответа на это: http://www.codinghorror.com/blog/archives/000393.html

"Размер VM: Сколько из менее часто используемой памяти процессов было разбито на страницы к диску".

-2
ответ дан 2 December 2019 в 23:43
поделиться

Объем памяти отображается в адресное пространство того процесса. Это может включать отображения общей памяти.

В процессе будут разделы пространства памяти для каждого общего объекта (DLL), который является частью его, а также некоторой памятью для стека и областями, выделенными самим процессом.

Например, смотря на карту распределения памяти a cat команда в моей системе I видит свои размещения в ОЗУ. В этом случае я использую cat /proc/self/maps исследовать сам процесс кошки. Отображенный в ее виртуальную память сам двоичный файл, некоторая "куча", информация о локали, libc (с различными флагами разрешения), ld.so (динамический компоновщик), стек, vdso и разделы vsyscall и некоторые анонимные отображения (отображенные страницы без отступающего файла).

00400000-00408000         r-xp      /bin/cat
00607000-00608000         rw-p      /bin/cat
008ac000-008cd000         rw-p      [heap]
7fbd54175000-7fbd543cf000 r--p      /usr/lib/locale/locale-archive
7fbd543cf000-7fbd54519000 r-xp      /lib/libc-2.7.so
7fbd54519000-7fbd54718000 ---p      /lib/libc-2.7.so
7fbd54718000-7fbd5471b000 r--p      /lib/libc-2.7.so
7fbd5471b000-7fbd5471d000 rw-p      /lib/libc-2.7.so
7fbd5471d000-7fbd54722000 rw-p
7fbd54722000-7fbd5473e000 r-xp      /lib/ld-2.7.so
7fbd5491d000-7fbd5491f000 rw-p 
7fbd5493a000-7fbd5493d000 rw-p
7fbd5493d000-7fbd5493f000 rw-p      /lib/ld-2.7.so
7fff5c929000-7fff5c93e000 rw-p      [stack]
7fff5c9fe000-7fff5c9ff000 r-xp      [vdso]
ffffffffff600000-ffffffffff601000 r-xp    [vsyscall]

Для каждого отображения вычтите начальный адрес из конечного адреса для определения его размера, например, [stack] строка: 0x7fff5c9ff000 - 0x7fff5c9fe000 = 0x1000. В десятичном числе, 4 096 байтов - стек на 4 кибибита.

При складывании всех этих чисел Вы получите размер виртуальной памяти (VM) процесса.

Размер VM не является надежным способом определить, сколько памяти процесс использует. Например, только будет одна копия каждого из только для чтения /lib/libc-2.7.so карты в физической памяти, независимо от того, сколько процессов использует его.

0
ответ дан 2 December 2019 в 23:43
поделиться
Другие вопросы по тегам:

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