cpu相关内容
..
我有一些误解关于测量拖,基于英特尔架构,是一个失败一次加法和一次乘法在一起吗?我读到这个地方网上并没有争论,可以拒绝这个。我知道,FLOP对不同类型的CPU不同的含义。 如何计算我的理论峰值FLOPS?我使用英特尔(R)酷睿(TM)2双核E7400 CPU @ 2.80GHz的。到底是什么GHz和FLOPS之间的关系? (连维基百科上关于FLOPS条目不指定如何做到这一点) 我会用下面
..
我与Linux内核的高CPU cunsumption一个问题,而在服务器自举我的Java应用程序。只有在生产中发生此问题,开发服务器上的一切都是光速。 upd9:有这个问题上有两个问题: 如何解决呢? - 标称动物建议同步和放下一切,它确实有帮助。 须藤SH -c'同步;回声3>的/ proc / SYS / VM / drop_caches; 作品。 upd12:不过说实在的同步足
..
我知道,现代的CPU可以执行乱序,但是他们总是退有序的结果,如维基百科描述。 “走出奥德处理器填补这些”时间与准备其他指令,,然后重新整理插槽“末的结果,使之出现的指令进行处理正常。 “ 现在内存围栏,据说使用多核平台的时候是必须的,因为由于乱序执行,错误的价值的 X 在这里可以打印出来。 处理器#1: 而˚F== 0 ; 打印X; //点¯x可能不是42这里处理器#2: X
..
变量 X 数据类型为int可能的值: -1,0,1,2,3 。 其中前pression将以更快的速度(以CPU蜱): 1。 (X℃,) 2.(X == -1) 语言:C / C ++,但我想其他语言将具有相同。 P.S。我个人认为,答案是(X小于0)。 更广泛的大师:如果 X 从 1 到 2 ^ 30 ? 解决方案 这完全取决于你编译的ISA和编译器的优化质量。不要优化prema
..
我读
..
我的小程序: 的#include<&stdio.h中GT;诠释主(){ 符号字符C = -128; C = -c; 的printf(“%D”,C); 返回0; } 打印: -128 为负( - )?在整个CPU操作便携 解决方案 一元减的操作首先经历标准promitions,所以它的类型为 INT ,它可以再present值 -128 。操作的结
..
以下code的片给我们从我们的教练,所以我们可以测量一些算法的性能: 的#include<&stdio.h中GT; #包括LT&;&unistd.h中GT;静态无符号cyc_hi = 0,cyc_lo = 0;静态无效access_counter(无符号*您好,无符号* LO){ ASM(“RDTSC; MOVL %% EDX,%0; MOVL EAX %%%1” :“=
..
我需要控制C-国家配置。具体来说,我可能想执行以下ASM code: __ ASM { RDMSR 和EAX,0×00 或EAX,0×01 WRMSR } 目前,我得到了 RDMSR 行此异常:在MessWithCStates.exe 0x00e3139e未处理的异常:0xC0000096:特权指令 我怎么能(永久)提升我的应用程序的特权时,以便它可以执行上
..
是否有可能被一些API或函数来得到这样的信息,而不是解析的/ proc内/ cpuinfo ? 解决方案 从 5人PROC : 的/ proc内/ cpuinfo 这是CPU和系统体系结构相关的集合 项目,为每个支持的架构不同的列表。二 常见条目是处理器,这给CPU数量和 bogomips;在核心中计算系
..
我不希望优化什么,我发誓,我只想问这个问题是出于好奇。 我知道,在大多数硬件上有位移(如 SHL , SHR )的集合命令,这是一个单一的命令。但它的问题(纳秒的角度来看,还是CPU-圆通明智的),你有多少位转移。换句话说,要么是下列任何CPU上更快吗? X<< 1; 和 X<< 10; 和请不要恨我这个问题。 :) 解决方案 潜在取决于CPU。 然而,所
..
我用下面的code来分析我的行动,在我拍摄功能的CPU周期优化。 静态__inline__无符号长GetCC(无效) { 无符号的A,D; ASM挥发性(“RDTSC”:“=一个”(一),“= D”(D)); 返回((无符号长)一)| (((无符号长)D)<< 32); } 我不认为这是因为即使两个连续的通话最好的给我“33”的区别。 有什么建议? 解决方案 我个
..
我在哪里可以买到,支持C作为开发语言可编程USB加密狗? 解决方案 思洛克 骆基贤 阿拉丁 我们在我们的应用程序中使用思洛克。这是一个聪明的加密狗,你可以下载你的自定义code进去。它的工作方式是,而不是只检查加密狗的presence,你的code应该指望从里面加密狗的code发出的加密狗正确的输出。
..
是本机 64位整数运算指令比 32位零件计数器较慢(对 x86_64的机 64位 OS)? 编辑:在当前这样的CPU英特尔酷睿双核,酷睿i5 / i7处理器等 解决方案 这取决于CPU准确和运营上。在64位奔腾的IV,例如,64位寄存器乘法是相当慢一点。酷睿2及更高版本的CPU已经被设计为从根本上64位操作。 一般情况下,即使是64位平台编写code采用32位变量,其中值将适合他们。这
..
是否有一个API来获取CPU的Linux中提供的号码吗? 我的意思是,不使用/ proc内/ cpuinfo或任何其他SYS节点文件... 我发现使用sched.h中此实现: INT GetCPUCount() { cpu_set_t CS; CPU_ZERO(安培; CS); sched_getaffinity(0,sizeof的(CS),及放大器; CS); 诠释计数= 0;
..
有没有在Linux中任何一个CPU核心分配给特定的特定过程,不应该有任何其他进程或中断处理程序要在这个核心计划? 我已经在Linux中的结合过程阅读过程亲和力的CPU使用taskset的工具但是这不解决我的问题,因为它只是试图给定的过程仿射到核心,但它是可能是其他进程可能安排在这个核心,这是我想避免的。 我们应该改变内核code调度? 解决方案 是的,有。事实上,有两个独立的方式来做到
..
我的意思是:我怎么能测量时间我的CPU功能上执行,需要运行我的功能挂钟时间用在何处? (IM感兴趣的Linux / Windows与x86和x86_64的)。看看我想做的事(IM使用C ++在这里,但我会preFER℃溶液): INT startcputime,endcputime,WCTS,wcte;startcputime = CPUTIME(); 功能(参数); endcputime =
..
我感兴趣的是在Windows迫使CPU缓存刷新(为基准的原因,我想模仿开始,在CPU缓存中没有数据),preferably一个基本的C实现或Win32调用。 有没有一种已知的方式与系统调用,甚至一些刁钻的说做一个大的的memcpy ?要做到这一点 英特尔的i686平台(P4和最多是好的为好)。 解决方案 幸运的是,明确地刷新缓存的方法不止一种。 指令“WBINVD”写回修改的缓存内容
..
我曾经从正在运行的应用程序中确定以下性能参数的任务: 总可用虚拟内存 目前使用的虚拟内存 目前使用的过程中我的虚拟内存 总可用RAM 目前使用的RAM 目前使用的我的过程RAM 目前使用的CPU% 目前使用的我的过程%的CPU 在code必须在Windows和Linux上运行。尽管这似乎是一个标准的任务,发现在手册中的必要信息(WIN32 API,GNU文档),以及在互联
..
我有一些基本的怀疑,但每次我坐在尝试我的手在面试问题,这些问题和我的疑惑弹出。 说= 5 B = -2 我说A + B。我假设A和B是4字节 如何在CPU做加法? 据我所知,将有符号位(MSB)为0,表示正整数 和B将有符号位为1来表示负整数。 现在当C ++程序,我想打印A + B,确实ALU(算术逻辑单元)的加入模块符号位先检查,然后决定做减法,然后按照减法的过程。扣除的方式将是
..