Page 96 - 《软件学报》2025年第5期
P. 96
1996 软件学报 2025 年第 36 卷第 5 期
50 000 70 000 4 000
Image_task 60 000 Speech_task 3 000 Graph_task
40 000
冷启动性能 (ms) 30 000 50 000 2 000
40 000
20 000
30 000
10 000
20 000 1 000
0 0
亚马逊 谷歌 微软 阿里巴巴 亚马逊 谷歌 微软 阿里巴巴 亚马逊 谷歌 微软 阿里巴巴
图 12 图片处理任务、语音识别任务和图计算任务在不同平台上的执行性能分布
50 000
17 500
Train_task Inference_task
40 000 15 000
执行性能 (ms) 30 000 10 000
12 500
7 500
20 000
5 000
10 000
亚马逊 谷歌 微软 阿里巴巴 亚马逊 谷歌 微软 阿里巴巴
图 13 机器学习训练任务和机器学习推理任务在不同平台上的执行性能分布
对于图片处理任务, 根据表 8 中关于该任务的中位数性能结果, 亚马逊 Lambda、谷歌 Cloud Functions、微
软 Azure Functions 和阿里巴巴 Function Compute 分别执行需要 3 365.12 ms、3 619.12 ms、1 087.19 ms 和
2 998.17 ms. 结果显示, 微软 Azure Functions 比其他 3 个平台执行图片处理任务快了近 3 倍, 花费的成本也是最低
的 (0.002 37 美元). 若不考虑基于内存消耗策略的微软 Azure Functions, 其他 3 个平台中阿里巴巴 Function
Compute 的执行该任务的时间相对较短, 花费的成本也相对较低, 为 0.006 45 美元. 根据上下四分位数范围的结果
来看, 微软 Azure Functions 的四分位数范围 (1 009.83–1 169.21 ms) 也低于其他 3 个平台的范围, 即亚马逊
Lambda 的执行延迟结果在 3 286.33–3 443.24 ms、谷歌 Cloud Functions 的执行延迟结果在 3 475.99–3 826.90 ms,
阿里巴巴 Function Compute 的执行延迟结果在 1 076.59–3 190.15 ms. 根据图 12 中图片处理任务的性能分布, 阿里
巴巴 Function Compute 的性能结果的箱线图是最大, 意味着其获得的性能数据是最为分散. 亚马逊 Lambda 和微
软 Azure Functions 获得的性能数据相对集中, 而谷歌 Cloud Functions 获得的结果则存在大量偏离正常范围的异
常值. 因此, 对于图片处理任务而言, 微软 Azure Functions 和阿里巴巴 Function Compute 可以提供最快的执行速
度, 且这些平台产生的成本更低; 而考虑到平台所获性能结果的稳定性, 图片处理任务更适合在亚马逊 Lambda 和
微软 Azure Functions 上执行.
对于语音识别任务, 相比图片处理任务, 它需要更长的任务执行时间. 根据表 8 中的语音识别任务的中位数结
果, 亚马逊 Lambda 执行该任务需要约 52 s, 谷歌 Cloud Functions 需要约 41 s, 微软 Azure Functions 需要约 21s, 阿
里巴巴 Function Compute 需要约 48 s. 在这类任务中, 亚马逊 Lambda 的执行时间较长, 产生的成本更高 (0.437 28
美元), 而微软 Azure Functions 的执行时间较短, 产生的成本较低 (0.134 25 美元). 若不考虑基于内存消耗的微软
Azure Functions, 谷歌 Cloud Functions 和阿里巴巴 Function Compute 在执行该任务的时间上相对较短. 根据图 12
中语音识别任务的执行结果分布, 谷歌 Cloud Functions、微软 Azure Functions 和阿里巴巴 Function Compute 获得
的性能结果相对分散, 而亚马逊 Lambda 获得的性能结果相对集中, 亚马逊 Lambda 仍然存在一些异常值. 因此, 对
于语音识别任务而言, 微软 Azure Functions、谷歌 Cloud Functions 和阿里巴巴 Function Compute 可以提供最快的
执行性能, 产生的成本比亚马逊 Lambda 低; 考虑到所获性能结果的稳定性, 语音识别任务更适合在亚马逊
Lambda 上执行.
对于图计算任务, 根据表 8 关于该任务的中位数数据, 4 个平台能够以 1 s 内完成执行. 具体来说, 亚马逊
Lambda 执行时间为 897.08 ms, 谷歌 Cloud Functions 执行时间为 282.01 ms, 微软 Azure Functions 执行时间为