相关疑难解决方法(0)

如何在Java中编写正确的微基准测试?

你如何在Java中编写(并运行)正确的微基准测试?

我在这里寻找代码示例和注释,说明要考虑的各种事项.

示例:基准测量应该测量时间/迭代或迭代/时间,为什么?

相关:秒表基准可以接受吗?

java benchmarking jvm jvm-hotspot microbenchmark

835
推荐指数
11
解决办法
11万
查看次数

秒表基准测试可以接受吗?

有没有人使用秒表基准测试,还是应该总是使用性能工具?有没有适合Java的免费工具?你用什么工具?

为了澄清我的担忧,由于操作系统调度,秒表基准测试会出错.在程序的给定运行中,操作系统可能会在您正在计时的函数中间安排另一个(或多个)进程.在Java中,如果你试图为一个线程化的应用程序计时,事情会更糟糕,因为JVM调度程序会在混合中引入更多的随机性.

基准测试时如何解决操作系统调度问题?

java benchmarking

74
推荐指数
4
解决办法
1万
查看次数

排出Intel Core 2 Duo的指令流水线?

我正在为C中的一些非常短的操作编写一些微基准测试代码.例如,我测量的一件事是根据传递的参数数量调用空函数需要多少个周期.

目前,我在每次操作之前和之后使用RDTSC指令进行计时,以获得CPU的循环计数.但是,我担心在第一个RDTSC之前发出的指令可能会减慢我正在测量的实际指令.我还担心在第二个RDTSC发布之前可能无法完成整个操作.

有没有人知道x86指令强制所有正在进行的指令在发出新指令之前提交?我被告知CPUID可能会这样做,但我一直无法找到任何说明的文档.

c benchmarking x86 assembly microbenchmark

8
推荐指数
1
解决办法
1795
查看次数

你有什么建议可以给我写一个有意义的基准?

我已经开发了一个框架,供我们组织中的几个团队使用.在这个框架之上开发的那些"模块"可以表现得完全不同,但它们都是非常耗费资源的,即使有些模块比其他模块更多.它们都在输入中接收数据,分析和/或转换数据,并进一步发送.

我们计划购买新硬件,我的老板让我根据模块定义和实施基准测试,以便比较我们获得的不同报价.

我的想法是简单地用一组精心选择的数据作为输入顺序开始每个模块.

你有什么建议吗?关于这个简单程序的任何评论?

benchmarking

5
推荐指数
1
解决办法
1450
查看次数

标签 统计

benchmarking ×4

java ×2

microbenchmark ×2

assembly ×1

c ×1

jvm ×1

jvm-hotspot ×1

x86 ×1