Parallel processing 一次为一个数据集使用多个GPU,而不是在tensorflow中拆分数据集
我知道在训练DNN时,使用多个GPU的通常方法是分割数据集并将每个分割的数据集分配给每个GPU 然而,有没有一种方法可以使用多个GPU来更快地计算不可分割的整个数据集?我的意思是,当GPU用于训练网络时,矩阵乘法在单个GPU内并行化。我可以通过同时使用多个GPU来加快这个矩阵乘法吗 例如,对于数据集,我只有一张图片。因为我没有多个图片用于拆分和分发到多个GPU,所以我想利用所有GPU来计算这一个图片Parallel processing 一次为一个数据集使用多个GPU,而不是在tensorflow中拆分数据集,parallel-processing,tensorflow,deep-learning,gpu,Parallel Processing,Tensorflow,Deep Learning,Gpu,我知道在训练DNN时,使用多个GPU的通常方法是分割数据集并将每个分割的数据集分配给每个GPU 然而,有没有一种方法可以使用多个GPU来更快地计算不可分割的整个数据集?我的意思是,当GPU用于训练网络时,矩阵乘法在单个GPU内并行化。我可以通过同时使用多个GPU来加快这个矩阵乘法吗 例如,对于数据集,我只有一张图片。因为我没有多个图片用于拆分和分发到多个GPU,所以我想利用所有GPU来计算这一个图片 在Tensorflow中可能吗?我在网上搜索过,但什么也没找到,因为这是一个非常罕见的病例 您正
在Tensorflow中可能吗?我在网上搜索过,但什么也没找到,因为这是一个非常罕见的病例 您正在尝试做类似的事情。在tensorflow中这样做有点麻烦 一种使用两个GPU卡并行化matmul的方法
A X B=C
,A,B,C
是形状为(m,k)
,(k,n)
,(m,n)
的矩阵。
你可以:
A
拆分为A1
和A2
,形状为(m/2,k)、(m/2,k)
A1
放在GPU1上,将A2
放在GPU2上
B
复制到两个GPUA1 X B=C1
和A2 X B=C2
C1
和C2
以获得C