我想以编程方式获取完整的处理器名称,就像 CPU-Z 应用程序那样。例如:高通骁龙800。最后一项对我来说是最重要的信息,即800。
我听说ARM处理器可以在小端和大端之间切换。处理器需要这个做什么?是在Android手机上使用的吗?
在这里,我对术语“记忆栅栏”(Rust 中的栅栏功能)感到困惑。我可以清楚地理解原子方面的内存屏障是什么,但我无法弄清楚什么是内存栅栏。
内存栅栏和内存屏障是一样的吗?如果不是,有什么区别以及何时使用内存栅栏而不是内存屏障?
我们知道,就缓存命中时间而言,直接映射缓存优于集合关联缓存,因为不涉及特定标签的搜索。另一方面,组关联缓存通常比直接映射缓存具有更好的命中率。
我读到,现代处理器试图通过使用一种称为路径预测的技术来结合两者的优点。他们预测给定集合中最有可能发生命中的行,并仅在该行中进行搜索。如果尝试导致未命中,请在该组的所有缓存行中使用正常的组关联搜索。
我想了解这种路径预测是如何工作的。预测硬件/逻辑的延迟如何小于整套的搜索延迟?
caching processor cpu-architecture cpu-cache micro-architecture
我想知道我是否可以在没有锁定mips cpu(尤其是Amazon或Danube)的情况下读取或写入共享int值.我的意思是如果这样的读或写是原子的(其他线程不能中断它们).要清楚 - 我不想阻止线程之间的竞争,但我关心int值本身是否已损坏.
假设编译器在cpu字的边界处对齐所有的int,它应该是可能的.我用gcc(g ++).测试还表明它似乎正常工作.但也许有人肯定知道吗?
摘自Microsoft文档:
默认情况下,线程池每个可用处理器有250个工作线程.您可以使用ThreadPool.SetMaxThreads方法更改此设置.
众所周知,它也有一些开销:
线程有一定程度的开销.因此,如果计算机具有多个处理器并且您将处理拆分为两个线程,则不会看到100%的性能提升.
出于一些经验和更多的猜测,我每个CPU 都有1到4个线程,而不是250个!有人知道为什么250?是否有一些值可以提供最佳的整体性能,或者它是为了几乎完成您为该线程池提供的每项任务而无需等待其他任务完成?
我想知道,ARM处理器是否有专门的寄存器来支持安全环的概念,并且像Android,Palm或者其他类似的操作系统支持安全环吗?
在WIKI中,有一些信息表明,ARM处理器没有像x86这样的寄存器来支持这种类型的工作.
但是,我认为注册只是固定大小的地方,你可以放置和获取信息?因此,安全环的概念/想法仅适用于OS,或者x86处理器确实具有针对这些目标的特殊寄存器,但是在ARM上 - 只有OS支持这种模式?
我是对还是不对?谢谢,
我用google搜索并解开了这个话题,但只有很少的信息,这些信息并不完整.
谢谢,最好的问候,
我只是想知道是否有一台计算机,其中包含2个物理处理器,每个物理处理器具有不同的体系结构。也许目标是要获得一种同时利用两种架构优势的计算机。
视频存储器的地址(0xB8000),谁将视频存储器映射到该地址?
从地址复制数据并将其放到屏幕上的例程,这是处理器的内置功能吗(该驱动程序是否随处理器一起提供)?
我一直在寻找这些问题的答案.但没有太多运气.
是否可以32-bit在机器中运行代码64-bit processor?
答案似乎是肯定的.但是在性能问题上存在争议,因为32-bits处理器上没有使用它们.
现在我的问题反之亦然,是否可以64-bit在带32-bit处理器的机器中运行代码?
根据我的理解,答案是否定的,因为设计用于运行的代码64-bit
将使用,64-process registars但32-bit机器仅提供32.
另一方面,我找到了这个链接.据此,可以在32位机器上编译64位代码.但我不知道如何做到这一点加上如果在32-bit机器上进行编译也能保证execution相同.
谢谢你的帮助
processor ×10
arm ×3
android ×2
c++ ×2
x86 ×2
.net ×1
32-bit ×1
architecture ×1
atomic ×1
c ×1
caching ×1
compilation ×1
cpu ×1
cpu-cache ×1
endianness ×1
kernel ×1
mips ×1
rust ×1
soc ×1
threadpool ×1
video-memory ×1