Windows memory task manager

Reclaim Memory by Mastering Windows’ Task Manager

The best way to speed up your PC is to give it more available memory—but freeing up as much of the memory you already have is cheaper and easier than cracking open your case to install a new stick of RAM . It takes a lot of memory to get a modern Windows system up and . well, not doing anything in particular, really. Between cryptic system processes, confusing «helper» applications, and background utilities, a whole lot of who-knows-what gobbles up memory and slows down your work. While a lot of programs claim to optimize memory use and pare down processes, Windows’ built-in Task Manager can do the job just fine, given the right tools and know-how. Today you’ll extend and empower Windows’ Task Manager to speed up your system by cutting out unnecessary memory hogs.

Hack Attack: How to install RAM

See what’s running

Hit Ctrl+Alt+Delete in Windows 2000/XP (or Ctrl+Shift+Esc in Vista) to pop up the built-in Task Manager, which offers a pretty decent look at what programs you’re running, as well as current CPU and memory usage for each and a basic description. It doesn’t, however, tell you whether Windows will keep working if you kill one of these processes, and descriptions of the «Windows host process (Rundll32)» variety can be more than a little frustrating.

Our first stop is to download the Quick Access Infobar , which adds a link next to each process to a relevant search result from the ProcessLibrary.com web site. The ProcessLibrary site won’t know anything specific about your «rundll32» or «svchost.exe» entries, but for most common processes ending in .exe, you’ll get a read on the program it’s connected to, and whether or not you can live without it.

Download of the Day: Quick Access InfoBar

Windows only: You’ve popped open the Windows Task manager and found a runaway process hogging…

Once you’ve found a few processes that don’t need to be running every time you start Windows, disabling them is pretty easy. In Windows XP , first check the «Startup» folder in Start->Programs. You can also use the System Configuration Utility’s startup manager: enter msconfig into a command prompt or the Start Menu’s «Run» box. (Here’s more on msconfig usage posted here at Lifehacker, and for more help on XP pruning, check out this CNET tutorial ). In Vista, head to the Control Panel, choose «Change startup programs» under «Programs,» then click the «Show for all users» button in the lower left to enable disabling or remove startup programs.

Go slowly here—make one or maybe two changes at a time, then wait until after a restart to make sure everything is still working as it should. Overall, the «Startup Programs» list shouldn’t let you make critical, system-wrecking changes, but don’t make the change if you don’t know what it affects.

Dig Deeper

You’ve knocked out iTunesHelper.exe and a handful of other unnecessary apps, but what about those more vaguely named items? To find out, grab Process Explorer , a kind of super-charged Task Manager. It looks a lot like its built-in counterpart, but provides a great deal more info. Blue and purple highlights are applications, while pink rows are Windows services. You get process names and any companies matched to them, but lets get deeper. Right-click on one of the column headings (or hit the «View» menu) and choose «Select columns,» then check the «Command line» option.

Читайте также:  All windows the in we must wash house
Download of the Day: Process Explorer

Windows only: Free program Process Explorer, by the good people at Sysinternals, is a Windows Task…

Now you’ll have an extra column on the right, with the full path («C:\Program Files\WhateverProgram») to where each process is launched from. Mouse over a «rundll» or «svchost,» and you’ll see which services are launched under that container. Double-click on a process, head to the «Threads» tab and you can see which service is using how much CPU power—obviously something you want to stay up on, especially for non-important services.

Windows 10 memory and Task Manager

Recently, I was scanning the C drive and I noticed pagefile.sys took up a whopping 32 GB of storage. Now I did some research and found out that pagefile is for virtual memory, which makes Windows 10 use your disk for memory storage. Many oddities arose from this however:

Why is the pagefile 32 GB, I have 32 GB of physical DDR4 RAM and currently not even 5 GB of RAM is used? Normally, the pagefile is around 3-4 GB which is understandable, but what causes it to become so big?

In task manager, it looks like the committed bytes of memory matches the physical + virtual memory. In my case I have 64 GB of ram committed (32 physical + 32 pagefile), does that mean given the right CPU, I can open the same amount of chrome tabs as a 64 GB machine, or is the pagefile sort of useless?

The processes tab on task manager display how much memory each program is using, and while I have researched «task manager memory not adding up», it appears it does add up in the «users» tab, given I am the only user. So how would I find the true amount of memory my PC is using? And, how to make task manager show the «true memory usage» of each program given admin rights? (i.e. processes tab displays 3 GB used, performance tab shows 8 GB, how to reveal that extra 5 gigs in the processes tab?)

What is compressed memory? Why is it so miniscule compared to the actual in use?

You can see, within task manager, the memory section is the most confusing out of all of them.

1 Answer 1

Adjusting virtual memory, and by that, adjusting pagefile.sys size, is somewhat arbitrary. For your PC’s specifications, 32 GB is reasonable. As to why:

When RAM was measured in MB rather than GB, the general recommendation was to set virtual memory to at least the size of the largest program’s memory requirements, since some applications required more memory than there was physical RAM. Of course, a program effectively running from disk was l e t h a r g i c, because the HDD (or even floppy!) is perhaps 1,000 time slower than RAM.

As the OS improved, it became possible to swap only parts of memory to HDD, so if a DLL was used infrequently, e.g., just for printing, that part of the program might be moved to disk until needed. Recommendations were to allow 1.5 to 2 times the RAM size for the swap file.

Читайте также:  Linux desktop environments 2021

Today, with large physical RAM and a reversion to smaller SSD’s, it might be profitable to reduce the size of the swap file. but do not reduce it too much, lest the system become unbootable.

My current preference is to set both minimum and maximum size of virtual memory to approximately that of physical RAM, or somewhat less on SSD with little extra space. The reason for keeping maximum and minimum the same is to reduce disk fragmentation as pagefile.sys grows and shrinks, though Windows automatically optimizes the disk, anyway.

To set virtual memory:

  • Press Windows Pause to open the System CPL.
  • Note the amount of Installed System RAM.
  • Click on *Advance system settings.
  • On the Advanced tab of the System properties dialog, click on Performance Settings. .
  • On the Advanced tab [Yes, again; this must be very advanced!], under Virtual memory, click Change. .
  • Set a custom size, rather than Automatically manage paging file size. .
  • Note the recommendations, though the minimum allowed is far too small for most purposes, and trying to run with no paging file is asking for trouble! Try some values between 0.5 and 1.5 times RAM size for starters. That should free up some disk space, if you wish. See if there is any difference in performance.

Windows memory task manager

Вопрос

Hello,
I have a difficulty to clearly understand and find presized info about Physical Memory parametres in 2008r2 Task Manager.

Currently I have the numbers below dispayed in Windows Task Manager—Performance:

Physical Memory (MB)
Total: 3799
Cached: 1395
Available: 1393
Free: 17

How correctly to interpret those numbers? And what exactly is Cached Available and Free (confusing for me, sorry).

Then, if I click Resource Monitor button, I have slightly different info:

Available : 1382 MB
Cached: 1393 MB
Total: 3799 MB
Installed: 4096 MB

Why the total and installed here are different. 2008r2 cannot access all 4096.

Memory meter shows 2.34 GB.

Basically, what I is interesting Cached, Available and Free interpretation.

May be I forgot or didn’t touch long time some basics. Really want to understand numbers in both cases.
Unfortunately Help of Task Manager doesn’t have any presized info.

Thanks,
Michael.
«When you hit a wrong note it’s the next note that makes it good or bad». Miles Davis

Не доверяйте информации о памяти в Диспетчере задач

За много лет использования Windows я привык к Диспетчеру задач. Оттуда я убил сотни приложений за плохое поведение. Там же смотрел, кто из них пожирает ресурсы. Пока я не начал работать с машинами, у которых сотни гигабайт памяти, а у приложений соответствующие запросы. В этой статье обсудим, почему Диспетчер задач плохо отслеживает память и что использовать взамен. Во-первых, о механизме выделения памяти в Windows.

tl;dr: Диспетчер задач скрывает информацию о подкачке (paged memory) и виртуальном пространстве процесса. Лучше используйте Process Explorer из комплекта Sysinternals.

Выделение памяти в Windows

При запуске нового процесса ОС присваивает этому процессу непрерывное адресное пространство. В 32-разрядных системах это пространство может составить 4 ГБ, обычно 2 ГБ для ядра, а остальное для процесса. В этой статье проигнорируем использование памяти ядром. В 64-разрядных системах зарезервированная процессом память может вырасти до колоссальных 64 ТБ. Что этот процесс будет делать с несколькими терабайтами памяти, когда у нас на самом деле жалкие 8 ГБ? Сначала нужно понять, что такое зарезервированная и переданная память.

Читайте также:  Ноутбук hp pavilion dv6 как переустановить windows

Зарезервированная и переданная память

Не все части этого огромного адресного пространства равны. Некоторые части адресного пространства процесса фактически поддерживаются либо физической оперативной памятью, либо диском (см. ниже). Зарезервированная память считается переданной (Committed), если ОС предлагает вам эту память при попытке её использовать. Остальная часть адресного пространства, а это подавляющее большинство, остаётся доступным для резервирования. То есть не всегда ОС может предложить вам этот блок памяти для использования: она может сделать копию на диске (файл подкачки), например, а может и не сделать. В C++ резервирование памяти осуществляется вызовом VirtualAlloc. Так что переданная память является аппаратно ограниченным ресурсом в ОС. Давайте посмотрим.

Файл подкачки ОС

Файл подкачки — замечательная идея. В принципе, ОС понимает, что некоторые части памяти особо не используются вашим приложением. Зачем тратить на него реальную физическую память? Вместо этого процесс в ядре записывает этот неиспользуемый фрагмент на диск. Пока к нему не обратятся снова, только тогда он вернётся в память.

Для более подробного объяснения, как работает память в Windows, рекомендую лекцию «Тайны управления памятью» Марка Руссиновича.

Отслеживание памяти

Здесь много за чем нужно следить и анализировать. К кому обратиться? Конечно, к Диспетчеру задач!

Память в RAM обычно называют рабочим набором (Working Set), в то время как всю выделенную память обычно именуют Private Bytes. Библиотеки DLL вносят путаницу в определения, поэтому пока их проигнорируем. Иначе говоря:

Private Bytes [выделенная память] = рабочий набор + файл подкачки

По умолчанию Диспетчер задач показывает для любого процесса именно рабочий набор:

И это число, на которое я всё время смотрел. Откуда я знал, что в Диспетчере задач информация о переданной памяти находится в колонке Commit Size . Я так и не смог там найти информацию о виртуальной памяти.


Диспетчер задач позволяет добавить информацию о переданной памяти, если щёлкнуть правой кнопкой мыши по столбцам и выбрать соответствующий пункт

Эффективные метрики памяти

К счастью, есть много других ресурсов для отслеживания ресурсов. На каждой машине под Windows установлен PerfMon (Системный монитор), который выдаёт очень подробную информацию о каждом процессе и системе в целом:

Интересно, что Системный монитор умеет фактически исследовать и сравнивать метрики на двух или более компьютерах в сети. Это очень мощный инструмент, но Диспетчер задач, очевидно, удобнее для пользователей. В качестве промежуточного решения рекомендую Process Explorer:

Бум! Visual Studio, чего это ты до сих пор в 32-битном режиме (обратите внимание на его Virtual Size)? Пиковое использование памяти на моём компьютере на уровне 89% от максимума, ещё терпимо. Это пригодится позже.

Дополнение: многие указали на другие удобные инструменты, в том числе VMMap и RAMMap.

Отладка по информации о памяти

К счастью, это не какие-то ненужные мелочи ОС. Актуальная информация о потреблении памяти многократно помогала мне в отладке разных проблем.

Самое главное, это найти нетронутые части выделенной памяти. Данные о подкачке тоже важны: эта память передана, но используется редко или вообще не используется.

Даже если память будет иногда использоваться, важно понимать, что это дорогой ресурс, так что идти по такому пути ни в коем случае нельзя. Здесь появятся и утечки памяти.

По этим причинам я ранее слышал предложение полностью удалить файл подкачки и приравнять выделенную память рабочему набору. Однако это обоюдоострая идея. Тогда ОС не в состоянии сбросить память в случае неправильной работы приложений, которые иногда впустую резервируют память.

Оцените статью