在Triton推理服务器的使用中,模型(model)类别与调度器(scheduler)、批量处理器(batcher)类型的搭配,是整个管理机制中最重要的环节,三者之间根据实际计算资源与使用场景的要求去进行调配,这是整个Triton服务器中比较复杂的部分。
Triton服务器支持的模型并发能力,包括一个模型并发多个推理实例,以及多个模型的多个并发实例。至于能并发多少实例?就需要根据系统上的硬件配置,Triton支持纯CPU以及多GPU的计算环境。
前面文章用Triton开源项目提供的image_client.py用户端作示范,在这个范例代码里调用大部分Triton用户端函数,并使用多种参数来配置执行的功能,本文内容就是简单剖析image_client.py的代码,为读者提供撰写Triton用户端的流程。
作为服务器的最重要任务,就是要接受来自不同终端所提出的各种请求,然后根据要求执行对应的计算,再将计算结果返回给终端。
在前面的文章中,已经带着读者创建好Triton的模型仓、安装并执行Triton推理服务器软件,接下来就是要安装Triton用户端软件,对服务器提出推理请求(requests),才能触发服务器执行推理计算的任务。
推理模型仓(inference model repository)是Triton推理服务器的最基础元件,如同数据库(database)服务器必须先创建一个数据库是类似的道理。