Xiulong Yuan
Xiulong Yuan
The skills used behind should be roughly same: manually managing virtual memory and physical memory mappinp.
We only consume 3 CPU per server when we do 2-machine-6-device training, just one cpu per training process. 
`max_rd_atomic` is a crucial QP attribute for performance, it is the number of RDMA Reads & atomic operations outstanding at any time that can be handled by a RC QP...
今天重新分析了下,TLB的命中缺失带来的开销和特征Dim有关系的一个核心原因很可能是PTW带来的时间开销相对于特征读取开销的占比。特征比较大的时候,PTW的开销相对而言没有那么明显,而特征比较小的时候,PTW的开销相对占比就会比较高了。 所以这件事儿其实是两个维度: 1. 固定FeatureDim,不断的增大NUM_ELEMENT 2. 固定NUM_ELEMENT, 不断的增大FeatureDim
@Aiemu 你跑一下[这个文件](https://github.com/quiver-team/quiver-feature/blob/main/tests/python/test_MultiMachineDistTensorPGAS.py),维度仍然设置为128,但是不要设置过大的FeatureSize,测个80G左右的就行。
使用内存数据集时,由于进程中已包含全部的数据,所以使用Ray时无需做额外的操作。但是使用外存数据集时,用户开发Dataset时应了解该Dataset可能会被调度到其他机器节点执行,尽量避免在Dataset的init函数中做机器相关的操作如打开文件句柄等。这些操作应当推迟到Dataset第一次被迭代执行时完成。
1. 挑选一个模型 ==> 数据预处理时间需要比较长 2. 在单机上多卡训练,统计这个数据时间再训练时间中的占比 3. 使用DistDataLoader,统计数据时间再训练时间中的占比
我们应当使用基于PyG的MAG240M来提供分布式的图学习来做benchmark: https://github.com/snap-stanford/ogb/tree/master/examples/lsc/mag240m @lausannel
可以加我微信,然后我拉你们进群~, 加微信请备注 `IoTDB-CSharp` @maikebing 