草庐IT

mars-cpu

全部标签

c++ - 如何刷新 CPU 缓存中的地址范围?

我想在x86上运行的linux中测试用户空间程序的性能。为了计算性能,我有必要将特定的缓存行刷新到内存(确保这些行无效,并且在下一个请求时会有缓存未命中)。我已经看到使用cacheflush(2)的建议,它应该是一个系统调用,但g++提示它没有被声明。另外,我不能使用显然只能在内核程序中调用的clflush_cache_range。现在我尝试做的是使用以下代码:staticinlinevoidclflush(volatilevoid*__p){asmvolatile("clflush%0":"+m"(*(volatilechar__force*)__p));}但这会在编译时产生以下错误

java - Linux 使用运行 Java GC 的系统/内核 CPU

一些背景信息;服务器;具有130GBRam的新SLES12服务器旨在为大型数据库(150G+数据)运行MySQL。服务器还将托管一些Java应用程序。Java版本(默认来自Oracle)-Java(TM)SE运行时环境(build1.7.0-b147)-JavaHotSpot(TM)64位服务器VM(build21.0-b17,混合模式)我们遇到了以下问题;运行一些特定的java应用程序会使内核/系统cpu峰值减慢/暂停应用程序一段时间。我通过制作一个Java应用程序重现了它,该应用程序只是随着时间的推移消耗内存并使用一些cpu。调查显示,在经济放缓期间出现大量中断(10000-250

linux - 在 Tegra TK1 上使用 malloc() 与 cudaHostAlloc() 分配的数据的 CPU 内存访问延迟

我正在执行一个简单的测试,比较主机(CPU正在执行访问)使用malloc()分配的数据和使用cudaHostAlloc()分配的数据的访问延迟。我注意到在JetsonTk1上访问使用cudaHostAlloc()分配的数据比访问使用malloc()分配的数据慢得多。独立GPU并非如此,似乎仅适用于TK1。经过一些调查,我发现用cudaHostAlloc()分配的数据被内存映射(mmap)到进程地址空间的/dev/nvmap区域。对于映射到进程堆上的普通malloc数据,情况并非如此。我知道此映射可能是允许GPU访问数据所必需的,因为cudaHostAlloc的数据必须从主机和设备可见。

linux - 在 Linux 上限制进程内存/CPU 使用

我知道我们可以使用nice命令调整调度优先级。但是,手册页并没有说明它是同时限制CPU和内存还是仅限制CPU(无论如何,它不能用于指定绝对限制)。有没有办法在Linux中运行进程并限制其内存使用量为“X”MB和CPU使用量为“Y”Mhz? 最佳答案 您可能想要调查cgroups以及旧的(过时的)ulimit. 关于linux-在Linux上限制进程内存/CPU使用,我们在StackOverflow上找到一个类似的问题: https://stackoverflo

php - Debian:使用 bash 找出 CPU 使用率

我正在使用PHP来读取当前的CPU使用率。我在虚拟服务器上,因此启用了shell_exec。我已经在ps上尝试了grep,但没有成功。如何使用bash读取当前的CPU使用率百分比? 最佳答案 最简单的方法就是使用sys_getloadavg如果你想直接询问操作系统,使用正常运行时间$uptimeString=`uptime`;或任何existinganswers以及如何在bash中做完全相同的事情,只是用反引号括起来。 关于php-Debian:使用bash找出CPU使用率,我们在Sta

linux - 英特尔 CPU 缓存策略

我有一台配备Intel(R)Core(TM)i5-2450MCPU@2.50GHz处理器的笔记本电脑。我在Ubuntu12.04(x86_64)上,我正在尝试查找有关我的处理器的一些信息。我能够找到我正在寻找的大部分信息cat/proc/cpuinfo和lscpu我还想知道的是在每个缓存级别上使用的缓存策略。是回写还是透写?有什么工具可以用来找出此类信息吗?提前致谢。 最佳答案 这不是你可以从CPUID等查询的东西,也不能配置你的CPU来做一个或另一个,因此不存在查询工具。您可以查询的是缓存关联性、缓存行大小和缓存大小,例如通过/p

linux - 如何在 Red Hat Linux 机器上设置 CPU 负载?

我有一个RHEL我需要将其置于适度且可变的CPU负载量(50%-75%)下的盒子。解决此问题的最佳方法是什么?有没有我不知道的程序可以做到这一点?我很乐意编写一些C代码来实现这一点,我只是不知道哪些系统调用会有所帮助。 最佳答案 这正是您所需要的(互联网存档链接):https://web.archive.org/web/20120512025754/http://weather.ou.edu/~apw/projects/stress/stress-1.0.4.tar.gz来自主页:“压力是POSIX系统的简单工作负载生成器。它对系统

linux - nanosleep CPU 使用率高?

我注意到一个调用nanosleep的小测试程序在内核高于2.6.22的Linux机器上运行时显示CPU使用率的巨大差异。#includeintmain(void){structtimespecsleepTime;structtimespecreturnTime;sleepTime.tv_sec=0;sleepTime.tv_nsec=1000;while(1){nanosleep(&sleepTime,&returnTime);}return0;}(是的,我知道这个程序什么都不做)如果我编译它并在openSUSE10.3机器(2.6.22.19-0.2-default)上运行它,该程序

linux - 以降序显示 %cpu 的顶级命令

我希望cpu百分比按降序排列。当我发出命令时:top-bn1|grep"^"|awk'{printf("%-8s%-8s\n",$2,$9);}'|head-8它显示了不是最常用CPU的进程。 最佳答案 将top作为进程运行(我使用的是Ubuntu14.04)top一旦进入顶部...PMzx 关于linux-以降序显示%cpu的顶级命令,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

android - 检测是否在具有异构 CPU 架构的设备上运行

我对这个非常具体。我需要知道设备是否有一个CPU,它有像ARM'sbig.LITTLEtechnology这样的异构内核。,例如,一组4个ARMCortex-A53+另一组4个更强大的ARMCortex-A72,总共8个内核,基本上是同一芯片中的2个处理器。处理器型号并不重要。我正在考虑的是读取所有内核的scaling_max_freq并将具有不同最大频率的那些分组(然后比较它们),但我注意到在某些设备中,通往任何内核的路径不是cpu0实际上是/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq的符号链接(symboliclink)