Single Linked list
首先我們要使用 main.c 來實作一個簡單的 linked list。這個 linked list 會包含以下功能:
插入節點到 linked list 的尾端。
列印 linked list 的內容。
釋放 linked list 的記憶體。
其中,所有 linked list 的實作會位於 list.c 和 list.h 中。
我們將使用 C 語言來實作這個 linked list。這個 linked list 將會包含一個 dummy node,這樣可以簡化插入和刪除節點的操作。
先建立以下檔案:
T-MAC 論文筆記
paper: T-MAC: CPU Renaissance via Table Lookup for Low-Bit LLM Deployment on Edge
研究背景與問題核心在不依賴 GPU 的情況下高效推理 e.g. 手機晶片
過去:權重量化 e.g. 4-bit、2-bit、甚至 1-bit問題:推理時需反量化(dequantization)低位元權重轉回高精度格式(如 int8、float16)以進行矩陣乘法,會抵銷原本低位元帶來的加速與節能效果。
硬體不支援混合精度運算
硬體多為固定對稱精度,無法直接處理這類「低權重、高激活」的不對稱計算。
T-MAC 的核心創新與貢獻
🧠 Why Performance Analysis Matters
Every program consumes CPU cycles, memory, and sometimes I/O bandwidth. But which part of your program is slow? Why is it slow? That’s what performance profiling helps you discover.
From startups to hyperscale infrastructure, knowing where your code wastes time is the first step to making it faster, cheaper, and more reliable.
In this article series, we’ll start from basic Linux command-line tools and move step-by-step toward advanced techniques like perf, uftrace, and flamegraphs.
🚀 What You'll Learn
How to think about performance from first principles
Basic performance metrics: wall time, CPU time, IPC, cache misses
alanhc changed 2 months agoView mode Like Bookmark