问题标签 [cpu-speed]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
455 浏览

android - 即使有锁,Android 也会在屏幕关闭时将 CPU 缩放得太低

我有一个应用程序,它通过麦克风记录音频,并通过 LAME 将原始 PCM 数据直接编码为 MP3(为大多数性能而配置),然后通过 HTTP 发送该流。

在我的 Galaxy S5 上,它在屏幕打开时可以正常工作,但在关闭屏幕几秒钟后,由于 CPU 不足,该过程变得很困难。

我正在使用所有已知的必需选项来防止设备进入睡眠状态,理论上它可以工作,因为 CPU 不会睡眠,但只是将 CPU 缩放得太低:

  1. 服务正在前台状态运行
  2. 我有一个WIFI_MODE_FULL_HIGH_PERF-lock
  3. 和一个PARTIAL_WAKE_LOCK防止CPU休眠
  4. 所有受影响线程的优先级设置为android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);

该应用程序理论上运行良好,同时在数十万台设备上使用。

但如果用户使用 MP3 编码器 + 屏幕关闭,则 CPU 可能无法再提供足够的功率来平滑地编码 + 流式传输数据。

我的 S5 的 CPU 控制器是“交互式的”——如果我将它设置为“性能”,问题就消失了。

任何人都知道如何防止Android进入睡眠状态,而无需在应用程序使用时一直使用root来更改调速器?

0 投票
0 回答
1364 浏览

android - 使用 root-account 一次,以允许将来在没有 root 的情况下更改 CPU-governor

我是拥有数十万用户的根应用程序的开发人员。

为了避免在用户执行需要 root 的命令时一直向他们询问 root,我一直在寻找技巧 - 所以我的用户尽可能少地受到对话框的干扰,因为它主要作为后台服务运行.

这一次,我想允许根据当前情况频繁更改 CPU-governor,但如果可能的话,不要总是使用 root 访问权限。

我已经尝试过chmod 777 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor使用root,但是echo interactive > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 没有root 仍然会产生“访问定义”。

在unix环境下似乎一般是可能的,所以也许有人有这样的提示,但对于Android?

http://scape.cs.vt.edu/~mjeg/blog/2011/05/07/non-root-change-cpufreq

0 投票
1 回答
865 浏览

emulation - 如何为仿真提供正确的速度?

我想为运行在 600 左右千赫兹的特别慢的 CPU 编写一个模拟器。如果我以天真的方式为 CPU 编写一个仿真器(即一次仿真一条指令而没有其他任何东西),仿真将比 600 千赫兹快得多。

无论主机的速度如何,如何对模拟器进行编程以以正确的速度模拟 CPU?现实世界的模拟器通常使用什么技术来做到这一点?如何避免抖动减慢仿真速度?

0 投票
2 回答
903 浏览

assembly - 将 String 转换为 Integer 需要多少 CPU 周期?

这取决于字符串的长度,所以让我们采用 3 种情况:最简单的情况、最坏的情况和中间的情况。全部为 32 位无符号整数。值将是 0、4294967295 和 67295(半长字符串)。

假设它在现代 CPU 上运行,例如 i7 Nehalem。

我想用具体的数字展示这个操作对 CPU 的密集程度。该算法通常是一个小循环,其中一次迭代需要前一次的结果,因此代码不会利用超标量 CPU 优化。

是否有任何硬连线指令可以在现代 CPU 上执行此操作?

编辑:我试图回答自己并进行了一些搜索。

使用Agner Fog 的“指令表”此答案中的代码

第一条和最后一条指令运行一次。其他延迟和执行的总和是每次迭代 18。所以问题的答案应该是4+18*string.length。

  • “0” = 22 个周期
  • “4294967295” = 184 个周期
  • “67295” = 94 个周期

这比我想象的要少得多。这仅用于转换,不计算处理字符串所需的所有操作:从 NIC 缓冲区复制到内存,内存到 CPU 缓存...

我在计算正确的事情吗?有没有微优化专家可以告诉我这看起来是否正确?(也许是神秘的?;))

0 投票
1 回答
4259 浏览

android - 锁定 android 上的 CPU 以进行应用程序性能测试

我正在尝试在不同 CPU 状态下测试应用在 android 上的性能。所以我想将 CPU 锁定在 1000Mhz 并读取读数,然后使 CPU 过载并读取读数。我的问题是:有没有办法以一定的锁定/冻结率锁定 CPU 和可能的 RAM?任何指向此文档的链接都将受到高度赞赏。

0 投票
1 回答
24 浏览

cpu-speed - 编程中的方程和大数

因此,如果我让我们说 4 个整数:

诠释 a = 50000 诠释 b = 5000000 诠释 c = 100 诠释 d = 500

现在我想要运行的是 b - a 和 c - d。

我的问题是 ba 的运行速度会比 c - d 稍慢,或者它们会被处理器以完全相同的速度执行吗?

0 投票
0 回答
53 浏览

cpu - 什么是跨处理器速度单元?

我正在对某些应用程序的 CPU 使用情况进行压力测试,但我不知道它将部署哪个硬件,我正在寻找某种跨处理器单元来提供有关任何类型的 CPU 使用情况的准确信息CPU给我的客户。例如,如果应用程序使用 25% 的 CPU-1,那么 CPU-2 或 CPU-3 需要多少?我在考虑FLOPS。它值得信赖还是我有其他选择?我可以轻松计算任何 CPU 的 FLOPS 吗?或者我的问题还有其他解决方案吗?

0 投票
1 回答
1096 浏览

r - 与 Stata 相比,在 R 中读取数据帧的最快方法是什么?

我有这个包含 57000 行和 5500 列的数据集。它们既是数字变量又是字符变量。我最初以 .dta 格式下载数据,Stata 读取它非常快。timer当我使用命令计时时,它需要 0.13 个烤饼。

现在,我一直在使用 R,并且从我读过的内容来看,它应该更有效率。我将我的数据从 Stata 导出到 csv,甚至按照我在堆栈交换中阅读的建议,结果并不令人信服。

这是我遇到的最佳解决方案:

)

我得到:

尽管我已经声明了缺失值,但我也收到了很多关于缺失值的警告。警告:

我认为这与 R 无法识别数字列中的这些缺失值有关

关于如何改进这一点的任何建议?附带说明一下,我尝试了 sqldf 但它在我的计算机上不起作用,甚至将软件包升级到最新版本。

这是我正在使用的数据: http ://www3.norc.org/GSS+Website/Download/

0 投票
1 回答
58 浏览

node.js - Fast CPU masks test errors

I have a Node.js application which I'm testing with Mocha on a fast(ish) dev machine. I've noticed that sometimes the fast CPU will mask some errors. If the tests are run on a machine with a slower CPU these errors starting showing up.

Question: Is there an easy way to temporarily slow down or simulate a slow down in CPU processing to surface these errors? Or way to run these tests at full speed and still discover this type of error?

0 投票
1 回答
2347 浏览

java - Windows 的 getSystemLoadAverage() 的替代方法?

我正在使用一些代码来监视使用 Java 的 Cpu 负载。我在我的应用程序中使用以下代码来获取系统负载

但在 Windows 上,它返回一个负值(-1.0)。有什么办法可以解决这个问题吗?