Often when memory utilization spikes to 100% on a server, the problem can subside before one can jump on the server, or connect with diagnostic tools to determine the problem. To reduce time in diagnosis; I created a task in MOM that will allow administrators to run a task that dumps memory usage for all processes running on a machine at a given point in time.
Enter a script name - 'Process Private Bytes Task Script'
Language: VBScript

'************Start cut and paste here****************************
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * From Win32_PerfFormattedData_PerfProc_Process")
For Each objItem in colItems
ScriptContext.Echo objItem.Name & " -- " & objItem.PrivateBytes
Next
'************End cut and paste here****************************
For Run location, select agent-managed computer.
For Task type, select Script. Click Next


Output looks something like this.

I hope you find this helpful. This process could easily be replicated for any number of scenarios, such as a CPU utilization per process task, etc. Experiment with different scripts and see what you can create!