标签: cpu-speed

不等式运算符比等式运算符更快吗?

我知道这是一个微观优化,所以我问出纯粹的好奇心.

逻辑上,微处理器不需要比较相等运算符的两个操作数的所有位以确定"FALSE"结果.

注意,这与编程有关,因为它会影响程序的执行速度.

optimization performance cpu-speed

54
推荐指数
5
解决办法
2万
查看次数

找出CPU时钟频率(每个核心,每个处理器)

像CPUz这样的程序非常擅长提供有关系统的深度信息(总线速度,内存时序等)

但是,是否有一种编程方式来计算每个核心(以及每个处理器,在每个CPU具有多个核心的多处理器系统中)频率,而无需处理CPU特定信息.

我正在尝试开发一种反作弊工具(用于时钟限制基准测试),它能够在基准测试期间记录系统中所有活动核心(所有处理器)的CPU时钟.

c++ cpu cpu-speed

36
推荐指数
1
解决办法
3万
查看次数

CPU架构演变如何影响虚拟函数调用性能?

几年前,我正在学习x86汇编程序,CPU流水线,缓存未命中,分支预测以及所有爵士乐.

这是两个半的故事.我在处理器viz指令重新排序,缓存预加载,依赖性交错等方面阅读了冗长流水线的所有优点.

缺点是规范的任何偏差都是非常昂贵的.例如,IIRC在早期千兆赫时代的某个AMD处理器每次通过指针(!)调用函数时都会有40个周期的惩罚,这显然是正常的.

这不是一个可以忽略不计的"别担心"号码!请记住,"良好设计"通常意味着"尽可能地考虑您的功能"和"在数据类型中编码语义",这通常意味着虚拟接口.

权衡是不执行此类操作的代码每个周期可能获得两个以上的指令.这些是在编写高性能C++代码时需要担心的数字,这些代码在对象设计上很重要并且可以解决数字运算问题.

据我所知,随着我们进入低功耗时代,长CPU流水线趋势已经逆转.这是我的问题:

最新一代x86兼容处理器是否仍然遭受虚拟功能调用,坏分支预测等的严重处罚?

cpu instruction-set cpu-architecture cpu-speed

30
推荐指数
1
解决办法
3917
查看次数

如何检测android cpu速度?

我想知道我的Android应用程序运行的设备有多快?

在Android上有没有API可以做到?或者我必须自己进行基准测试?

如果设备具有较慢的CPU,我想关闭一些耗时的操作,如动画或限制同时HTTP请求的最大数量.

performance android detect cpu-speed

25
推荐指数
2
解决办法
3万
查看次数

现代CPU到底有多"快"?

当我以前编写嵌入式系统和早期的8/16位PC(6502,68K,8086)时,我非常好地处理了每条指令执行的时间(以纳秒或微秒为单位).根据系列,一个(或四个)周期等同于一个"内存提取",并且无需担心缓存,您可以根据所涉及的内存访问次数猜测时序.

但是对于现代CPU,我很困惑.我知道它们的速度要快得多,但我也知道,如果不知道每条指令需要多少个时钟周期,标题千兆赫速度就无济于事.

那么,任何人都可以为两个示例指令提供一些时序,比如说(2)Core 2 Duo.最好和最坏的情况(假设缓存中没有任何内容/缓存中的所有内容)将是有用的.

指令#1:将一个32位寄存器添加到第二个.

指令#2:将32位值从寄存器移到存储器.

编辑:我之所以要这样做是为了尝试开发一个"经验法则",这样我就可以查看简单的代码并粗略估计所需的时间到最接近的数量级.

编辑#2:有趣点的答案很多,但没有人(还)已经记下了及时测量的数字.我很欣赏这个问题有"复杂性",但是来吧:如果我们可以估算出纽约市钢琴调音师数量,我们应该能够估计代码运行时间......

采取以下(哑)代码:

int32 sum = frigged_value();

// start timing
 for (int i = 0 ; i < 10000; i++)
 {
   for (int j = 0 ; j < 10000; j++)
   {
     sum += (i * j)
   }
   sum = sum / 1000;
 }

// end timing
Run Code Online (Sandbox Code Playgroud)

我们如何估计运行多长时间... 1飞秒?1千兆?

performance x86 assembly cpu-architecture cpu-speed

18
推荐指数
8
解决办法
4694
查看次数

Android游戏循环,如何控制速度和帧速率

我已经为Android编写了一款游戏,我在Dev Phone上测试了它.它运行得很好,速度恰到好处.但是,我确信手机CPU的速度越来越快.它们可能已经比开发电话更快.

我如何确保我的游戏以完全相同的速度运行,无论设备是什么或运行速度有多快?你知道任何技巧吗?我应该每次检查循环顶部的某种计时器吗?

我想我指的是帧速率 - 但主要是我的游戏在主游戏循环中运行的速度.

任何理论或经验都会很棒!谢谢.

android cpu-speed

18
推荐指数
1
解决办法
2万
查看次数

在OS X上以编程方式检测当前CPU时钟速度?

我刚买了一个漂亮的MBA 13"Core i7.我被告知CPU速度会自动变化,而且非常疯狂.我真的希望能用一个简单的应用来监控它.

是否有任何Cocoa或C调用来查找当前时钟速度,而不会实际影响它?

编辑:我可以使用终端呼叫以及程序化来获得答案.

谢谢!

macos cpu clock cpu-speed

18
推荐指数
3
解决办法
2万
查看次数

在Android中关闭屏幕时如何防止CPU"休眠"?

我有一个应用程序,我通过WiFI发送网络数据.一切都很好,直到我关闭显示器或设备进入"睡眠"状态.我已经锁定了WiFi,但似乎是在睡眠时CPU速度下降导致流式传输不正常的情况(即数据包的流速不如我想的那样快设备没有睡觉).

我知道我可能/可能应该在协议级别解决这个问题,但这可能也不可能 ......

没有办法 "在屏幕关闭时防止CPU进入'睡眠'"?如果是这样,怎么样?如果没有,关于如何保持WiFi流的速度的任何建议是否一致,无论设备是否处于睡眠模式?

android throttling cpu-speed android-wifi sleep-mode

15
推荐指数
2
解决办法
1万
查看次数

如何计算CPU的理论峰值性能

这是我的cat /proc/cpuinfo输出:

...

processor           : 15
vendor_id           : GenuineIntel
cpu family          : 6
model               : 26
model name          : Intel(R) Xeon(R) CPU           E5520  @ 2.27GHz
stepping            : 5
cpu MHz             : 1600.000
cache size          : 8192 KB
physical id         : 1
siblings            : 8
core id             : 3
cpu cores           : 4
apicid              : 23
fpu                 : yes
fpu_exception       : yes
cpuid level         : 11
wp                  : yes
flags               : fpu vme de pse tsc msr pae mce …
Run Code Online (Sandbox Code Playgroud)

cpu performance cpu-speed

14
推荐指数
2
解决办法
3万
查看次数

Android Studio性能是否可以很好地扩展CPU核心数量

例如,AMD Ryzen 5 1600有6个(每个物理2个逻辑核心)内核,具有Clockspeed:3.2 GHz Turbo Speed:3.6 GHz.

相比之下,英特尔酷睿i5-7600拥有4个带有Clockspeed的内核:3.5 GHz Turbo Speed:4.1 GHz.

我的经验,Ryzen 1600比i5 7600表现得更好我已经看过很多游戏基准,其中两个处理器都是颈部和Ryzen的性能只有在视频渲染,编码,文件压缩等情况下才会产生影响,否则我找不到主要区别.甚至主要是我发现i5 7600表现更好.

总而言之,这是我的问题....

  • 核心数量对Android工作室来说真的很重要吗?
  • 更高的时钟速度是否对Android工作室很重要?

cpu cpu-speed cpu-cores android-studio

14
推荐指数
3
解决办法
7191
查看次数