cpu-architecture 相关问题

CPU或微控制器的硬件微体系结构(x86,x86_64,ARM,...)。

AArch64中32位寄存器的性能优势?

在AArch64/ARM64中进行整数运算时,使用32位W{n}寄存器与64位X{n}寄存器有性能差异吗? 例如,添加 W1、W2、W3 是否比添加 X1、...

回答 1 投票 0

VIPT 缓存中别名的性能影响

VIPT 缓存中的虚拟地址同义词(别名)对性能有何影响?我对最近的 x86_64 架构特别感兴趣,但了解更多其他架构也没什么坏处。

回答 1 投票 0

MIPS管道转发

考虑一个具有指令提取 (IF)、指令解码 (ID)、执行 (EX)、内存访问 (MEM) 和寄存器写回 (WB) 阶段的 5 级流水线处理器。以下哪项陈述...

回答 1 投票 0

如果多核CPU共享MMU,多个进程可以并行运行吗?

如果多核CPU每个核心都有一个专用的MMU,多个进程可以并行运行。我想知道如果多核CPU共享MMU会发生什么。 我猜,如果多核CPU共享...

回答 1 投票 0

为什么单核CPU不会出现指令重排序问题?

来自这篇文章: 在单个 CPU 核心上进行时间切片的两个线程不会遇到重新排序问题。单个核心始终知道自己的重新排序,并将正确解析自己的所有内存...

回答 2 投票 0

RISCV架构中调试模式发生异常如何结束程序缓冲区的执行?

以下引用摘自 riscv-debug-spec 版本 0.132。 异常不会更新任何寄存器。其中包括 Cause、epc、tval、dpc 和 mstatus。 他们确实结束了程序增益的执行...

回答 1 投票 0

对齐缓存行并了解缓存行大小

为了防止错误共享,我想将数组的每个元素与缓存行对齐。因此,首先我需要知道缓存行的大小,因此我为每个元素分配相应的字节数。其次我想要...

回答 7 投票 0

为什么在多个线程上运行时快速内存写入比在单个线程上运行时花费更多时间?

我有一个程序,它分配一些内存(2亿个整数),进行一些快速计算,然后将数据写入分配的内存。 当在单线程上运行时,该过程大约需要 1 ...

回答 1 投票 0

我可以流水线化多周期 risc v 核心吗?如何?

我有一个 risc v 多周期核心 picorv32,每条指令都经过 3 个阶段获取、加载寄存器和执行,这是三个主要的其他操作也在执行,所以我想要管道...

回答 1 投票 0

托管代码会影响指令级并行性吗?

有什么方法可以影响编写 C# 代码的指令级并行性吗?换句话说,有没有一种方法可以“帮助”编译器生成最能利用 ILP 的代码?我问这个...

回答 4 投票 0

“快速”(指令)系统调用和中断驱动的系统调用有什么区别?

根据我的理解,最近的架构中引入了 syscall/sysenter 指令及其同伴,以作为进入内核的更短路径。但我不明白它是如何实现的...

回答 1 投票 0

基准测试如何在模拟器上运行?

我正在用cpp制作32位MIPS模拟器只是为了学习。 但我无法理解基准程序如何在模拟器上运行。 另外,我不知道基准程序的代码是如何构造的。 钙...

回答 1 投票 0

不同Set中是否可以存在相同Tag-ID的缓存块?

我目前正在调查我的 CA 课程之前的一些考试。 有一个问题让我感到非常困惑,这是要使用的数据: 考虑 32 位地址(标签 20 位,...

回答 1 投票 0

为什么 GCC 再次使用 movzbl 对已经零扩展的寄存器进行零扩展?

我想知道为什么这段代码: size_t hash_word(const char* c, size_t 大小) { size_t 哈希 = uchar(c[0]); 哈希 ^= uchar(c[大小 - 1]); 哈希 ^= uchar(c[大小 - 2]); 返回哈希值; } 当

回答 1 投票 0

为什么要使用第二个 movzbl 进行编译?

我想知道为什么这段代码: size_t hash_word(const char* c, size_t 大小) { size_t 哈希 = uchar(c[0]); 哈希 ^= uchar(c[大小 - 1]); 哈希 ^= uchar(c[大小 - 2]); 返回哈希值; } 当

回答 1 投票 0

Mutex 和 CPU 缓存(和内存栅栏)的关系

假设我有一个具有多个线程的应用程序需要访问一些共享数据。 我知道可以使用互斥锁(关键部分)来确保一次最多有一个线程可以访问

回答 1 投票 0

当前Intel架构的单核可以执行多少次浮点乘法?

为了评估嵌入式架构的性能增益,我尝试搜索可以在 Core 2 的单个内核上执行的浮点乘法的数量,并且...

回答 1 投票 0

ARM64架构下的wip0寄存器是什么?

说,在下面的拆解说明中: 磅: ldaxr x8,[x9] 添加 x8, x8, #1 stlxr wip0, x8, [x9] cbnz wip0, lbl wip0是什么?

回答 1 投票 0

从我的 Intel 系统检测 CPU 和核心信息

我目前使用的是 Windows 8 Pro 操作系统,处理器为:Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz,RAM 8 GB。 我想知道我的 S 有多少个物理处理器和多少个实际核心...

回答 1 投票 0

CPU 与 GPU 核心数量

我需要一些帮助来理解 GPU 内核与 CPU 内核的概念,以便进行并行计算。 当谈到 CPU 的核心时,它看起来非常简单。我有一个苏...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.