【问题标题】:Test Memory Efficiency Comparing Data Structures on a Large Data Set比较大型数据集上的数据结构测试内存效率
【发布时间】:2023-03-08 20:30:01
【问题描述】:

我是否可以使用在线资源来模拟 sn-p 代码在大型数据集上的执行情况并为我提供指标?

否则你会建议用什么方法来实现这一点? (在我的情况下,我特别想看看 LinkedList 与 ArrayList 在内存使用方面的表现(能够在一段时间内查看瓶颈将是惊人的)在插入从 5GB 文件中读取的内容列表时)

谢谢!

【问题讨论】:

    标签: java memory-management arraylist linked-list


    【解决方案1】:

    你可以使用内存分析器,Oracle JDK 有两个visualvm 和jmc

    您还可以进行一次完整的 GC,并通过查看总堆大小来查看使用了多少内存。在 HotSpot 上,System.gc(); 默认被接受。

    能够在一段时间内查看瓶颈将是惊人的

    这就是 CPU 和内存分析器的设计目的。

    【讨论】:

    • 谢谢,这很有帮助!
    【解决方案2】:

    您不需要任何工具来计算特定 java Collection 的内存使用情况。

    在你的情况下:

    • 在LinkedList中任意节点占用24字节。
    • 在ArrayList 中,任何节点都占用 4 个字节,但如果容量严重超过大小,则可能会更多。

    有用的link1 和link2。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      • 2018-10-10
      • 2020-02-22
      • 2015-03-11
      • 1970-01-01
      相关资源
      最近更新 更多