Powershell Get-Process negative memory value
Is this an x64 Server? If so, it's possible this blogpost explains your issue. Apparently it has to do with the way the get-process reads x64 systems memory:
The reason the poster was seeing negative numbers is fairly simple: the WS property is aliased to WorkingSet, but WorkingSet is a 32-bit value. In the poster’s case, the working set size overflowed the 32-bit value, resulting in a negative number being displayed.
The solution according to the blog is ultimately to enforce formatting of the query result:
$process = “*SQL"*”
GPS $process | ft name, workingset64 –auto