其他相关优化
其他相关优化包括OpenMP、BIOS相关优化、vLLM相关优化、MindIE相关优化等。
OpenMP相关优化
在OpenMP并行计算优化中,通过合理配置环境变量可显著提升多线程任务的执行效率。如表1所示两个关键环境变量同时设置后,可以实现线程资源分配与负载均衡的协同优化。
环境变量 |
功能说明 |
推荐参数 |
---|---|---|
OMP_PROC_BIND |
控制OpenMP线程是否绑定到特定CPU核心。false表示允许线程迁移以实现动态负载均衡。 |
false |
OMP_NUM_THREADS |
设置OpenMP并行计算的最大线程数。值为100表示最多使用100个线程进行并行计算。 |
100 |
示例优化代码:
export OMP_PROC_BIND=false export OMP_NUM_THREADS=100
vLLM模型推理优化
在vLLM模型推理性能调优中,通过环境变量组合配置可显著提升吞吐量和资源利用率。如表2所示两个优化选项添加后可以显著提升推理性能。
环境变量 |
功能说明 |
推荐参数 |
---|---|---|
VLLM_WORKER_MULTIPROC_METHOD |
vLLm框架创建新进程的方式,v1模式需要使用spawn方法创建子进程。 |
spawn |
VLLM_USE_V1 |
启用V1推理模式,启用时需要额外添加VLLM_WORKER_MULTIPROC_METHOD环境变量。 |
1 |
VLLM_OPTIMIZATION_LEVEL |
控制vLLM模型推理的优化级别,值越高优化越激进,可能提高性能但增加显存资源消耗。 |
3 |
示例优化代码:
export VLLM_WORKER_MULTIPROC_METHOD=spawn export VLLM_USE_V1=1 export VLLM_OPTIMIZATION_LEVEL=3
MindIE Turbo相关优化
当前MindIE Turbo中的部分性能调优特性有一定的场景限制,因此针对这部分特性,采用环境变量的方式控制是否开启,请根据具体使用场景进行选择。
环境变量 |
功能说明 |
推荐参数 |
---|---|---|
USING_SAMPLING_TENSOR_CACHE |
是否启用vLLM后处理部分的张量缓存功能。 chunked-prefill和beam search场景下暂不支持。 |
|
USING_LCCL_COM |
是否启用LCCL通信库进行通信操作。 多机场景下的跨机通信暂不支持。 |
|
USING_PP_MATMUL |
使用ping-pang matmul算子进行浮点的矩阵乘计算,在长序列场景下性能更优。由于使用了不同的算子,可能会造成叠加MindIE Turbo后vllm-ascend的精度发生变化,如果需要精度和vllm-ascend完全对齐,请关闭该环境变量。 |
|
示例优化代码:
export USING_SAMPLING_TENSOR_CACHE=1 export USING_LCCL_COM=1 export USING_PP_MATMUL=1
BIOS优化
如下图所示的若干选项可能影响模型和其他程序的运行性能,推荐选项如表4所示,可以结合使用场景的具体情况自行选择开启或关闭。
选项名称 |
功能说明 |
推荐选项 |
---|---|---|
Power Policy |
调整系统性能与能耗之间的平衡。 |
Performance |
Support Smmu |
启用系统内存管理单元,增强虚拟化环境安全和效率。 |
Disabled |
CPU Prefetching Configuration |
配置CPU数据预取优化,提升处理速度。 |
Disabled |