首页 > 解决方案 > 如何确定线程池的大小以获得最佳性能

问题描述

我使用:Python 3.6.9;

concurrent.futures 导入 ThreadPoolExecutor;

CentOS 7+;8核;I/O密集型任务;</p>

首先; 我设置ThreadPoolExecutor(max_workers=2 * cpu_count + 2)

后来发现增加cpu_count的运行时间会更快;

    cpu_count   |   finish_seconds 
      8*2+2     |     25s
      100       |     9s

但我知道 cpu_count 并不是越多越好

我需要每次都尝试吗?如何快速选择尺寸以获得良好的性能

标签: python-3.xthreadpool

解决方案


推荐阅读