ANDREW/
選單工程實驗
中文EN

用一碗麵,玩懂「快」和「做完」

掌聲先等等。

麵出得快,就算做好了嗎?

一位看碼表就想鼓掌,一位還要看看碗裡。

1 選做法2 猜判決3 看結果
怎麼玩?
  1. 選一個情境,或調整三個滑桿;先猜品管會放行還是攔下。
  2. 按「開始出餐」,看碼表與品管的反應。可暫停、繼續或直接看結果。
  3. 揭曉後只改「品管怎麼驗」,重看同一碗:餐點與耗時不會變。改做法或暖機則會清除舊結果。

先玩「空碗也能過?」:分開看合格章與客人的訂單。工程原理與文章實測可在下方展開。

1. 今天這一碗,怎麼做?

生活比喻 · 示意遊戲

客人點的是

照食譜做好的完整一碗。

碗一樣大,不代表裡面的麵也一樣。

先讓設備運轉,再開始計時。設備熱了,空碗還是空碗。

2. 先猜:品管會讓它過關嗎?

猜的是「品管會怎麼判」,不是「你覺得這碗好不好」。

3. 出餐!看看誰先鼓掌

尚未出餐

先選一個預測,再開始。

廚師

準備出餐

備料煮麵裝碗

準備好了嗎?

只看碼表的人

等這一碗出來

「我先看碼表,還沒看碗裡裝什麼。」

品管

等這一碗出來

「先看你要我怎麼驗。」

客人的訂單有做到嗎?

還沒揭曉

一碗麵、一張合格章。先別急著把它們當成同一件事。

這是示意遊戲,快慢由情境設定;不是餐廳實測,也不會真的煮麵。

想知道背後的工程原理?
空碗、碼表與寫著 SHAPE CHECK PASS 的檢查卡;圖上寫著 Hold the applause. Where are the noodles?
碗的形狀通過檢查,不代表客人點的麵已經做好。這是教學比喻,並非真實推論量測。

這碗麵比喻程式工作:示意64→32→10流程、450筆預設輸出。動畫不載入模型權重、不執行C BLAS或ONNX Runtime;以下的倍率、誤差與暖機分布是教學設定,與文章實測分開。

示意速度倍率

—

示意資料播放進度

0 / 450

示意耗時 · 9次中位數

—

累積最大絕對誤差

—

內容有沒有照約定完成?

尚未揭曉

64 → 32 → 10 示意管道 ⚡ 偷工減料短路跳過! In: 64 隱藏層 32 (ReLU) Out: 10

完整工序示意

同一份輸出,曲線與裁判一起看

誤差越低,越接近原食譜。黃線是每筆示意誤差,藍線是累積最大值;紅線是品管允許的差異,灰線是本關原本答應的標準。

黃:每筆誤差藍:累積最大紅虛線:品管放行線灰虛線:原本答應的標準

尚無本輪輸出。

本關規則與測量界線
  • 本關約定:形狀正確,且相對預設參考的最大絕對誤差不超過 1e-4。這是遊戲規則,不是通用容差建議;實務上 logits 與機率應各自定義要求。
  • 正常情境含本關允許的微小差異。預設故障會改變輸出;此處判斷的是這組已知情境,不代表任何改寫、少算或故障都一定改變結果。
  • 只看形狀的檢查不檢查數值。通過本關檢查不等於證明整個程式正確。
  • 改工序或暖機會清除本輪、重新出餐;完成後可只改容差,重新判讀完全相同的輸出與耗時。進行中及暫停時先鎖定檢查方式,避免混合判定。
  • 暖機在這個教學規則裡只改變速度因子;3輪後不再額外加速,不宣稱真實環境必然如此。示意耗時不含暖機成本;動畫秒數也不是推論延遲。
  • 1.85倍、3.2倍、8.5倍與誤差均為情境設定,不是 tiny-infer-lab 故障實測;沒有模擬準確率、真實 RAM 或漏抓機率。

碼表彩排:同一種工序,多計時幾次

每點代表一次示意計時(每排9次,點可能重疊)。越靠左越快;越聚在一起,代表這組設定的時間波動越小。

沒先練習

這是新增的教學分布,不是文章量測。表上的示意耗時採目前9次的中位數,不含前面的暖機成本;練再多次,空碗也不會長出湯。

文章實測參考 · 與上方遊戲分開

以下是文章報告的結果,不隨滑桿改變。

實測:整個程式用了多少記憶體?

固定文章數據,不隨上方操作改變。柱子越短,代表程序使用的記憶體較少。

C BLAS 38.9 MiB
ONNX Runtime 60.4 MiB

同一尺度、從零開始。batch size 450、暖機後程序 RSS 中位數;包含 Python、NumPy 等共同環境,不是模型單獨大小。

450筆保留資料

六個後端分類結果一致,準確率97.33%(438/450);機率輸出通過獨立float64參考檢查。

暖機後程序 RSS

C BLAS:38.9 MiB
ONNX Runtime:60.4 MiB

batch size 450、中位數;包含Python、NumPy等共同環境,不是模型本身RAM。

批次吞吐 · 每筆攤提

C BLAS:約0.142 μs
ONNX Runtime:約0.059 μs

Apple M5 Pro、batch size 450、運算執行緒1。含Python API、輸入檢查、機率輸出與結果收集;不含載入、暖機、計時外正確性檢查。不是單筆請求延遲。

閱讀文章與完整測量範圍 →

分享這個實驗