cpu相关内容

如何在 Linux/Windows 上测量 CPU 时间和挂钟时间?

我的意思是:我如何测量我的 CPU 花在函数执行上的时间以及运行我的函数所需的挂钟时间?(我对 Linux/Windows 以及 x86 和 x86_64 感兴趣).看看我想做什么(我在这里使用 C++,但我更喜欢 C 解决方案): int startcputime, endcputime, wcts, wcte;startcputime = cputime();功能(参数);endcputim ..
发布时间:2021-12-08 11:48:33 C/C++开发

L2 TLB 未命中后会发生什么?

我很难理解当转换后备缓冲区的前两个级别导致未命中时会发生什么? 我不确定“页面行走"是否发生在特殊的硬件电路中,或者页表是否存储在 L2/L3 缓存中,或者它们是否只驻留在主内存中. 解决方案 (其中一些是 x86 和 Intel 特定的.大多数关键点适用于任何执行硬件页面遍历的 CPU.我还讨论了像 MIPS 这样的 ISA使用软件处理 TLB 未命中.) 现代 x86 微体 ..
发布时间:2021-12-08 11:26:30 其他开发

如何设置特定 pthread 的 CPU 亲和性?

我想指定特定 pthread 的 cpu-affinity.到目前为止,我发现的所有参考资料都涉及设置进程 (pid_t) 而非线程 (pthread_t) 的 CPU 亲和性.我尝试了一些传递 pthread_t 的实验,但正如预期的那样失败了.我是在尝试做一些不可能的事情吗?如果没有,请你发个指针好吗?感谢一百万. 解决方案 这是我为让生活更轻松而制作的包装器.它的作用是调用线程“卡住 ..
发布时间:2021-12-06 11:42:15 其他开发

如何从命令行获取 Linux 中的 CPU/内核数?

我有这个脚本,但我不知道如何获取打印输出中的最后一个元素: cat/proc/cpuinfo |awk '/^processor/{print $3}' 最后一个元素应该是 CPU 的数量,减 1. 解决方案 grep -c ^processor/proc/cpuinfo 将计算以“processor"开头的行数;在 /proc/cpuinfo 对于具有超线程的系统,您可以使用 ..
发布时间:2021-12-03 13:43:41 服务器开发

如何在 Linux 上获得整体 CPU 使用率(例如 57%)

我想知道如何获取系统 CPU 使用率并使用 bash 以百分比形式显示它,例如. 示例输出: 57% 如果有多个核心,如果可以计算平均百分比就好了. 解决方案 看一看cat/proc/stat grep 'cpu'/proc/stat |awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}' 编辑请在复制粘 ..
发布时间:2021-12-03 13:01:26 服务器开发

如何从进程内部确定 CPU 和内存消耗

我曾经负责从正在运行的应用程序内部确定以下性能参数: 可用的虚拟内存总量 当前使用的虚拟内存 我的进程当前使用的虚拟内存 可用内存总量 当前使用的内存 我的进程当前使用的 RAM 当前使用的 CPU 百分比 我的进程当前使用的 CPU 百分比 代码必须在 Windows 和 Linux 上运行.尽管这似乎是一项标准任务,但在手册(WIN32 API、GNU 文档)以及 I ..
发布时间:2021-12-01 15:01:32 C/C++开发

基于编号的线程配置.CPU 核数

场景:我有一个示例应用程序,我有 3 个不同的系统配置 - - 2 核处理器,2 GB RAM,60 GB HHD,- 4 核处理器,4 GB RAM,80 GB HHD,- 8 核处理器,8 GB RAM,120 GB HHD 为了有效地利用我的应用程序的 H/W 功能,我希望配置 no.应用程序级别的线程数.但是,我希望只有在彻底了解系统功能后才能这样做. 是否有某种方法(系统/模式 ..
发布时间:2021-11-26 22:35:44 Java开发

64位处理器有什么优势?

显然,64 位处理器具有 64 位地址空间,因此您可以使用 4 GB 以上的 RAM.编译与 64 位相同的程序并在 64 位 CPU 上运行是否有任何其他优势可能实际上使那些不占用大量内存的程序受益? 我问的是一般的 CPU,特别是与 Intel 兼容的 CPU. 解决方案 有一篇关于维基百科的很棒的文章 关于 64 位 Intel/AMD cpu 与其 32 位版本的区别和优势. ..
发布时间:2021-11-26 15:01:01 其他开发

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-26 14:28:01 其他开发

32 位和 64 位进程之间的 memcpy 性能差异

我们有 XP64 的 Core2 机器(戴尔 T5400). 我们观察到在运行 32 位进程时,memcpy 的性能大约是1.2GByte/s;但是在 64 位进程中使用 memcpy达到约 2.2GByte/s(或 2.4GByte/s与英特尔编译器 CRT 的 memcpy).虽然最初的反应可能只是解释这个由于可用的寄存器更广泛在 64 位代码中,我们观察到我们自己的类似 memcpyS ..
发布时间:2021-11-26 14:08:06 其他开发

在 32 位 CPU 上,“整数"类型是否比“短"类型更有效?

在 32 位 CPU 上,一个整数是 4 个字节,一个短整数是 2 个字节.如果我正在编写一个使用许多数值的 C/C++ 应用程序,这些数值总是适合所提供的短整数范围,使用 4 字节整数还是 2 字节整数更有效? 我听说 4 字节整数更有效,因为这适合从内存到 CPU 的总线带宽.但是,如果我将两个短整数相加,CPU 是否会在一次并行中打包这两个值(从而跨越总线的 4 字节带宽)? 解 ..
发布时间:2021-11-26 14:02:13 其他开发

如何在 Java 中检查 CPU 和内存使用情况?

我需要用java检查服务器的CPU和内存使用情况,有人知道怎么做吗? 解决方案 如果您专门寻找 JVM 中的内存: 运行时运行时 = Runtime.getRuntime();NumberFormat 格式 = NumberFormat.getInstance();StringBuilder sb = new StringBuilder();long maxMemory = runtim ..
发布时间:2021-11-25 20:30:06 Java Web开发

如何在 Java 中监控计算机的 CPU、内存和磁盘使用情况?

我想用Java监控以下系统信息: 当前 CPU 使用率**(百分比) 可用内存*(可用/总) 可用磁盘空间(可用/总) *请注意,我指的是整个系统可用的总内存,而不仅仅是 JVM. 我正在寻找一种跨平台解决方案(Linux、Mac 和 Windows),它不依赖于我自己的代码调用外部程序或使用 JNI.尽管这些都是可行的选择,但如果有人已经有了更好的解决方案,我宁愿不要自 ..
发布时间:2021-11-25 13:33:59 Java Web开发

地址空间中可以有多少个字?

这是我正在解决的问题 问题:高速工作站具有 64 位字和 64 位地址,地址解析为字节级别.工作站的地址空间中可以有多少个字? 我在问题中定义了不同的术语 字长 - 处理器自然数据单位.字长决定了一次可以处理的信息量 字节级寻址 - 支持访问单词内单个字节的硬件架构 64 位寻址- 您有 64 位来指定 运行时内存 中保存指令或数据的地址 地址空间 - 运行程序的内存视图在 ..
发布时间:2021-11-25 07:46:08 C#

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-25 07:00:30 C#

32 位和 64 位进程之间的 memcpy 性能差异

我们有 XP64 的 Core2 机器(戴尔 T5400). 我们观察到在运行 32 位进程时,memcpy 的性能大约是1.2GByte/s;但是在 64 位进程中使用 memcpy达到约 2.2GByte/s(或 2.4GByte/s与英特尔编译器 CRT 的 memcpy).虽然最初的反应可能只是解释这个由于可用的寄存器更广泛在 64 位代码中,我们观察到我们自己的类似 memcpyS ..
发布时间:2021-11-25 05:29:25 C#

64位处理器有什么优势?

显然,64 位处理器具有 64 位地址空间,因此您可以使用 4 GB 以上的 RAM.编译与 64 位相同的程序并在 64 位 CPU 上运行是否有任何其他优势可以真正使那些不占用大量内存的程序受益? 我问的是一般的 CPU,特别是与 Intel 兼容的 CPU. 解决方案 有一篇关于维基百科的很棒的文章 关于 64 位 Intel/AMD cpu 与其 32 位版本的区别和优势.它 ..
发布时间:2021-11-25 05:20:54 C#

x86 和 x64 共享指令集?

我不知道 32 位应用程序如何在 64 位操作系统上运行. 我的理解是 32bit/64bit 是指寄存器大小.指令集应该不同,因为它们有不同大小的寄存器. 但我知道有 x86-64 指令集,它是 x86 指令集的 64 位版本. 我们可以在 64 位操作系统上运行 32 位应用程序的原因是因为 x86-64 吗? 如果是这样,为什么 32 位应用程序有时在 64 位窗口中 ..
发布时间:2021-11-24 23:11:47 C#

32 位和 64 位进程之间的 memcpy 性能差异

我们有 XP64 的 Core2 机器(戴尔 T5400). 我们观察到在运行 32 位进程时,memcpy 的性能大约是1.2GByte/s;但是在 64 位进程中使用 memcpy达到约 2.2GByte/s(或 2.4GByte/s与英特尔编译器 CRT 的 memcpy).虽然最初的反应可能只是解释这个由于可用的寄存器更广泛在 64 位代码中,我们观察到我们自己的类似 memcpyS ..
发布时间:2021-11-24 22:53:43 C#

在 32 位 CPU 上,“整数"类型是否比“短"类型更有效?

在 32 位 CPU 上,一个整数是 4 个字节,一个短整数是 2 个字节.如果我正在编写一个使用许多数值的 C/C++ 应用程序,这些数值总是适合提供的短整数范围,使用 4 字节整数还是 2 字节整数更有效? 我听说 4 字节整数更有效,因为这适合从内存到 CPU 的总线带宽.但是,如果我将两个短整数相加,CPU 是否会将这两个值并行打包一次(从而跨越总线的 4 字节带宽)? 解决方 ..
发布时间:2021-11-24 22:48:42 C#