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