BranchSpeedTest:这是一个比较if语句之间速度差异的java程序
这个程序的功能是测试分支预测当编译器尝试编译程序时,它会尝试消除尽可能多的危害。最难解决的风险是控制风险。为什么我们需要分支预测为了使程序运行得更快,它一次运行多条指令。编译为汇编时的if语句称为分支指令。当计算机运行一条分支指令时,它无法知道下一条要运行的指令,因为一条分支指令可以改变下一条要运行的指令。为了解决这个问题,计算机试图预测接下来要运行的指令。为什么排序数组会使程序运行得更快目前在代码中,我们有一个循环,它从数组中获取数字并对所有这些数字运行if语句。当数字以随机顺序排列时,编译器无法准确预测下一条指令是什么。所以编译器在很多时候都会出错,因此总时间非常大。当我们对数组进行排序时,分支预测器可以准确地预测下一条指令,因此程序运行速度明显加快(大约快5倍)排序数组所用时间1.777645秒1.780279秒1.81
文件列表
BranchSpeedTest-master.zip
(预估有个6文件)
BranchSpeedTest-master
.project
374B
src
branchSpeedTest
Main.java
2KB
.settings
org.eclipse.jdt.core.prefs
587B
README.md
2KB
.classpath
295B
bin
暂无评论