cpu-architecture

    0热度

    1回答

    据我所知,虚拟索引虚拟标记的缓存,这里我们有一个虚拟地址分为页码和页面偏移量。我们使用这个页码来获取缓存块。如果存在高速缓存未命中,我们使用TLB进行地址转换并从主存储器中获取适当的高速缓存块。 我的疑问是这里的“索引”这个词的含义是什么?这是缓存线的方式吗?什么是虚拟标签的含义? 谢谢。

    0热度

    1回答

    * I缓存的命中率为0.95,命中率为3个周期,D缓存的命中率为0.85(3个周期)。两个罚款都是40个周期。 0.25内存指令的AMAT是什么? 我计算成功: AMAT_I = 3 + 0.05 * 40 = 5 AMAT_D = 3 + 0.15 * 40 = 9 的溶液告诉我: AMAT_Total = 1/1.25 * AMAT_I + 0.25/1.25 * AMAT_D但我不明白为什么

    0热度

    1回答

    如果有2个高速缓存L1和L2,其中L1是第一级高速缓存,而L2是低级高速缓存。 假设L1有一个失误,L2有一个命中。 现在,我们是否需要将所需的块从L2传送到L1,然后从L1访问所需的字节,或者我们是否可以直接从L2访问所需的字节? 平均存取时间可被给定为: - H1(T1)+(1-H1)(H2)(T1 + T2),其中 H1:击中L1高速缓存的比率, T1:的存取时间L1, h2:L2缓存的命中

    -1热度

    1回答

    我的运动有问题: Cache DM。缓存大小 - 64kB,单行大小 - 64B。打开后,。处理器已经阅读不会忽略: 0x00000 0x0003C 0x0013C 0xF0038 0x00015 0x00130 我不得不说,当会错过,什么时候会被击中。我发现了一些类似的练习例子,但我不知道如何处理十六进制的地址。我知道:Cache address = Memory Address **mod**

    2热度

    1回答

    我正在探索MONITOR指令(或等效本征,_mm_monitor)的用法。虽然我发现描述它们的文献,但我找不到有关如何使用它的具体示例/样本。 任何人都可以共享一个如何使用这个指令/内在的驱动程序的例子吗?本质上,我想用它来观看记忆范围。

    2热度

    1回答

    我试图使用Amdahl定律来计算的代码加速和下面是我的CPU规格: Amdahl定律: - Speedup = 1/1-p+ (p/n) ,其中n =处理器数量。 根据我的规格,它说核= 4,而逻辑处理器= 8 我应该公式中的number of processors使用?

    -1热度

    1回答

    typedef struct { int a[2]; double d; }struct_t; double fun(int i) { volatile struct_t s; s.d = 3.14; s.a[i] = 1073741824; return s.d; } 我遇到了这个例子,同时了解CSAPP过程。解释如下所

    2热度

    1回答

    编辑:这是不同于Android NDK的字节码,因为该问题询问如何找到字节序,而不是有多少设备是大/小端。国防部,请不要将其标记为伪装。 只是好奇,是否值得支持大/小端Android手机?我在我的应用程序中有一些代码敏感的代码,对于那些很好奇的代码,它包括将long序列化为字节流。我认为我的手机是big-endian,因为ByteBuffer.getLong()正在以我已写入的字节流的大端格式阅读

    -1热度

    1回答

    我知道一些算法和行内汇编可以取决于平台。例如,如果你编写了一个编译器,编译器的源代码是否会依赖于平台,并且如果我编译了你的编译器,我必须使用与我的体系结构相对应的相同版本的源代码?

    0热度

    1回答

    我正在构建我的Xamarin.Android项目,我选择了AOT汇编,这使我的.apk膨胀到165mb。 为了让我的apk文件大小下来我在看的目标架构,目前我的目标: armeabi,armeabi-V7,X86,arm64-V8A 但我没有了解这些架构如何与现代设备相对应。 我已阅读Android CPU Architectures和它说: Xamarin.Android默认为armeabi-V