对不同Java集合进行基准测试的最佳实践是什么?

对不同Java集合进行基准测试的最佳实践是什么?,java,data-structures,collections,java-7,Java,Data Structures,Collections,Java 7,我手上有两个有趣的Java集合,例如: 爪哇7 Java 7并发集合 Scala系列 我们在某家公司拥有的自制系列 我想知道从性能和可伸缩性的角度来看,测试这些API的最佳实践是什么,即哪一个最快、最可伸缩、性能最好等等。我应该设置一百万个随机元素并使用计时器还是其他什么?只是想满足我的好奇心,看看谁会赢。。不过,我没有看到任何源代码 编辑:更新指向github上自动导出项目的链接 退房。它将在今年秋天发布1.0版,但许多人已经在使用它并取得了良好的效果(通过从源代码构建它;对不起) 不过,请

我手上有两个有趣的Java集合,例如:

  • 爪哇7
  • Java 7并发集合
  • Scala系列
  • 我们在某家公司拥有的自制系列
  • 我想知道从性能和可伸缩性的角度来看,测试这些API的最佳实践是什么,即哪一个最快、最可伸缩、性能最好等等。我应该设置一百万个随机元素并使用计时器还是其他什么?只是想满足我的好奇心,看看谁会赢。

    。不过,我没有看到任何源代码

    编辑:更新指向github上自动导出项目的链接

    退房。它将在今年秋天发布1.0版,但许多人已经在使用它并取得了良好的效果(通过从源代码构建它;对不起)


    不过,请浏览一下本文中的部分内容。

    与所有基准测试一样,您必须测试您感兴趣的性能特征。一种用法的胜利者可能是另一种用法的失败者。所以问问你自己:我认为重要的特征是什么?同意,使用一个集合的便利性也可能超过为一小部分数据节省几毫秒的目的。但是,这可能是为了让您能够识别集合类的一些通用用例,例如“在100万个对象上的非同步插入上的最快链表”等。这样的测量是非常通用的。如果没有代码,我个人会认为那篇论文完全没有用。只要给他发一封电子邮件就行了。也许,通过一些推动,他会将代码放在github上。好吧,我发现从性能角度来看,它很有用,特别是如果你想进行采样的话。好吧,这些是帮助编写基准测试的工具。基准仍然缺失。尽管其中一个例子是数组排序基准测试。