1. Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Process Monitor

Discussion in 'General Software' started by FordGT90Concept, Jan 24, 2010.

  1. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    This simple application records how many handles and how much memory an application is using every second. You can type in a process name (for when the process will be started soon) or select an already running process from the drop down box. Click start and it will start to monitor it; click stop to halt monitoring.

    [​IMG]

    If the application closes, it will stop updating so you can see if the handle limit (default 10,000) or memory limit (2 GiB 32-bit, 4 GiB 32-bit Large Address Aware) is exceeded. These are things you can address to perhaps stop it from crashing.

    If you wish to to use a Process Identification number (PID), use # followed by the number wherever it requests a name (commandline or in the "Process" field). For example, if you want it to monitor the PID 812, enter #812 and click start.


    To increase the handle limit, you must increase the registry key:
    Code:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\USERProcessHandleQuota

    Command line arguments:
    Argument Purpose Example
    1 process_name Enters the given name in the Process dropdown box. csrss
    2 /s Automatically starts monitoring the process named. This will not work without providing a process name. csrss /s



    It requires .NET Framework 3.5 or newer to run.


    Version History:
    1.0.4 - Fixed a minor bug where Max Cores could exceed the number of cores in the machine.
    1.0.3 - Added Processor graph/stats and ability to directly input a PID (via #134).
    1.0.2 - Added launch arguments (detailed above).
    1.0.1 - Displays the start time of monitor and how long the monitor observed the process on stopping.
    1.0.0 - Original release.
     

    Attached Files:

    Last edited: Feb 24, 2010
    Enterprise24, Matt86, Widjaja and 10 others say thanks.
    Crunching for Team TPU
  2. MRCL

    MRCL

    Joined:
    May 31, 2008
    Messages:
    5,791 (2.41/day)
    Thanks Received:
    860
    Location:
    Switzerland, Heart of Europe
    You da man, man! This is just what I need.
     
  3. Kreij

    Kreij Senior Monkey Moderator Staff Member

    Joined:
    Feb 6, 2007
    Messages:
    13,881 (4.81/day)
    Thanks Received:
    5,619
    Location:
    Cheeseland (Wisconsin, USA)
  4. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    Heh, I could display all that info about a specific process. The reason why I don't is because that requires querying the Main Module which is a drag on performance when performance is important (gotta keep those graphs running ;)).

    I haven't found an app that does what this does (finds maximum memory usage and maximum handles over a period of time).
     
    Crunching for Team TPU
  5. Kreij

    Kreij Senior Monkey Moderator Staff Member

    Joined:
    Feb 6, 2007
    Messages:
    13,881 (4.81/day)
    Thanks Received:
    5,619
    Location:
    Cheeseland (Wisconsin, USA)
    Yes, there are definitely advantages to having light weight apps and utilities that have very specific functionality.
     
  6. W1zzard

    W1zzard Administrator Staff Member

    Joined:
    May 14, 2004
    Messages:
    15,051 (3.88/day)
    Thanks Received:
    11,954
    [​IMG]

    am i missing something ?
     
  7. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    When the app terminates, that number isn't stored, nor the trends leading up to it. If an application closes because it requested 2+ GiB you can only guess that is in fact what happened. Unless, of course, this is running at the same time watching it.
     
    Crunching for Team TPU
  8. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    sweet little app.


    Yse w1zzy, we know about task manager :p this gives you a timeline/graph
     
  9. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    1.0.1 released. It displays how long the process monitor was observering a process on stop/close.
     
    Crunching for Team TPU
  10. regexorcist

    regexorcist New Member

    Joined:
    Feb 1, 2010
    Messages:
    178 (0.10/day)
    Thanks Received:
    46
    Location:
    ~/
  11. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    That doesn't graph memory usage (or handles for that matter) nor keep record of the highest memory usage observed. :p
     
    Crunching for Team TPU
  12. regexorcist

    regexorcist New Member

    Joined:
    Feb 1, 2010
    Messages:
    178 (0.10/day)
    Thanks Received:
    46
    Location:
    ~/
    You miss the point
    I graphs or lists percentages or actual numbers
    of ANYTHING you want
    It has 2 pages of variables
    and functions and executes your own scripts
     
  13. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    This works with two clicks (or type and one click), no thinking/programming required. ;)
     
    Crunching for Team TPU
  14. regexorcist

    regexorcist New Member

    Joined:
    Feb 1, 2010
    Messages:
    178 (0.10/day)
    Thanks Received:
    46
    Location:
    ~/
    very good, but mine runs when the system is brought up.
    no clicking :laugh:

    Yes there is initial configuration which can be difficult ;)
    but with flexibility come configuration.
     
  15. regexorcist

    regexorcist New Member

    Joined:
    Feb 1, 2010
    Messages:
    178 (0.10/day)
    Thanks Received:
    46
    Location:
    ~/
    either way, monitoring the system is very important.
    good app.
     
  16. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    Stick it in Startup and it will start with the system. I should add a flag to pre-specify an application to monitor...


    Edit: Done, see original post for details.
     
    Last edited: Feb 5, 2010
    Crunching for Team TPU
  17. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    I've used the tool from this thread over here, to fix a problem with Sins of a solar empires latest expansion pack. I've linked to here, and I'm linking from here back to there so that all threads involved get some attention.
     
    FordGT90Concept says thanks.
  18. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    I'm pondering adding a new feature to this app:

    While the Process Monitor is running, it would monitor CPU usage per core, formulate a score for each core, and figure out how many cores are actually needed to run the application. Because the CPU usage is based on the performance of the entire system, the user must make sure nothing is loading the system to 100% while playing the game. The purpose of this feature would be tell how many cores the game needs to operate smoothly. This information is valuable in setting WCG and F@H to how many cores they should be using. That way, you can contribute as much as possible to those projects while not interfering with your game performance.

    Anyone think this would be a valuable feature?
     
    Crunching for Team TPU
  19. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    just make it spit out min/max/avg for each core - be very useful for testing games multithreading capabilities.
     
  20. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    I think I would do both. Instead of a graph, show a ListView with the current/min/max and on the left, show min/max core/CPU usage.

    The reason I can't do an average is because it would have to have a limited scope (how limited depends on the hardware). If it isn't limited, it would eventually crash and/or be forced to restart averaging. :(
     
    Crunching for Team TPU
  21. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    average over the last 5 minutes, at 10-20 second intervals?
     
  22. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    That should work except I'd probably average it every second. It is just a simple division operation (total percentage / total seconds).
     
    Crunching for Team TPU
  23. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    i'm just thinking its a great way to tell if a game supports multithreading, and if so, is it crippled - EG supreme commander, it was multithreaded... but one thread had the AI on it, and that thread would just choke and die long before the others - holding performance back.
     
  24. FordGT90Concept

    FordGT90Concept "I go fast!1!11!1!"

    Joined:
    Oct 13, 2008
    Messages:
    14,125 (6.23/day)
    Thanks Received:
    3,939
    Location:
    IA, USA
    Wait...let me clear something up: There is Process CPU time which tells you how much time a processor spent on a given process. This only tells you overall CPU use, not by core (an average of all cores).

    There is also load percentages per core. It tells you how burdened each core is but it doesn't tell you what process is burdening that given core.

    Which is more valuable to you? Both?


    I guess the point I am trying to make is that the most accurate way to tell how many cores a given process is using is to take total process time and compare it to the number of cores. I could graph that...
     
    Crunching for Team TPU
  25. Mussels

    Mussels Moderprator Staff Member

    Joined:
    Oct 6, 2004
    Messages:
    42,567 (11.39/day)
    Thanks Received:
    9,836
    is it possible to tell the load a process is having on the cores? Say, you run a game and it uses 100% of core 1, but only 5-10% of the rest of your cores
     

Currently Active Users Viewing This Thread: 1 (0 members and 1 guest)

Share This Page