2024-09-22
前情提要第六篇,這篇就是把五篇的重點做個摘錄。
基礎
SSD(solid state drive) 是基於 flash NAND memory 製作的儲存裝置。資料(Bits)儲存在不同種類的 cell 裡,當時有 SLC, MLC, TLC,分別代表一個 cell 裡面可存 1, 2, 3 個 bit(s),並有不同的讀寫時間、壽命等特性。
每個 Cell...
阅读全文
2024-09-22
前情提要作者在介紹了 SSD 內部運作原理後,為何同時 (concurrent) 進行的讀寫行為會互相干涉,並介紹如何更好的 SSD 讀寫手法。此篇也涵蓋了一部分可改善效能的檔案系統最佳化手段。
7 Access Patterns7.1 定義循序及隨機 IO 操作Sequential/循序:一個 IO 操作的 LBA / Logical ...
阅读全文
2024-09-22
前情提要在了解 FTL 之後,這裡將對 TRIM, over-provisioning 作介紹,並探討 clustered block 以及 SSD 不同層級的平行機制。
5 Advanced functionalities5.1 TRIM依照 HDD 的慣例,檔案系統刪除資料時不一定要真的下抹除指令到硬碟去(真的要刪的時候只要直接複寫過去就好了)。造成可能...
阅读全文
2024-09-22
前情提要這篇主要介紹 SSD 的讀寫單位如 page、 block,以及寫入放大 (write amplification) 、 wear leveling 等 SSD 問題及設計。除此之外, Flash Translation Layer (FTL) 及其兩個主要功能 logical block mapping, garbage collection (g...
阅读全文
2024-09-22
本文转载自:https://www.owlfox.org/blog/2019-11-25-coding-for-SSD-part-2/
緣由這篇主要談論 Nand flash 的不同 cell type,基本的 SSD 系統架構,及如何做 SSD 效能評定(Benchmarking)。作者是在 booking.com 上班的軟體工程師。有用過應該就知道這是很...
阅读全文
2024-09-22
本文转载自:https://www.owlfox.org/blog/2019-11-25-coding-for-SSD-part-1/
缘由Emmanuel Goossaert 是booking.com的工程师,他因为想拿SSD 做自己的 key-value store专案的储存方案,开始学习SSD 相关知识。这六篇文是他在2014 年写下,里面很多的参考资...
阅读全文
2024-09-22
最近在项目中需要实现fp16的数据类型做FFN的计算,算子实现的同学反馈误差与x86上得到的golden数据有比较大误差。开始以为是x86侧做数值模拟仿真的问题。后面也实现了对比了一下,发现误差累计确实挺大。
实测结果对比12345678910111213141516171819202122232425int main(){ // Seed ...
阅读全文
2024-09-11
hello load inline这个是torch加载C++扩展的简单demo。代码比较简单
123456789101112131415161718import torchfrom torch.utils.cpp_extension import load_inlinecpp_source = """std::string he...
阅读全文
2024-09-09
Attention是时空力场(LLM只有时,Version存在空间力场),而FFN则是空间结构,并且代表了基于Knowledge的静态高纬字典,也有人用图书馆来比喻。
首先回顾一下transformer block的结构,Attention +FFN,前者中的 kvcache 随着序列的增长占用越来越高,FFN则在权重中占了极大比例。
#At...
阅读全文
2024-08-16
主要记录了论文Who Says Elephants Can’t Run: Bringing Large Scale MoE Models into Cloud Scale Production中关于反量化的快速操作。
背景NN模型通常为了降低RAM、FLASH占用,提高计算吞吐率,会引入量化操作。比如INT8、INT4、INT3等等。如果是weight on...
阅读全文