参考 torch Dataloader中的num_workers - 云+社区 - 腾讯云
考虑这么一个场景,有海量txt文件,一个个batch读进来,测试一下torch DataLoader的效率如何。
基本信息:
- 本机配置:8核32G内存,工作站内置一块2T的机械硬盘,数据均放在该硬盘上
- 操作系统:ubuntu 16.04 LTS
- pytorch:1.0
- python:3.6
1、首先生成很多随机文本txt
def gen_test_txt():
population = list(string.ascii_letters) + ['\n']
for i in range(1000):
with open(f'./test_txt/{i}.txt', 'w') as f:
f.write(
''.join(random.choices(population, k=1000000))
)
2、然后顺序读取作为benchmark
def test_torch_reader():