Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Analyzing CPU Usage

Recommended Posts

This tutorial will cover how to analyze CPU usage of Java process by each thread. That is, you can analyze how much CPU each thread of a Java process is using.


First, you need to download this file:



Save that somewhere easily accessible.


Now, you must navigate to a JDK directory. Note: If the Java process (such as TRiBot) is using 32-bit Java, you must go to the directory containing a 32-bit JDK, and likewise for 64-bit.


You should be somewhere like C:\Program Files (x86)\Java\jdk1.8.0_45.


Now open the "bin" folder.


The program you'll want to run is called jconsole. But you need to boot it using a certain command to use the top threads plugin (the jar you downloaded earlier). To do this, make a new cmd/sh file with the following contents:

jconsole -pluginpath "C:\topthreads-1.1.jar"

You should replace C:\topthreads-1.1.jar with the path to wherever you saved topthreads-1.1.jar.


Run this file and it should make a window like this one appear:



You'll see some lines of text starting with "org.tribot.TRiBot." Those are the TRiBot processes. Open one of those up to analyze the CPU usage of TRiBot.


A window like this should appear:



You'll notice there is a tab called "Top threads." If there isn't, your command to open jconsole was wrong somehow. Maybe the path to the top threads jar was incorrect.


Now, click the "Top threads" tab. You'll see something like this:



Now you can analyze TRiBot's CPU usage thread-by-thread.

  • Like 3

Share this post

Link to post
Share on other sites

Help please i get this message:


jconsole' is not recognized as an internal or external command operable program or batch file


I made a batch file with this:


cd C:\Program Files (x86)\Java\jdk1.8.0_45\bin\

start jconsole.exe -pluginpath "C:\Users\x\Downloads\topthreads-1.1.jar"


Once I ran that it worked just fine. :)

Share this post

Link to post
Share on other sites

Some Important Information


Using the following command will automatically close the terminal window after JConsole has been opened:

start "" jconsole -pluginpath "C:\topthreads-1.1.jar"

And remember...

You should replace C:/topthreads-1.1.jar with the path to wherever you saved topthreads-1.1.jar.


Also, if you put topthreads-1.1.jar in the same directory as jconsole.exe, you won't need to specify a file path, like this:

start "" jconsole -pluginpath "topthreads-1.1.jar"
Edited by TacoManStan

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Our picks

    • This release will:

      Fix LG for both OSBuddy and RuneLite

      Fix issue where the resizable client isn't able to be made smaller (Thanks @JoeDezzy1)

      Fix detection of the logout game tab when resizable mode and side panels are enabled (Thanks @JoeDezzy1)

      Add initial support for Sentry to allow us to identify and easily debug exceptions happening with all TRiBot users

      Add methods to determine if the bank is actually loaded, and not just the overarching interface (Thanks @wastedbro)

      Upcoming updates:

      Improved CLI support

      Full Sentry support

      Much more
        • Like
      • 57 replies
    • This release will:

      Fix NPE in Camera API (Thanks @wastedbro)

      Update deposit box interface ids (Thanks @Encoded)

      Add various bank methods (Thanks @wastedbro)




      Fix resizeable minimap bug (Thanks @wastedbro)

      Remove Java 8 requirement

      Please note: TRiBot is not yet fully compatible with Java 10+

      Fix the break handler issues by ensuring the break handler thread never gets paused

      Fix broken settings hooks

      Upcoming updates:

      Improved CLI support

      Much more

      Note: If you are using LG, please restart both the RS client and TRiBot
        • Like
      • 68 replies
    • This release will:

      Add support for using custom F key bindings to switch between game tabs (Thanks @erickho123)

      Fix tab opening for "Skills" and "Kourend Tasks" (Thanks @erickho123)

      Note: If you are using LG, please restart both the RS client and TRiBot
        • Like
      • 34 replies
    • This release will:

      Fix an issue where breaks would stop firing

      Fix Combat#getWildernessLevel, use dynamic search for text and cache ID for later calls

      Fix an NPE in the Combat API

      Fix Mouse#leaveGame bug where the mouse wouldn't actually leave the game screen
        • Like
      • 21 replies
    • This release will:

      Add LG support for Runelite

      Fix NPCChat issues

      Fix a bug where the camera angle setter would just hold down a key for 5 seconds (the timeout)

      Slightly adjust the rotation via keys to be more accurate

      Add the ability for asynchronous camera movement via keys

      Make Camera rotation via mouse more fluid, with more antiban, and work much better in resizable mode

      Add a "Camera#setCamera" method, allowing the rotation and angle to be set in parallel

      Increase the likelihood of using the mouse for camera movements

      Add support for adjusting the camera to positionable entities (Positionable#adjustCameraTo)

      Upcoming updates:

      Improved CLI support

      Much more

      Note: If you are using LG, please restart both the RS client and TRiBot
        • Thanks
        • Like
      • 59 replies
  • Recently Browsing   0 members

    No registered users viewing this page.