10 2023 档案
摘要:生产者消费者模式下实现多batch延时推理 需求分析 在实际推理过程中为了实现较高的吞吐量和较高的资源利用率,往往会使用多线程来收集多次请求,并组合形成多batch下的模型推理,一种常见的实现便是生产者和消费者模式,其需求如下: 生产者收集提交的请求,消费者对请求进行消费,并将结果返回。 资源是有限
阅读全文
摘要:LLM采样后处理总结:LLM的后处理的cpp实现 在经过LLM的lm_head之后,会得到[batch, vocab_size]大小的矩阵向量,此时需要对输出的逻辑张量进行采样,除了beam_search的贪心策略,还有repetition_penalty、temperature、top_k、top
阅读全文
摘要:ControlNet-trt优化总结4:onnx图修改与重建 在这一节中,主要总结网络层面的优化,针对于算子插件优化,主要聚焦于以下几点: 修改onnx图,添加不支持的算子插件 增加前后处理部分,前后处理导出为onnx图 onnx图surgeon 原有的graph中存在大量的GN操作,正常fp32的
阅读全文
摘要:ControlNet-trt优化总结3:使用multi-stream和cuda-graph构建并行流水线 上节谈到使用TRT-API来构建网络,在这一节中总结一些trick来提升模型的运行效率,这些trick在所有的trt优化中均可使用,主要有以下几点: 使用cuda_graph减少kernel间的
阅读全文
摘要:ControlNet-trt优化总结2:使用TRT-API从零构建ControlNet网络 在上节讲到,可以通过手动搭建trt网络的方式来重新构造controlnet网络,这样可以避免onnx中间转换过程中的精度损失,也可避免onnx中间转化时的算子被拆解的细碎的情况,对于不支持的算子,也可通过添加
阅读全文