AI 與雲端系統
如何運作?

陳耘志 · 清大資工助理教授

新竹高中新竹高中 2012–2014

國立臺灣大學臺大資工 2014–2023

QR code: sys-nthu.tw

照片:CERN 資料中心(Florian Hirzinger, CC BY-SA 3.0)

電腦科學與資訊工程

作業系統 資料庫 計算機網路 計算機結構 演算法 資訊安全 平行計算 AI

資工系≠訓練程式設計師

而是解決大型工程問題的
科學家與工程師

32萬

座位

10分鐘

賣完

五月天 2025 台北大巨蛋 8 場 · 照片:Sinsyuan, CC BY-SA 4.0

ChatGPT
幫我寫一個賣票網站

好的!這是一個簡單的賣票網站:

@app.post("/buy")
def buy():
    left = db.get("left")     # 查票
    if left <= 0:
        return "售完"
    db.set("left", left - 1)  # 扣票
    return "搶到了!"

…還有座位圖、付款頁面、會員登入

20 分鐘寫好

能給 20 萬人
同時用嗎?

可以不行

今天的四關

1搶票 2影片 3LINE 4AI

幫我寫一個

1人AI 寫得出來 ✓

1,000人

20萬人

全世界撐得住?

第 1 關

搶票

ChatGPT
幫我寫一個賣票網站
AI 寫得出來 ✓

20 萬人同時搶?

最後一張票

五月天
大巨蛋

剩餘1張

立即購買

小明

兩個人同時按下

五月天
大巨蛋

剩餘1張

立即購買

小華

正常 vs 超賣

正常

時間小明小華剩餘
1查:剩 11
2扣:搶到了0
3查:剩 0
→ 售完
0

超賣

時間小明小華剩餘
1查:剩 11
2查:剩 11
3扣:搶到了0
4扣:搶到了−1
一個座位,賣給兩個人

所有可能的順序

時間 1時間 2時間 3時間 4結果
小明 查小明 扣小華 查小華 扣正常
小華 查小華 扣小明 查小明 扣正常
小明 查小華 查小明 扣小華 扣超賣
小明 查小華 查小華 扣小明 扣超賣
小華 查小明 查小明 扣小華 扣超賣
小華 查小明 查小華 扣小明 扣超賣

超賣的機率

4/6

= 2/3

查和扣綁在一起

一個動作,不准插隊
① 查票
② 扣票

剩餘 > 0 才扣

資料庫課的「交易」

每台各記一份

小明→
伺服器 1剩 1
→搶到了
小華→
伺服器 2剩 1
→搶到了
小美→
伺服器 3剩 1
→搶到了
小傑→
伺服器 4剩 1
→搶到了
1 張票
賣了 4 次

共用一個資料庫

伺服器 1
伺服器 2
伺服器 3
伺服器 4
資料庫剩餘 1大家都在搶這裡

「為了避免門票超賣,
……只能使用
單一臺資料庫」

拓元售票,2015

上鎖工程技巧:上鎖

時間小明小華剩餘
1拿到鎖等鎖…1
2查:剩 1等鎖…1
3扣:搶到了等鎖…0
4放開鎖拿到鎖0
5查:剩 0
→ 售完
0

一把鎖 vs 分區上鎖工程技巧:分區

…20 萬人

整座大巨蛋一把鎖

分 100 區,各一把

同時能處理20 萬人處理完
一把鎖1 人20 萬 × 5 毫秒 = 17 分鐘
分 100 區100 人17 分鐘 ÷ 100 ≈ 10 秒

每次「查+扣」5 毫秒為假設數字

搶到了,還沒付款

2015 張惠妹20 萬人搶 12 萬張,12 分鐘賣完
2026 高鐵春節票1 小時 70 萬張
2015 張惠妹每秒
拓元賣票167 張
銀行刷卡30 筆
卡住137 筆

12 分鐘後

≈ 10萬筆

在排隊付款

iThome 2015-03-17:20 萬人搶 12 萬張,12 分鐘售完;銀行收單每秒約 30 筆

轉圈圈,
再按一次?

1前往伺服器途中掉了
2已抵達伺服器,處理中
3已完成處理,
回程途中掉了

沒有編號:扣兩次

手機
伺服器
伺服器帳本
買 1 張
扣款 第 1 次
成功✗
轉圈圈…再按一次
買 1 張
扣款 第 2 次

有編號:只扣一次工程技巧:重送不重複

手機
伺服器
伺服器帳本
按下時,先產生編號 #A7731
買 1 張 #A7731
#A7731 扣款
成功✗
再送 #A7731
#A7731 做過了,不扣
成功

第 1 關 結算

作業系統 資料庫 計算機網路 計算機結構 演算法 資訊安全 平行計算 AI

第 2 關

線上影片

ChatGPT
幫我寫一個影片平台
AI 寫得出來 ✓

每分鐘 500 小時影片?

臺大線上教學影片平台2018

老師→
上傳影片每支都要處理很久
學生→
看影片要馬上播,不能卡
→
同一批
機器

期中考前

0250 M500 M750 M1.0 G第 1 週第 5 週第 9 週第 13 週第 17 週期中考期末考學生看影片老師上傳

一學期(每天平均)

0300 M600 M900 M1.2 G000306091215182124對外網路上限 1 Gbps學生看影片

期中考前一天(每 5 分鐘)

示意圖,畫法仿 MRTG 流量圖

網路流量

平常中午 臺大 2020 年 3 月・真實紀錄 考前一晚 估算 500 Mbps 300–500 人 每人 ≈ 1–1.7 Mbps 3 Gbps 2,000 人 × 1.5 Mbps 學校對外網路 1 Gbps

Mbps = 每秒百萬位元;Gbps = 每秒十億位元

台大 108-2 教務會議簡報(2020-03);iThome 2020-03-24

優化熱門影片工程技巧:快取

影片,依觀看次數排序 →最熱門放在記憶體10% 的影片→ 80% 的觀看90% 的影片 → 20% 的觀看(從硬碟讀)

考前那一支 ≈ 675 MB,整支放進記憶體

Cha et al., “I Tube, You Tube, Everybody Tubes”, IMC 2007:前 10% 熱門影片約佔 80% 觀看;圖為示意

臺灣人常看的影片放在臺灣附近又是它:快取

跨太平洋,約 1 萬公里Google 資料中心(美國)東京台北香港你家
70–90% 的流量不用跨太平洋 全世界網路流量約 2/3 是影片

地圖:Wikimedia Commons(CC0);Google Peering:Google Global Cache;Sandvine 2023。節點位置為示意

畫質選單

▶⚙

老師上傳 1 個檔案

↓

平台做出 6 種畫質

這一步叫「轉檔」

每分鐘 500 小時2021

Google 資料中心,美國愛荷華州

每秒進來的影片30,000 秒
用一般處理器轉檔48 萬到 220 萬顆核心
Google 自己做的
轉檔晶片
快 99 倍
→ 約 220 台機器
2025:每秒 230 支影片

YouTube Blog 2021-04-21、2025-04-23;Google ASPLOS 2021(Argos VCU)。照片:Chad Davis, CC BY 2.0

對抗 AI 內容農場

每秒 30,000 秒影片要幾張顯示卡
每秒抽 1 格來看300
每一格都看9,000

還要抓什麼?

版權? 詐騙? 兒少安全? ……

縮圖:YouTube EMxGuJS4Wi0。假設一張顯示卡每秒判斷 100 張圖

1 小時影片的運算

≈ 16

核心・小時

1 核心・小時 = 一顆核心跑一小時

一台約 100 核心,整台跑 ≈ 10 分鐘

= 100 核心 × 1/6 小時 ≈ 16

Google ASPLOS 2021(Argos 論文)Table 1:雙路 Skylake 伺服器 H.264 714 Mpix/s

週日晚上

200 位老師 × 1.5 小時

= 300 小時影片

× 16 = 4,800 核心・小時

8 台 × 32 核

= 每小時做 256

01,0002,0003,0004,000週日 20:0024:00週一 08:0020:00上課3,776週一 14:45 才轉完還沒轉完(核心・小時)

假設數字

四個辦法

辦法代價
多買機器一週只忙 4 小時,其他時間閒著
先出 360p,高畫質晚點補總工作量沒變,只是先能看
明天早上有課的先做要知道每支影片什麼時候要用
借播放影片的機器來用?

混在一起

▶

同一批機器

你
播放(一下就好)轉檔(要好幾分鐘)

越滿越塞

忙 50%

不到 1 人

忙 80%

約 3 人

忙 90%

約 8 人

忙 99%

約 100 人

平常的播放機器

≈ 45%

借一半給轉檔

→ 90%

一條隊伍 vs 兩條工程技巧:隔離

混在一起

分開

▶

同一批機器

▶

播放機器

轉檔機器

明早上課前做完就好

你

幾百萬台工程技巧:差別待遇

播放轉檔空著,留給尖峰

分開

10 台

混在一起

8 台

分開可預測多 20–30% 機器
混在一起省錢比較難預測每台偶爾被拖慢:1%

Borg(EuroSys 2015)§5.1:分開需多 20–30% 機器;Google ASPLOS 2021。圖中台數為示意

大數法則

✗✗✗✗✓✗✓✓✗✗✗✗✗✗✗✓✓✓✗✓

1 台機器:1% 會很慢

一次搜尋,同時問 100 台

一列 = 一次搜尋 一格 = 一台機器

每台只有 1% 會慢
→ 63% 的搜尋被拖慢

機率很小 × 次數很多 = 一定會發生

第 2 關 結算

作業系統 資料庫 計算機網路 計算機結構 演算法 資訊安全 平行計算 AI

第 3 關

LINE

ChatGPT
幫我寫一個 LINE
AI 寫得出來 ✓

2,200 萬人、跨年零點?

從 ChatGPT 到 2,200 萬人

ChatGPT
請幫我寫一個 LINE

好的!這是一個聊天程式:

登入、好友、群組、貼圖…

→

LINE 第一版

預計 100 萬人

3 台機器存資料

2011 年 6 月
4 個月後就重新設計

→

2,200 萬人

台灣 94.5%

LINE 工程部落格 2012-04-25;LY Corporation 官方(2026-03-31 台灣月活躍用戶)

台灣每天 10 億則

10 億 ÷ 86,400 秒

≈ 每秒 11,600 則

每人每天 ≈ 45 則

LINE 台灣 14 週年公布(2025-06):每日訊息超過 10 億則

一直問 vs 保持連線工程技巧:有事才推

每秒問一次

有新訊息嗎?沒有
有新訊息嗎?沒有
有新訊息嗎?沒有

每秒 700 萬次

vs

保持連線

線一直接著

有訊息,伺服器才推過來

假設同時在線 700 萬支手機

一台機器撐幾條連線

10 萬條連線

一台連線機器

→

台灣同時在線 700 萬 ÷ 10 萬 ≈ 70 台

LINE 工程師 Yuto Kawamura 2017 演講投影片(一台 10 萬條以上);同時在線 700 萬為假設

跨年那 10 分鐘

1,100 萬人 × 5 則 ÷ 600 秒

平常
1.2 萬/秒
跨年
9.2 萬/秒
平常的 8 倍

假設一半的人在 10 分鐘內各傳 5 則;LINE 官方未公開跨年每秒訊息數

工程技巧:非同步
新竹團購群(500)

團主

🌸彰化大元麻糬🌸
越吃越涮嘴的經典小點心❤️
預計10/21到貨
已讀 12
晚上 8:05
+1

等 499 人都收到 同步

有人手機沒電、有人在捷運上

✗ 你的手機一直轉圈圈

存好一份就算送出 非同步

存 1 份 ≈ 0.2 毫秒 ✓

499 份排隊,背後慢慢送

沒上線的人,上線再拿

LINE 工程部落格 2012(送訊息的排隊放在記憶體資料庫);RedisConf 2018〈Redis at LINE〉(每次存取 0.1–0.2 毫秒)

2019 元旦零點

新年快樂零點那一刻

→

存進收件匣訊息:一則沒掉
推播通知排隊推播:塞滿,掉了
之後:通知依用途拆成好幾條隊伍

LINE 工程部落格〈How LINE messaging servers prepare for New Year's traffic〉2020-04-14

團購群的「已讀」工程技巧:合併回報

新竹團購群(500)
愛文芒果到貨囉!
已讀 37
下午 9:41
+1 兩箱

傳 1 則 → 送 499 次

一晚 200 則,每則都回報「已讀」

200 × 499 ≈ 10 萬次回報

只回報「我讀到 #1050」

→ 每人 1 次,共 499 次

LINE 群組上限 500 人;LINE 客戶端「已讀到第幾則」回報

照手機時間排序

小明、小華
拉麵!
要吃什麼?
真實時間手機時鐘手機標的時間
小明問10:00:00快 30 秒10:00:30
小華答10:00:05慢 10 秒09:59:55

不靠時鐘,靠編號

#1#2#3#4#5#6
聊天室的伺服器發號碼照號碼排,不會亂
收到 #5 → 下一則從 #6 開始沒人發號碼也行・Lamport,1978

Lamport, “Time, Clocks, and the Ordering of Events in a Distributed System”, CACM 1978(2013 年圖靈獎);Discord 工程部落格 2017

目前沒網路又是它:重送不重複

小華
!我到了
重新傳送 | 刪除
#M1050→收到 ✓,回覆掉了
#M1050→收過了,丟掉

同一招見搶票訂單編號

端對端加密

連 LINE 公司都打不開

伺服器不能幫你搜尋內容 不能看內容擋詐騙 換手機要靠備份 500 人群組有人退出 → 新鑰匙發 499 份

LINE Letter Sealing 加密白皮書 v2.2(2025-12)

第 3 關 結算

作業系統 資料庫 計算機網路 計算機結構 演算法 資訊安全 平行計算 AI

第 4 關

AI 本身

ChatGPT
幫我寫一個 ChatGPT
AI 寫得出來 ✓

每週幾億人來問?

一個字一個字

ChatGPT
考前一晚,影片為什麼會卡?
因為兩千個人同時在看,學校對外的網路只有1Gbps,管子塞滿了……
① 讀題整段一次讀完prefill
② 作答一次寫一個字decode

寫一個字要多久

NVIDIA H100

模型 700 億個參數 × 2 位元組 = 140 GB

參數 = 模型裡的數字 GB = 十億個位元組

每寫一個字,全部讀一次

讀資料
42 毫秒
計算
0.14 毫秒
差 300 倍:99% 的時間在等資料

1 張卡 ≈ 每秒 24 字,只夠 1 個人

幾億人?

NVIDIA H100 SXM:記憶體頻寬 3.35 TB/s、FP16 約 990 TFLOPS(dense)。照片:极客湾 Geekerwan, CC BY 3.0

一次幫很多人寫batch工程技巧:批次

讀一次模型 42 毫秒

→ 每個人各拿到下一個字

讀 1 次,最多幫約 300 人 實際人數:卡在記憶體大小

讀題 vs 作答又是它:隔離

轉檔 → 讀題

prefill

吃運算

一次做一大批

≈

播放 → 作答

decode

要快

一點一點給

AI 服務也分兩組顯示卡

5,120 條線HBM

同一片矽HBM1,024 條HBM1,024 條HBM1,024 條HBM1,024 條HBM1,024 條運算晶片H100

每疊記憶體 1,024 條

× 5 疊

× 每條每秒 6.5 億位元組

≈ 每秒 3,350 GB

電路板走不下

→ 放在同一片矽上

台積電 CoWoS

NVIDIA H100 SXM:5 疊 HBM3、5,120 條資料線、3.35 TB/s(每條約 5.2 Gb/s;HBM3 規格上限 6.4 Gb/s);圖為示意

新竹的瓶頸

台積電,新竹科學園區

CoWoS 封裝,每月幾片晶圓

晶圓:做晶片的圓形矽片 封裝:把晶片和記憶體接在一起

2025
≈ 7 萬
2026 底
≈ 13–14 萬
NVIDIA 一家訂走一半以上

TrendForce 2026-08(產能估計)。照片:曾成訓, CC BY 2.0

蓋資料中心 vs 蓋公路

AmazonGoogleMetaMicrosoft
美國州際公路蓋了 35 年
5,000–6,000 億美元
四家公司2026 年,一年
7,200–7,500 億美元
台灣政府中央,一年總預算
≈ 1,000 億美元

公路用 50 年,伺服器幾年就要換

各公司 2026 年資本支出指引(財報);FHWA 州際公路總成本,以今天幣值換算約 5,160–6,340 億美元;行政院 115 年度中央政府總預算案歲出 3 兆 350 億元

一櫃 AI 伺服器

約 2.4億台幣

整台都 Made in Taiwan

照片與造價:民視財經(經 Yahoo 新聞)

Meta 一個資料中心耗電量

FacebookInstagramMessengerThreads

5 GW

≈ 5 部核三機組

≈ 台灣尖峰用電 1/8

Meta Hyperion(Louisiana)規劃 5 GW;核三一部機組約 0.95 GW;台灣尖峰負載約 40 GW。插圖為示意

誰在顧這些機器?

SRE

讓服務不會掛的工程師

多半是資工系畢業

鄭筱樺・ Cloud 工程師・加州總部

我的臺大資工同學

第 4 關 結算

作業系統 資料庫 計算機網路 計算機結構 演算法 資訊安全 平行計算 AI

資工系教你的工程技巧

工程技巧出現在大學哪門課
上鎖搶票作業系統、資料庫
分區搶票資料庫
重送不重複搶票LINE資料庫
快取影片計算機結構、網路
隔離影片ChatGPT作業系統
差別待遇影片作業系統
有事才推LINE計算機網路
非同步LINE資料庫
合併回報LINE計算機網路
批次ChatGPT計算機結構

Site Reliability Engineering

讓服務不會掛的工程師

在臺灣徵 SRE

臺北・竹北

Google 臺灣工程師年薪(含股票)
新人約 230 萬
工作幾年約 340 萬
資深約 510 萬

Google Careers 職缺(Software Engineer II/III, Site Reliability Engineering);薪資:Levels.fyi 自行回報中位數,2026-10-18

資工地圖

作業系統12 資料庫13 計算機網路23 計算機結構24 演算法3 資訊安全3 平行計算4 AI24

還在無腦叫 AI 寫程式嗎?

ChatGPT
幫我寫一個賣票網站
@app.post("/buy")
def buy():
    left = db.get("left")     # 查票
    if left <= 0:
        return "售完"
    db.set("left", left - 1)  # 扣票
    return "搶到了!"
查和扣被插隊 重送扣兩次 尖峰時塞爆 規模一變,答案就變 AI 系統又貴又耗電

程式 AI 會寫,系統要你懂

把我問爆

QR code: hchs.sys-nthu.tw

投影片・hchs.sys-nthu.tw

作業系統12 資料庫13 計算機網路23 計算機結構24 演算法3 資訊安全3 平行計算4 AI24
1搶票 2影片 3LINE 4AI