Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mat-dev] what does this mean: Removed 1, 592, 839 unreachable objects using 679, 092, 640 bytes
  • From: KEVIN GRIGORENKO <kevin.grigorenko@xxxxxxxxxx>
  • Date: Tue, 9 Apr 2024 15:29:07 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=us.ibm.com; dmarc=pass action=none header.from=us.ibm.com; dkim=pass header.d=us.ibm.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=F9T5F87rg26csJmQCx3HpA6rEpfhxkwynxZLaYu/ljc=; b=GRBc47GcTSEU+ZbY0DPXDGebp/xzk0mlOHvcKcwWofprohA62IIQcpErsYx524Tuu7AP1lC161hnnNILy6ETEWGcnaBqRPCo60ceZJ9uAs5zl6frOTF14d0A/PQYKLZ2WttOQE46TGGJVknLB2TDchPhKD1Zn4fuRNof+KViAG6gvZinm91Ee87Ni0HxDIZ5FzuWuiI63yvxEvdUerV0XVaJSQ0fM/fCUa8ylB1Y9bBnS9bnwIWfjDjVM32CUDsXmma1iEkJbxbNV/B1g7M1Ny5n8iu0os4bDxtfT3Gu3JnG/4yDlgZf6oJfjycg181WUjqF0et/ht7g1oUUa/nCig==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b5r0iG+aoXfd3DEAoYGv6NaEtvpXig7plp25GYZQqcDdIKInQKZn/5V7T30Bz+EwnpNL7a2PO7AZ1oLnCD08BEngU69sPIj+5iGqQXrCgOPfXrD7eCU3aIPv82fp91eMDsyos3SaYoguDIfF7vq1bobcH0a2o6OCofT3XKvZ9DIVnG+bbxdPgLFRqZkrimk6SZlM2rVcY+c6QpN5CVWZvw/ehMH6oAwN4qRpODJ9N7rTHZj1nlTCqa+V/7ycMiJGyoidn+HTZ65t1wuHuYWLWvvjD4lU0RbfcJL2+NMdWVFQMA9edV43M0HyK0q0PVif0HFeAfkywrYnWyrRceVZdw==
  • Delivered-to: mat-dev@xxxxxxxxxxx
  • List-archive: <https://www.eclipse.org/mailman/private/mat-dev/>
  • List-help: <mailto:mat-dev-request@eclipse.org?subject=help>
  • List-subscribe: <https://www.eclipse.org/mailman/listinfo/mat-dev>, <mailto:mat-dev-request@eclipse.org?subject=subscribe>
  • List-unsubscribe: <https://www.eclipse.org/mailman/options/mat-dev>, <mailto:mat-dev-request@eclipse.org?subject=unsubscribe>
  • Thread-index: AQHafxFvuGEDT5laB0aOLgs8f3ycWrFgJa+j
  • Thread-topic: [EXTERNAL] [mat-dev] what does this mean: Removed 1, 592, 839 unreachable objects using 679, 092, 640 bytes

Hi,

 

> Removed 1,592,839 unreachable objects using 679,092,640 bytes

>

> Does this mean there were these many objects that could be garbage collected but were not?

 

These many objects are ready to be garbage collected. In other words, by default, MAT runs the equivalent of a virtual System.gc when you load a dump so that you are only looking at live Java heap usage.

 

> In the end, How can I fix this problem? How to make JVM collect unused objects? I am using the default GC.

 

What's the output of java -version?

 

-- 

Kevin Grigorenko

Application Runtimes SWAT, IBM Software Support

 

 

From: mat-dev <mat-dev-bounces@xxxxxxxxxxx> on behalf of Siddharth Jain via mat-dev <mat-dev@xxxxxxxxxxx>
Date: Monday, March 25, 2024 at 7:06
PM
To: mat-dev@xxxxxxxxxxx <mat-dev@xxxxxxxxxxx>
Cc: Siddharth Jain <siddhsql@xxxxxxxxx>
Subject: [EXTERNAL] [mat-dev] what does this mean: Removed 1, 592, 839 unreachable objects using 679, 092, 640 bytes

Hello, I am new to Eclipse MAT. I opened a heap dump and saw this message in the log: Removed 1,592,839 unreachable objects using 679,092,640 bytes Does this mean there were these many objects that could be garbage collected but were not?To

Hello,

 

I am new to Eclipse MAT. I opened a heap dump and saw this message in the log:

 

Removed 1,592,839 unreachable objects using 679,092,640 bytes

 

Does this mean there were these many objects that could be garbage collected but were not?

 

To provide context I am trying to debug the following problem: I have an application. When run on a problem of size N I am seeing following memory usage:

 

| N | memory |

| --- | --- |

| 1M | 1GB |

| 10M | 10GB |

| 20M | 100+GB |

 

As you can see the memory increases linearly from 1M to 10M but after that it increases very rapidly and exponentially which is unexpected (the problem). I have analyzed my code and memory allocation is proportional to N. My application is storing data in HashMap(s) for the most part. The only reason I can think of is that memory is not getting garbage collected. Is that hypothesis confirmed by this message in the log? (The log is shown for N=1M btw)

 

In the end, How can I fix this problem? How to make JVM collect unused objects? I am using the default GC.

 

I am really at my wits end trying to debug this and would appreciate any help.

 

S.


Back to the top