Function Compute的CPU執行個體和GPU執行個體均支援按量模式和預留模式。按量模式根據請求時間長度計費,可以結合并發度設定提高執行個體的資源使用率。預留模式則是從執行個體啟動完成開始計費,到執行個體釋放為止,可用於解決冷啟動問題。本文為您介紹兩類執行個體的執行個體模式、計費方式及執行個體規格。
執行個體類型
CPU執行個體:Function Compute的基本執行個體。適用於突發流量和計算密集等各種情境。
GPU執行個體:提供Ampere以及Turing架構的GPU執行個體。主要適用於音視頻、AI人工智慧和影像處理等情境。在不同的情境中,將不同的業務負載下沉至GPU硬體加速,從而提升業務處理效率。
重要GPU執行個體僅支援通過容器鏡像方式部署。
使用GPU執行個體過程中,為了確保您的業務正常進行,請加入DingTalk使用者群(DingTalk群號:64970014484),並提供以下資訊。
組織名稱,例如您所在的公司名稱。
您的阿里雲帳號ID。
您使用GPU執行個體的地區,例如華南1(深圳)。
連絡方式,例如您的手機號、郵箱或DingTalk帳號等。
執行個體模式
CPU執行個體和GPU執行個體均支援兩種執行個體模式:按量模式和預留模式。兩種執行個體模式說明如下。
按量模式
基本概念
按量模式是指函數執行個體的分配和釋放完全由Function Compute系統負責。Function Compute會根據函數的調用量自動進行執行個體擴縮容,在調用增加時建立執行個體,在請求減少後銷毀執行個體。整個過程中,通過請求自動觸發執行個體建立。如果執行個體在一段時間內(一般為3~5分鐘)不處理請求,會自動銷毀。首次發起調用時,需要等待執行個體冷啟動。
您的阿里雲帳號(主帳號)在單個地區內預設的按量執行個體上限數為300。如果您需要提高該限制,請加入DingTalk使用者群(DingTalk群號64970014484)申請。
計費方式
在按量模式下,函數執行時間長度的計量從請求執行函數開始,到請求執行完畢結束。按量模式下,同一個執行個體同一時間可以執行一個請求,也可以並發執行多個請求。更多資訊,請參見設定單一實例並發度。
在沒有函數調用請求時不分配執行個體,所以不會產生費用。只有發生函數調用時才會產生費用。關於具體的產品定價和計費,請參見計費概述。
如果您希望提高執行個體資源使用率,建議根據業務對資源的訴求,配置您的執行個體為單一實例多並發。在這種方案下,當多個任務同時在一個執行個體上執行時,CPU或者記憶體將被搶佔式共用,有效提高資源使用率。
單一實例單並發執行時間長度
按量模式下,一個執行個體執行一個請求時,執行時間長度的計量是從請求到達執行個體開始,到請求執行完畢為止。
單一實例多並發執行時間長度
按量模式下,一個執行個體並發執行多個請求時,執行時間長度的計量是從第一個請求到達執行個體開始,到最後一個請求執行完畢為止。並發執行請求時,可以複用資源節省費用。
預留模式
基本概念
預留模式是將函數執行個體的分配和釋放交由您管理,當配置預留函數執行個體後,預留的函數執行個體將會常駐,直到您主動將其釋放。Function Compute會優先將函數調用請求調度至預留的函數執行個體,當函數請求的並發超過預留的函數執行個體處理能力時,超出部分的請求被轉寄至按量模式的執行個體。關於刪除預留模式的執行個體,請參見修改或刪除預留執行個體並發。
如果您希望解決冷啟動問題,預留模式是最佳方案。建議您根據業務資源預算選擇固定數量預留、根據波峰波穀特性選擇指定時間段預留或者按照水位閾值選擇自動調整方案。預留後,執行個體的平均冷啟動時延將明顯降低。
計費方式
活躍狀態執行個體
通常情況下,正在處理請求的執行個體屬於活躍狀態執行個體,而在預留模式下,由於執行個體常駐,如果沒有開啟閑置模式,這些預留執行個體也屬於活躍狀態執行個體,並且這些執行個體的計費從執行個體成功建立後開始,一直到您主動將其釋放為止。所以即使預留的函數執行個體未執行任何請求,只要沒有釋放函數執行個體,您都需要為預留的函數執行個體按照活躍狀態的價格付費。
閑置狀態執行個體
在預留模式下,開啟閑置模式後,如果執行個體上沒有正在執行任何請求,這部分執行個體屬於閑置狀態執行個體。CPU執行個體預設開啟閑置模式,GPU執行個體預設關閉閑置模式,您可以手動啟用該模式。閑置模式下,預留執行個體在未處理任何請求時,Function Compute會凍結其GPU資源或vCPU資源,將執行個體轉為閑置狀態,閑置狀態執行個體的費用遠遠小於活躍狀態執行個體,費用比例可參見各資源使用量的CU轉換係數。
如下圖所示,假設您的執行個體已啟用閑置模式,預留模式的執行個體的計費從執行個體成功建立後開始,一直到您主動將其釋放為止。當預留的函數執行個體未執行任何請求,執行個體進入閑置狀態,開始處理請求直到請求結束為活躍狀態,這段時間內執行個體使用總費用為
(閑置資源使用總量 x 閑置資源使用單價)+(活躍資源使用總量 x 活躍資源使用單價)
。
執行個體規格
CPU執行個體
CPU執行個體包含以下執行個體規格,您可以根據業務需求選擇不同配置的執行個體。
vCPU(核)
記憶體規格(MB)
程式碼封裝大小上限(GB)
函數執行時間長度上限(s)
磁碟大小上限(GB)
頻寬能力上限(Gbps)
0.05~16
取值說明:必須為0.05的倍數。
128~32768
取值說明:必須為64的倍數。
10
86400
10
取值說明:
512 MB,預設值。
10 GB。
5
說明vCPU大小(單位為核)與記憶體大小(單位為GB)的比例必須設定在1∶1到1∶4之間。
GPU執行個體
GPU執行個體包含以下執行個體規格,您可以根據業務需求選擇不同配置的執行個體。
說明fc.gpu.tesla.1執行個體規格的效能與NVIDIA T4效能基本一致。
fc.gpu.ampere.1執行個體規格的效能與NVIDIA A10效能基本一致。
執行個體規格
整卡顯存(GB)
整卡算力(TFLOPS)
可選切分規格
是否支援按量模式
是否支援普通預留模式
是否支援閑置預留模式
FP16算力
FP32算力
vGPU顯存(MB)
vGPU算力(卡)
vCPU(核)
記憶體規格(MB)
fc.gpu.tesla.1
16
65
8
1024~16384(對應1 GB~16 GB)
取值說明:必須為1024 MB的倍數。
取值為vGPU顯存(GB)/16。例如,配置vGPU顯存為5 GB,則vGPU最高可得5/16張卡算力。
說明:由Function Compute系統自動分配,無需手動設定。
取值為0.05~(vGPU顯存(GB)/2)。
取值說明:必須為0.05的倍數。具體資訊,請參見GPU規格配置表。
取值為128~(顯存(GB)*2048)。
取值說明:必須為64的倍數。具體資訊,請參見GPU規格配置表。
Y
Y
Y
fc.gpu.ampere.1
24
125
30
1024~24576(對應1 GB~24 GB)
取值說明:必須為1024 MB的倍數。
取值為vGPU顯存(GB)/24。例如,配置vGPU顯存為5 GB,則vGPU最高可得5/24張卡算力。
說明:由Function Compute系統自動分配,無需手動設定。
取值為0.05~(vGPU顯存(GB)/3)。
取值說明:必須為0.05的倍數。具體資訊,請參見GPU規格配置表。
取值為128~((顯存(GB)*4096)/3)。
取值說明:必須為64的倍數。具體資訊,請參見GPU規格配置表。
Y
Y
Y
fc.gpu.ada.1
48
119
60
49152(對應48 GB)
取值說明:僅支援48 GB顯存規格。
預設分配整卡算力。
說明:由Function Compute系統自動分配,無需手動設定。
取值為8。
取值說明:僅支援8核vCPU規格。
取值為65536。
取值說明:僅支援64 GB記憶體規格。
N
Y
Y
Function ComputeGPU執行個體同時支援以下資源規格。
鏡像大小(GB)
函數執行時間長度上限(s)
磁碟大小上限(GB)
頻寬能力上限(Gbps)
ACR企業版(標準版):15
ACR企業版(進階版):15
ACR企業版(基礎版):15
ACR個人版(免費):15
86400
10
5
說明執行個體規格設定為g1等同於設定為fc.gpu.tesla.1。
目前支援Tesla系列GPU執行個體的地區包括華東1(杭州)、華東2(上海)、華北2(北京)、華北3(張家口)、華南1(深圳)、日本(東京)、美國(維吉尼亞)和新加坡。
目前支援Ampere系列GPU執行個體的地區包括華東1(杭州)、華東2(上海)、日本(東京)和新加坡。
目前支援Ada系列GPU執行個體的地區包括華北2(北京)、華東1(杭州)、華東2(上海)和華南1(深圳)。
GPU規格配置表
相關文檔
配置Auto Scaling規則時可以開啟閑置模式,具體操作請參見修改或刪除預留執行個體並發。
關於Function Compute的計費方式以及計費項目等更多資訊,請參見計費概述。
使用API建立函數時可以通過
instanceType
參數指定執行個體類型,請參見CreateFunction - 建立函數。關於如何通過控制台指定期望的執行個體類型和執行個體規格的具體操作,請參見建立Web函數。