Improve How you Analyze IBM TM1 Memory Usage

by Sep 24, 2015AGNI for TM1, Blog, Planning Analytics powered by TM10 comments

If you are a TM1 administrator, you are likely aware of the demand for maintaining efficient memory usage in your Cognos TM1 instance. Imagine this scenario: your Cognos TM1 environment is starting to lag. You know there exists out-dated TM1 objects, but aren’t sure if they are worth deleting. So you decide to delete objects that haven’t been used in a set amount of time, that use up the most memory. How do you determine which objects meet your criteria?

In Cognos TM1, the steps are laborious. You are able to see the memory usage of each object in a table, but there is no order to them. You see a graph, but information is limited, and there is no way to drill down.

Agni offers a visually appealing graphical representation of the memory usage of all your Cognos TM1 objects. So let’s see how it works.

In this blog, we will explore how to use Agni to manage your memory usage in Cognos TM1.

First, let’s open the memory panel on the left side of Agni.

Once open, we see a table at the top of the screen showing our server (in this example, the server is named “Planning Sample”).

We’ll click on the “Planning Sample” server and then click the “add” button (the blue “plus” sign) below the table:

This will add our server to the legend (bottom left) and the memory usage pie chart (bottom right). We now see a pie chart showing just our server, and its current memory usage.

Now that we know the total memory usage, let’s dive deeper into the server and see what’s making up this usage. Click on the name of the server in the legend. The server object will highlight in both the pie chart and the legend. Now click the leftmost button on the toolbar over the memory usage chart (the arrow pointing downward) to drill down.

Now we see a pie chart of all of the Cubes and Dimensions in our server.

On the left, we can see each Cognos TM1 object by name and memory. On the right, we see how much memory each object is using, comparatively.

It looks like the two biggest offenders are “plan_Report” and “plan_BudgetPlan” cubes. Let’s say that we knew both of these would be big, but they’re critical and we can’t delete them.

We can remove both of these objects from the graph so that we can get a better look at what’s remaining and using the most memory. We’ll do this by holding down the “Ctrl” key and click each item we want to remove from our view, either in the pie chart or in the legend. Once both are highlighted, we’ll click the “X” button in the blue circle on the chart toolbar.

This removes the two big items from our chart. We can now view the rest of our objects more easily:

It appears that the “plan_time” and “plan_chart_of_accounts” dimensions are the biggest slices here.

To verify the largest TM1 object, we can sort by Memory usage in the legend. Click twice on the Memory column header to sort in descending order, starting with the largest.

We can see that “plan_time” is using the largest amount of memory, so we’ll look into that one first. We can drill into it just as we did before with the server, or we can double-click on the chart slice to quickly drill down.

Drilling down further gives us a look at all of the subsets in the “plan_time” dimension. From here, we could choose which subsets were unnecessary and could be deleted.

Let’s look at something a little more specific. Let’s say we want to only see our dimensions in terms of memory usage. To do this, we can either use “Shift+Click” to select all of the objects in the legend and click the “minus” button to remove them, or simply close the memory panel and open a new one. We’ll then click the arrow next to the server name in the table.

We’ll see two more options from here, Cubes and Dimensions. Click the arrow next to Dimensions. We’ll see a list of all the dimensions in our instance. Use “Shift+Click” to select all of them, then click the plus button on the left.

We now see a pie chart comparing the memory usage of all our dimensions. In this same fashion, we can compare any set of TM1 objects in terms of memory usage, even if they’re not near each other hierarchically.

While your Cognos TM1 instance may be very different from what’s demonstrated here, you can see that it’s incredibly easy to determine what is using TM1 memory and how much it is using, at any level of your instance. When compared to the process of opening each object one at a time and looking over its memory usage in Cognos TM1, Agni lessens this strain significantly.

Try it out for yourself.