megengine.jit.SublinearMemoryConfig¶
- class SublinearMemoryConfig(thresh_nr_try=10, genetic_nr_iter=0, genetic_pool_size=20, lb_memory_mb=0, num_worker=max(1, get_device_count('cpu') // 2))[源代码]¶
亚线性内存优化的配置。
- 参数
thresh_nr_try (
int
) – 线性空间以及亚线性内存优化的当前范围搜索的样本数目。默认:10。也可以通过环境变量 ‘MGB_SUBLINEAR_MEMORY_THRESH_NR_TRY’ 进行设置。genetic_nr_iter (
int
) – 使用遗传算法寻找最优切分策略时的迭代轮数。默认:0。也可以通过环境变量 ‘MGB_SUBLINEAR_MEMORY_GENETIC_NR_ITER’ 进行设置。genetic_pool_size (
int
) – 遗传优化算法进行交叉随机选择(crossover)时所使用的样本数。默认:20。也可以通过环境变量 ‘MGB_SUBLINEAR_MEMORY_GENETIC_POOL_SIZE’ 进行设置。lb_memory_mb (
int
) – 次线性内存优化瓶颈大小的下界(以MB为单位)。它可用于在内存和速度之间进行手动权衡。默认:0。也可以通过设置环境变量 ‘MGB_SUBLINEAR_MEMORY_LOWER_BOUND_MB’ 来实现。num_worker (
int
) – 搜索次线性内存优化最优切分策略时使用的线程数。默认:当前系统中CPU数目的一半。注意:该参数值需要大于等于1。也可以通过设置环境变量 ‘MGB_SUBLINEAR_MEMORY_WORKERS’来实现。
注意,为了使上述环境变量生效,需要将环境变量 MGB_COMP_GRAPH_OPT 设置为 ‘enable_sublinear_memory_opt=1’ 。
方法