multi-gpu

    1热度

    1回答

    我有一套tiff文件,可以在Iowa State University的像素位置显示整个美国大陆的对流天气(NAD83投影)。我的目标是将像素位置转换为纬度/经度数据。我在TIFF文件中读取数据的SpatialGridDataFrame与... imageData = readGDAL(fileNameDir, silent = TRUE) 我读的地方,readGDAL将寻求如果TIFF文件不

    0热度

    1回答

    我有一个名为Titan Z的双GPU卡。我有Matlab 2016a试图解决为不同'b'值设置的稀疏Ax=b方程。泰坦Z有两个GPU和6 GB RAM每个GPU 这是问题所在。 如果我解决1个GPU一个Ax=b问题,比方说,一个 2GB,MATLAB副本这个矩阵的“A”矩阵大小,每个GPU的显存。 GPU-Z报告 每个GPU拥有2 GB的数据,仅1 GPU工作 如果我解决两个Ax=b问题2 GPU

    2热度

    1回答

    在this TensorFlow tutorial中,您可以使用N个GPU将N个小批量(每个包含M个训练样本)分配给每个GPU并同时计算梯度。 然后,您对从N个GPU中收集的渐变进行平均并更新模型参数。 但这与使用单GPU来计算N * M个训练样本的梯度,然后更新参数的效果相同。 因此,我认为唯一的优点是可以在相同的时间内使用更大尺寸的微型批次。 但是大型小批量一定更好吗? 我以为你不应该使用一个

    0热度

    1回答

    在玩了一段时间的当前分布式训练实现后,我认为它将每个GPU视为一个单独的工作者。但是,现在在一个盒子中有2〜4个GPU 。采用单盒多GPU方法先计算单个盒子中的平均梯度,然后跨多个节点同步,是不是更好?这样就可以缓解I/O流量,这总是数据并行性的瓶颈。由于SyncReplicasOptimizer直接将优化器作为输入,所以我被告知使用当前实现将单个盒子中的所有GPU作为工作人员,但我无法弄清楚如何

    0热度

    1回答

    我使用tensorflow训练我的第一个多GPU模式。 正如本教程所述,变量被固定在CPU上,并且使用name_scope在每个GPU上运行。 正如我运行一个小的测试并记录设备放置,我可以看到的OPS被放置到与TOWER_1/TOWER_0前缀各自GPU但变量没有被放置在所述CPU上。 我缺少的东西还是我理解设备放置日志不正确。 附加的测试代码和这里是device placement log 由于

    0热度

    1回答

    cudaEventRecord takes an event ID and a stream ID as parameters。运行时API参考没有说明是否需要将流与当前设备关联 - 我无法测试是否是这种情况,因为我现在只能在任何有权访问的系统上使用一个GPU。 假设它必须是当前设备上的数据流: 如果它得到另一个设备上的数据流会发生什么? 假设它可以是任何设备上的数据流: 时,它得到的(当前设备的

    1热度

    2回答

    的Tensorflow培训,特别是复验模型的实现使用分布式Tensorflow在以下纸张https://github.com/Russell91/TensorBox给出。 我们使用之间,图的异步执行的分布式tensorflow设置,但结果是非常令人惊讶的。在进行基准测试时,我们发现分布式训练的培训时间比单次机器训练多两倍以上。任何有关可能发生的事情以及还有什么可能会被尝试的线索都会得到真正的赞赏。

    0热度

    1回答

    我正在尝试使用张量流来训练序列模型。我在教程中看到,桶有助于加速培训。到目前为止,我只能使用一个桶进行训练,并且只使用一个gpu和多个桶来使用或多或少的开箱即用代码,但是当我尝试使用具有多个gpus的多个桶时,出现错误,指出 参数无效:您必须养活占位符张量“gpu_scope_0/encoder50_gpu0”与D型的值INT32 从错误中,我可以告诉大家,我不是正确声明input_feed,所以

    0热度

    2回答

    在OpenCL中,有可能由多个GPU组成的系统隐式划分作业,而程序员不明确划分工作负载? 例如说我有一个由1个SM192核心GPU组成的GPU,并运行一个矩阵乘法,这个算法正常工作。现在我添加了另一个相同的GPU,并且OpenCL使用GPU来计算它的矩阵乘法,而不是程序员将工作负载分配给每个GPU。

    0热度

    1回答

    我有两个GPU,一个内核,一个上下文和两个命令队列(每个GPU一个)。我曾尝试在每个命令队列运行的循环中运行它们,然后我尝试了queue.finish()和queue.flush(),希望能够同时在GPU上运行这些工作。 但实际情况是,数据首先发送到一个设备,GPU执行其工作,然后另一个GPU开始工作。它需要两倍于单个GPU的时间。这不是我打算实现的! 虽然我也将缓冲区读回主机代码,并且有人可能认