标签: cpu

用于在UNIX计算机上查找有关CPU的信息的命令

你知道是否有一个UNIX命令会告诉我我的Sun OS UNIX机器的CPU配置是什么?我也在尝试确定内存配置.是否有一个UNIX命令会告诉我这个?

unix cpu

34
推荐指数
4
解决办法
16万
查看次数

关于多核CPU的x86 LOCK问题

在执行"LOCK"之后的指令时,x86 ASM"LOCK"命令前缀是否导致所有内核冻结?

我在博客文章中读到这篇文章并没有意义.我找不到任何表明这是否真实的东西.

cpu x86 assembly locking multicore

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

将某些进程限制为CPU% - Linux

我有以下问题:动态生成的某些进程有吃100%CPU的倾向.我想将所有匹配某些标准(例如进程名称)的进程限制为一定量的CPU百分比.

我试图解决的具体问题是利用折叠@ home工作流程.我能想到的最好的解决方案是定期执行的perl脚本,并使用cpulimit实用程序来限制进程(如果您对更多细节感兴趣,请查看此博客文章).它有效,但它是一个黑客:/

有任何想法吗?我想将流程的处理留给操作系统:)


再次感谢您的建议,但我们仍然错过了这一点:)

"slowDown"解决方案基本上就是"cpulimit"实用程序所做的.我仍然需要关注哪些进程要减速,一旦工作进程完成就终止"slowDown"进程,并为新的进程进程启动新的进程.这正是我用Perl脚本和cron工作所做的.

主要问题是我事先不知道要限制哪些流程.它们是动态生成的.

也许有办法将一个用户的所有进程限制为一定的CPU百分比?我已经设置了一个用户来执行folding @ home作业,希望我能用/etc/security/limits.conf文件来限制他.但是我能到达的最近的是每个用户的总CPU时间......

如果有一些东西可以让你说:"这个用户的进程的所有CPU%使用量的总和不能超过50%",这将是很酷的.然后让流程争夺50%的CPU优先级......


伙计们,感谢您的建议,但这不是关于优先级 - 即使有足够的CPU时间,我也希望限制CPU%.这些进程已经处于低优先级,因此它们不会导致任何性能问题.

我只想阻止CPU长时间以100%运行......

linux cpu limit

31
推荐指数
6
解决办法
4万
查看次数

AES-NI内在函数默认启用?

关于AES-NI,Oracle有关Java 8的说法:

添加了硬件内在函数以使用高级加密标准(AES).UseAES和UseAESIntrinsics标志可用于为Intel硬件启用基于硬件的AES内在函数.硬件必须是2010或更新的Westmere硬件.例如,要启用硬件AES,请使用以下标志:

-XX:+UseAES -XX:+UseAESIntrinsics
Run Code Online (Sandbox Code Playgroud)

要禁用硬件AES,请使用以下标志:

-XX:-UseAES -XX:-UseAESIntrinsics
Run Code Online (Sandbox Code Playgroud)

但它并不表示默认情况下是否启用AES内在函数(对于支持它的处理器).所以问题很简单:如果处理器支持AES-NI,是否使用了AES内在函数?

奖金问题:有没有办法测试是否使用AES-NI?我想你可以根据性能来猜测,但这不是一种最佳或确定的测试方法.


对于不熟悉AES-NI内在函数的读者:它使用AES-NI指令集用预编译的机器代码替换字节代码.这是由JVM发生的,因此它不会出现在Java运行时或字节码的API中.

java cpu cryptography aes jvm-hotspot

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

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

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

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

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

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

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

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

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

cpu instruction-set cpu-architecture cpu-speed

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

位移O(1)还是O(n)?

轮班操作O(1)还是O(n)

计算机通常需要更多操作来转移31个位置而不是移动1个位置是否有意义?

或者有意义的是,无论我们需要移动多少个位置,移位所需的操作数量都是恒定的?

PS:想知道硬件是否是合适的标签..

language-agnostic hardware cpu big-o bit-shift

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

为什么CPU分支指令慢?

自从我开始编程以来,我已经在每个地方阅读,以避免不惜一切代价浪费分支机构.

这很好,虽然没有一篇文章解释了为什么我应该这样做.CPU解码分支指令并决定跳转时到底发生了什么?什么是"东西"使它比其他指令(如添加)慢?

language-agnostic architecture compiler-construction cpu optimization

30
推荐指数
2
解决办法
9164
查看次数

寄存器的"银行"是什么意思?

在维基百科上阅读"ARM架构"并发现以下声明:

寄存器R0-R7在所有CPU模式下都是相同的; 他们永远不会存钱.

除系统模式外,R13和R14在所有特权CPU模式下进行存储.

寄存器是什么意思?

cpu arm

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

基于no的线程配置.CPU核心

场景:我有一个示例应用程序,我有3种不同的系统配置 -

- 2 core processor, 2 GB RAM, 60 GB HHD,
- 4 core processor, 4 GB RAM, 80 GB HHD,
- 8 core processor, 8 GB RAM, 120 GB HHD
Run Code Online (Sandbox Code Playgroud)

为了有效地利用我的应用程序的H/W功能,我希望配置no.应用程序级别的线程数.但是,我希望在彻底了解系统功能之后才能这样做.

是否有某种方式(系统/模式/工具)来参考最大值和最小值来确定系统实力.它可以最佳地服务并且不会降低效率和性能.通过这种方式,我只能为我的应用程序配置那些能够完全正义并为各自的硬件配置实现最佳性能的值.

Edited1: 任何人都可以建议任何关于如何为特定h/w配置设置基线的读数.

编辑2: 使其更直接 - 希望学习/了解我可以阅读的任何资源/文章,以获得对一般/整体级别的线程CPU管理的一些了解.

java cpu multithreading threadpool akka

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

冲突未命中和容量未命中之间有什么区别

容量未命中是因为从缓存中丢弃块,因为缓存不能包含程序执行所需的所有块(程序工作集远大于缓存容量).

在组关联或直接映射块放置策略的情况下发生冲突未命中,当几个块被映射到同一组或块帧时发生冲突未命中; 也称为碰撞未命中或干扰未命中.

它们实际上是密切相关的吗?

例如,如果所有缓存行都已填满,并且我们对内存B有一个读取请求,我们必须驱逐内存A.

因为我们没有足够的空间,所以它应该被视为容量缺失吗?后来如果我们想要访问内存A,并且因为之前被驱逐,它被认为是冲突未命中.

我理解正确吗?谢谢

cpu caching cpu-cache

28
推荐指数
3
解决办法
4万
查看次数