我们简单运行一下 time 命令。它会返回三个值,第一个是 real time,也就是我们说的 Wall Clock Time,也就是运行程序整个过程中流逝掉的时间;第二个是 user time,也就是 CPU 在运行你的程序,在用户态运行指令的时间;第三个是 sys time,是 CPU 在运行你的程序,在操作系统内核里运行指令的时间。而程序实际花费的 CPU 执行时间(CPU Time),就是 user time 加上 sys time。
来自:03 | 通过你的CPU主频,我们来谈谈“性能”究竟是什么?
22 人划过
针对汇编代码,我们可以再用汇编器(Assembler)翻译成机器码(Machine Code)。这些机器码由“0”和“1”组成的机器语言表示。这一条条机器码,就是一条条的计算机指令。
来自:05 | 计算机指令:让我们试试用纸带编程
15 人划过
而任何两个实际我们想要传输的数据,海明距离都至少要是 3。你可能会问了,为什么不能是 2 呢?因为如果是 2 的话,那么就会有一个出错的数,到两个正确的数据的海明距离都是 1。当我们看到这个出错的数的时候,我们就不知道究竟应该纠正到那一个数了。
来自:50 | 数据完整性(下):如何还原犯罪现场?
14 人划过
其实就是计算机体系结构中 RISC 和 CISC 的经典历史路线之争。
来自:14 | 乘法器:如何像搭乐高一样搭电路(下)?
11 人划过
虽然我们不能通过流水线,来减少单条指令执行的“延时”这个性能指标,但是,通过同时在执行多条指令的不同阶段,我们提升了 CPU 的“吞吐率”。在外部看来,我们的 CPU 好像是“一心多用”,在同一时间,同时执行 5 条不同指令的不同阶段。在 CPU 内部,其实它就像生产线一样,不同分工的组件不断处理上游传递下来的内容,而不需要等待单件商品生产完成之后,再启动下一件商品的生产过程。
来自:20 | 面向流水线的指令设计(上):一心多用的现代CPU
11 人划过
SSD 的读取和写入的基本单位,不是一个比特(bit)或者一个字节(byte),而是一个页(Page)。SSD 的擦除单位就更夸张了,我们不仅不能按照比特或者字节来擦除,连按照页来擦除都不行,我们必须按照块来擦除。
来自:46 | SSD硬盘(上):如何完成性能优化的KPI?
10 人划过
大部分的输入输出设备,都有两个组成部分。第一个是它的接口(Interface),第二个才是实际的 I/O 设备(Actual I/O Device)
来自:43 | 输入输出设备:我们并不是只能用灯泡显示“0”和“1”
9 人划过
这个“关闭”了的服务器,就和一个被关掉的物理服务器一样,它不会再占用实际的服务器资源。但是,当我们重新打开这个虚拟服务器的时候,里面的数据和应用都在,不需要再重新安装一次。
来自:34 | 理解虚拟机:你在云上拿到的计算机是什么样的?
4 人划过
因为低延时、高并发、写少读多的+DMP+的+KV+数据库
来自:52 | 设计大型DMP系统(上):MongoDB并不是什么灵丹妙药
4 人划过
一方面,GPU 是一个可以进行“通用计算”的框架,我们可以通过编程,在 GPU 上实现不同的算法。另一方面,现在的深度学习计算,都是超大的向量和矩阵,海量的训练样本的计算。整个计算过程中,没有复杂的逻辑和分支,非常适合 GPU 这样并行、计算能力强的架构。
来自:31 | GPU(下):为什么深度学习需要使用GPU?
4 人划过
*精彩内容为该课程各文章中划线次数最多的内容
编辑推荐
讲师的其他课程
包含这门课的学习路径
计算机基础知识
12门课程 96.5w人学习