C++ Template

Metaprogramming 就是写一段程序,这段程序可以生成或者修改一段程序,Macro and Template 都是实现 Metaprogramming 的手段。

特化(specialization)和部分特化(Partial Specialization)或者说叫偏特化,都是为了让编译器明确执行路径或者说接口选择

Attention

Bottleneck of Attention in Different Tasks

这个分类并不是完整的,可能只是这几类是 Attention 机制比较场景的应用场景。

Pytorch

在 Pytorch 语义下,目前理解其中的关键就在于待训练参数计算逻辑两点,并且这两点共同构成了各种封装好的模块

troch.nn.Linear 为例,可以通过 nn.Parameter 手动创建参数,然后自行创建计算逻辑。但是由于线性计算的需求较为普遍,因此 Pytorch 也直接提供了封装好的线性层模块,按理说这种封装的本质就是在内部实现上用 nn.Parameter 定义权重(weight)和偏置(bias,可选),同时封装“输入特征与权重矩阵相乘 + 加偏置” 的计算逻辑(有待确定)。

CUTLASS

Copy

基础拷贝

4 个线程负责将 4 个数据从 global memory 拷贝至 shared memory

From Disk to Operating System

硬盘分类

接口类型全称协议类型传输速率范围连接方式主要特点典型应用场景
SATASerial ATAAHCI/NVMe1.5-6 Gbps7针数据+15针电源兼容性强,成本低,支持热插拔家用PC、普通服务器
mSATAMini-SATAAHCI1.5-6 Gbps52针接口SATA的迷你版本,无电源接口超极本、工业设备
SATAeSATA ExpressAHCI/NVMe8-16 Gbps2x SATA+PCIe兼容SATA和PCIe协议早期高性能存储过渡方案
M.2NGFF (Next Gen FF)SATA/NVMe6-32 GbpsM型/B型/M+B型键支持PCIe通道,体积小巧,可选SATA或NVMe协议笔记本、高端PC、工作站
U.2SFF-8639NVMe32-64 Gbps68针接口支持热插拔,兼容2.5寸硬盘形态企业级存储、数据中心
PCIePCI ExpressNVMe16-128 GbpsPCIe插槽直接连接CPU,超低延迟高性能计算、显卡扩展存储
SASSerial Attached SCSISCSI6-24 Gbps29针接口全双工,支持多路径访问,高可靠性企业级服务器、存储阵列
FCFibre ChannelSCSI/FCP16-128 Gbps光纤接口超长距离传输(最远10km),支持SAN架构大型数据中心、云存储
USBUniversal Serial BusUAS/BOT0.48-40 GbpsType-A/C等即插即用,广泛兼容外置存储、移动设备
Thunderbolt-NVMe over PCIe40-120 GbpsType-C接口支持菊花链拓扑,可传输视频和数据创意工作站、外置SSD
NVMe-oFNVMe over FabricsRDMA/FC/TCP25-200 Gbps多种网络介质支持远程访问NVMe设备分布式存储、超融合架构
IDE/PATAParallel ATAATA16-133 MBps40/80针排线已淘汰,并行传输2000年前的老旧电脑

上述表格总结的各类接口,还存在着各种类型的协议

0%