Skip to content

性能测试

Siran Yang edited this page May 31, 2019 · 4 revisions

测试环境

我们基于阿里妈妈的搜索广告数据测试了Euler的极限性能。测试网络使用了传统的GraphSAGE算法。每个点大概几十个sparse ID的属性,没有使用dense属性。我们设置邻居汇聚层数为1层,邻居采样个数为10个。图的规模大约为2亿点,40亿边。机器学习框架使用TensorFlow。

为了精确测试Euler的服务能力,我们利用了异构部署的使用方式。在这种方式下,Euler被独立部署在单独的机器上,与Tensorflow的进程物理隔离。

我们分别测试了1台,2台及5台机器部署Euler可以达到的服务能力。机器的配置为:Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz,96核心,512G内存。TF worker跑在相同类型但是独立的硬件资源上,我们利用docker为每个worker分配16核心cpu以及50GB内存。

测试结果

在三种Euler部署下,我们修改TF的Worker数量来测试Sample QPS。结果见下表。

TF worker数目 单台机器 两台机器 五台机器
100 112w 112w 112w
200 145w 220w 220w
300 148w 285w 298w
400 151w 290w 410w
500 152w 300w 505w
600 155w 310w 596w

从以上结果,可以看到:

  • 随着Euler的机器资源增加,我们的峰值服务能力可以线性扩充
  • 随着TF worker数量的增加,QPS线性扩充直到达到Euler所用硬件资源的极限能力
  • 用5台机器部署Euler,即可以带动600个TF worker,提供600w的训练QPS。部署Euler所需资源仅占用总计算资源的5%
Clone this wiki locally