stream编译出错信息: [root@localhost stream]# make gcc -O2 -DSTREAM_ARRAY_SIZE=1000000000 stream.c -o stream /tmp/ccCGEF5F.o: In function `checkSTREAMresults’: stream.c:(.text+0x144): relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against `.bss’ stream.c:(.text+0x148): relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against `.bss’ /tmp/ccCGEF5F.o: In function `main’: stream.c:(.text.startup+0x20): relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against `.bss’ stream.c:(.text.startup+0x3c): relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against `.bss’ stream.c:(.text.startup+0x3ec): relocation truncated to fit: […]
READ MORE »[转]CPU微架构实现基础
来源:https://lagunita.stanford.edu/c4x/Engineering/CS316/ 下载:Processor Microarchitecture An Implementation Perspective Contents 1. Introduction ………………………………………………………………………………………….1 1.1 Classification of Microarchitectures ………………………………………………………….. 1 1.1.1 Pipelines/Nonpipelined Processors …………………………………………………. 1 1.1.2 In-Order/Out-of-Order Processors ………………………………………………… 2 1.1.3 Scalar/Superscalar Processors ………………………………………………………… 2 1.1.4 Vector Processors …………………………………………………………………………. 3 1.1.5 Multicore Processors …………………………………………………………………….. 3 1.1.6 Multithreaded Processors ……………………………………………………………… 3 1.2 Classification of Market Segments ……………………………………………………………. 3 1.3 Overview […]
READ MORE »[转]DDR4内存基础
HP提供的DDR4 For Dummies,非常好的DDR4入门资料。 点击下载:DDR4 For Dummies
READ MORE »Linux内核文件Cache机制
在我们使用Linux时,使用free命令观察系统内存使用情况,如下面空间内存为66053100k。可能很多同事都遇到过一个问题,发现随着时间的推移,内存的free越来越小,而cached越来越大;于是就以为是不是自己的程序存在内存泄漏,或者是硬件、操作系统出了问题?显然,从这里看不出用户程序是否有内存泄漏,也不是内核有Bug或硬件有问题。原因是内核的文件Cache机制。实际上文件Cache的实现是页面Cache,本文后续都以页面Cache来描述。
READ MORE »Linux内核I/O调度层
I/O调度器的工作是管理块设备的请求队列。它决定队列中的请求排列顺序及在什么时候派发请求到块设备。这样做有利于减少磁盘寻址时间,从而提高全局吞吐量。注意“全局”的的含义,I/O调度器可能为了提高系统整体性能,而对某些请求不公。 I/O调度器通过两种方法减少磁盘寻址时间:合并(merging)与排序 (sorting)。合并指将两个或多个请求结合成一个新请求。考虑一下这种情况,文件系统提交请求到请求队列—从文件中读取一个数据区,如果这时队列中已经存在一个请求,它访问的磁盘扇区和当前请求访问的磁盘扇区相邻,那么这两个请求就可以合并为一个对单个或多个相邻磁盘扇区操作的新请求。通过合并请求,I/O调度器将多次请求的开销压缩为一次请求的开销。更重要的是,请求合并后只需要传递给磁盘一条寻址命令,就可以访问到请求合并前必须多次寻址才能访问完的磁盘区域了,因此合并请求显然能减少系统开销和磁盘寻址次数。 SSD是否经过I/O调度器?当块设备请求队列拥塞时,内核如何处理? 完整文档下载:Linux内核I/O调度层
READ MORE »服务器单根内存理论读写带宽计算方法
在配置服务器内存时,遇到不同频率及型号的内存条。对于单根DDR2/DDR3/DDR4内存条的理论读写带宽,可以用以下公式计算: 理论读写带宽 = 频率*位宽/8bits 如: DDR3-1600的读写带宽为1600Mbit/s*64bit/8bit = 12800MB/s,通常标注为PC3-12800 DDR3-1333的读写带宽为1333Mbit/s*64bit/8bit = 10664MB/s,通常标注为PC3-10600 DDR4-2133的读写带宽为2133Mbit/s*64bit/8bit = 17064MB/s,通常标注为PC4-2133
READ MORE »FlashCache性能提升评估
使用FlashCache后,I/O性能提升评估可以用以下公式: f(ssd):SSD IOPS f(hdd): HDD IOPS α :Cache命中率 f(flashcache):FlashCache IOPS 说明: 1、Cache命中率α越大,FlashCache IOPS越大; 2、SSD IOPS性能f(ssd)越大,FlashCache IOPS越大; 3、相比SSD IOPS,Cache命中率α越对FlashCache性能影响最大。
READ MORE »