區域
每則報價都會標明它的機器實際擺在哪裡。你會在報價卡片上看到一面國旗和一組代碼,例如 US-CA 或 FI-HEL,而且它會跟著執行個體走過部署,一路出現在執行個體頁面上。
區域告訴你什麼
區域就是一個地點:一個國家,以及該國境內的一個站點。它是關於硬體的事實,不是服務等級。位於不同區域但 GPU 型號相同的兩則報價,給你的是同樣的 GPU。
它會改變的:
| 面向 | 區域如何影響它 |
|---|---|
| 互動延遲 | 你與機器之間的來回時間。遙遠的區域會讓 shell 用起來遲鈍、JupyterLab 的儲存格反應變慢,即使運算本身跑的速度一樣。 |
| 資料傳輸 | 把資料集傳上去或把檢查點抓下來,都要跨越那段距離。離得越遠,複製越久。 |
| 你的資料放在哪裡 | 在執行個體存在期間,你的硬碟就位於那個國家的那台機器上。 |
它不會改變的:GPU 執行你的工作有多快。資料一旦到了機器上,在芬蘭訓練一小時就等於在加州訓練一小時。
實用原則:當你會在終端機裡打字或搬移大檔案時,挑一個近的區域;至於那種丟出去就放著跑一整晚的工作,就別再糾結了。
用白話說資料位置
你寫入執行個體硬碟的所有東西 — 資料集、檢查點、你貼進 shell 的憑證 — 都會存在那個區域的那台實體機器上,直到執行個體被銷毀為止。銷毀會刪除硬碟。
如果你對資料可以在哪裡被處理有規範,區域欄位就是你能用的控制項。請把它讀成硬體位置的陳述,而不是合規認證。
依區域篩選
市集的區域篩選器依國家縮小範圍。它的選項清單是依當下目錄中的報價建立的,因此它顯示的是現在有東西可租的國家,而不是 Superheat 曾經營運過的每一個地點。要縮小到單一站點,請把區域代碼輸入搜尋框,搜尋會比對 GPU 型號、主機名稱與區域。
透過 API,GET /v1/offers 上的 region 參數可接受區域代碼或國家代碼,所以你想多精確或多寬鬆都可以:
# every offer in Finland
curl -s "$SUPERHEAT_API/v1/offers?region=FI&sort=price_asc" \
-H "Authorization: Bearer $SUPERHEAT_KEY"
# only the Helsinki site
curl -s "$SUPERHEAT_API/v1/offers?region=FI-HEL" \
-H "Authorization: Bearer $SUPERHEAT_KEY"
篩選不等於保證
選擇區域只是縮小你看得到的報價範圍。它不會保留任何東西,也不會讓容量憑空出現。
- 如果那個區域裡沒有東西符合你的其他篩選條件,頁面就是空的。解法是放寬篩選條件,而不是等待 — 這裡沒有排隊,也沒有容量申請。
- 可租用情況會變動。今天早上還有四則空著的 4× 報價的區域,到了下午可能一則都不剩,因為別人把它們租走了。
- 這個選擇只適用於單次部署。銷毀那個執行個體再重新部署,你就會落在你當下所選的地方。執行個體不會遷移,也沒有任何設定可以把未來的部署固定在某個區域。
- 停止執行個體會保留你原本所在的那台機器,所以它的區域也一併保留。銷毀則會把它釋出。
如果特定區域對你的工作很重要,在依此做規劃之前先去市集確認;而當你打算回到同一台機器時,讓執行個體停在停止狀態,而不是銷毀它。