PaddlePaddle/PGL v2.2.2
PaddlePaddle/PGL
Captured source
source ↗published Dec 29, 2021seen 5dcaptured 13hhttp 200method plain
Paddle Graph Learning (PGL) 2.2 版本发布
Repository: PaddlePaddle/PGL
Tag: v2.2.2
Published: 2021-12-29T04:02:35Z
Prerelease: no
Release notes: 1、发布Graph4Rec:一个用于推荐系统的通用大规模分布式图表示学习工具包(详情请参考这里)。
- 全面丰富: 预置丰富的图模型,包括walk-based和GNN-based 模型。
- 灵活易用:配置即模型,无需改动代码,一键即可启动单机和多机训练。
- 大规模: 大规模参数服务与图引擎无缝结合,可进行工业级图表示学习训练,实现应用落地。
2、发布Graph4KG:一个用于大规模知识图谱表示学习的工具包(详情请参考这里)。
- 异步数据读取:数据读取与模型训练异步进行,节省数据IO时间。
- 异构存储与计算:实体和关系参数存储在CPU,模型计算在GPU,节省显存占用。
- 异步梯度更新:GPU到CPU的梯度更新异步执行,进一步提升训练速度。
- OGB-LSC支持:提供了WikiKG90M数据集在KDD CUP2021中的解决方案。
3、发布GNNAutoScale:一个用于图学习异构设备训练的工具包(详情请参考这里)。
- GNN模型自动拓展:采样中间隐态CPU缓存技术,支持GNN模型自动拓展。
- 解决IO瓶颈:支持CUDA Stream异步读写,实现计算和IO操作并行化。
- 速度提升显著:支持消息传递Spmm化,大幅度提升图学习的显存利用和训练速度。
- 提高数据生成效率:Dataloader数据缓存策略,提高数据生成效率。
4、新特性
- 新增 pgl.partition图分片方法,包含random_partition和metis_partition,其中metis_partition暂不支持 Windows系统;
- 新增pgl.utils.transform,包含一些方便的图转换API,如to_undirected用于转无向图,add_self_loops用于给图增加自环边;
- 新增pgl.utils.stream_pool,支持 CUDA Stream异步读写;
- 新增 pgl.utils.shared_embedding,支持MMAP模式的共享 Embedding。
5、Bug修复
- 修复 DistGPUGraph无法在 PaddlePaddle版本大于2.0.0正确运行的 Bug;
- 修复 Dataloader在 num_workers 大于1时,不支持python3.8 mac os环境下正确运行的 Bug;