共计 434 个字符,预计需要花费 2 分钟才能阅读完成。
做 data preprocessing 和跑批量任务的时候经常会遇到下面的情况:
- 单 Python 进程根本跑不快,需要 multiprocess
- 因为可能会意外退出,所以要写一个 cache 的检查逻辑之前是不是执行过,执行过就跳过
- 每次都是复制粘贴以前类似的代码,但修修改改很容易改错
- 如果上 PyTorch 的话先要 spawn process 重新 load 模型,还得分数据,烦不胜烦
为解决上述烦恼,做了一个并行框架,项目地址:https://github.com/JeffersonQin/akasaka
代码非常简单但重在实用,已发布 PyPi。
例子:https://github.com/JeffersonQin/akasaka/blob/master/examples/print.py
还支持 PyTorch CUDA 的 spawning, 在多卡集群上,用户可以只提供 load_model
, get_dataloader
, execute()
函数,即可多卡自动数据分割 + 并发执行,一步到位解决重复劳动
正文完