multi-gpu

Multiple monitors in .NET

冷暖自知 提交于 2019-12-03 13:39:06
Are all displays returned from .NET's Screen.AllScreens regardless of hardware configuration? For example, on a single PC you can have: Video card out to two display = total 2 displays Video cards each out to 1 display = total 2 displays, Video cards each out to 2 displays = 6 displays, Eyefinity card out to 6 displays (on displayports) In all these cases, if I use Screen.AllScreens can I access each display individually? Also, what if I have a card in extended mode, meaning 2 displays plugged into one card but it's just one big desktop (what I use at work)? Can I still specify content to

How to resolve CGDirectDisplayID changing issues on newer multi-GPU Apple laptops in Core Foundation/IO Kit?

半腔热情 提交于 2019-12-03 13:33:44
问题 In Mac OS X, every display gets a unique CGDirectDisplayID number assigned to it. You can use CGGetActiveDisplayList( ) or [NSScreen screens] to access them, among others. Per Apple's docs: A display ID can persist across processes and system reboot, and typically remains constant as long as certain display parameters do not change. On newer mid-2010 MacBook Pro's, Apple started using auto-switching Intel/nVidia graphics. Laptops have two GPU's, a low-powered Intel, and a high-powered nVidia.

Ways to implement multi-GPU BN layers with synchronizing means and vars

半腔热情 提交于 2019-12-03 12:11:10
问题 I'd like to know the possible ways to implement batch normalization layers with synchronizing batch statistics when training with multi-GPU. Caffe Maybe there are some variants of caffe that could do, like link. But for BN layer, my understanding is that it still synchronizes only the outputs of layers, not the means and vars. Maybe MPI can synchronizes means and vars but I think MPI is a little difficult to implemnt. Torch I've seen some comments here and here, which show the running_mean

Tensorflow Java Multi-GPU inference

↘锁芯ラ 提交于 2019-12-03 11:49:54
I have a server with multiple GPUs and want to make full use of them during model inference inside a java app. By default tensorflow seizes all available GPUs, but uses only the first one. I can think of three options to overcome this issue: Restrict device visibility on process level, namely using CUDA_VISIBLE_DEVICES environment variable. That would require me to run several instances of the java app and distribute traffic among them. Not that tempting idea. Launch several sessions inside a single application and try to assign one device to each of them via ConfigProto : public class

How to copy memory between different gpus in cuda

雨燕双飞 提交于 2019-12-03 08:29:19
Currently I'm work with two gtx 650 . My program resembles in simple Clients/Server structure. I distribute the work threads on the two gpus. The Server thread need to gather the result vectors from client threads, so I need to copy the memory between the two gpu. Unfortunaly, the simple P2P program in cuda samples just doesn't work because my cards don't have TCC drivers. Spending two hours searching on google and SO, I can't find the answer.Some source says I should use cudaMemcpyPeer , and some other source says I should use cudaMemcpy with cudaMemcpyDefault .Is there some simple way to get

OpenCL/OpenGL Interop with Multiple GPUs

白昼怎懂夜的黑 提交于 2019-12-03 07:33:58
问题 I'm having trouble using multiple GPUs with OpenCL/OpenGL interop. I'm trying to write an application which renders the result of an intensive computation. In the end it will run an optimization problem, and then, based on the result, render something to the screen. As a test case, I'm starting with the particle simulation example code from this course: http://web.engr.oregonstate.edu/~mjb/sig13/ The example code creates and OpenGL context, then creates a OpenCL context that shares the state,

How'd multi-GPU programming work with Vulkan?

[亡魂溺海] 提交于 2019-12-03 05:03:55
Would using multi-GPUs in Vulkan be something like making many command queues then dividing command buffers between them? There are 2 problems: In OpenGL, we use GLEW to get functions. With more than 1 GPU, each GPU has its own driver. How'd we use Vulkan? Would part of the frame be generated with a GPU & the others with other GPUs like use Intel GPU to render UI & AMD or Nvidia GPU to render game screen in labtops for example? Or would a frame be generated in a GPU & the next frame in an another GPU? Updated with more recent information, now that Vulkan exists. There are two kinds of multi

Ways to implement multi-GPU BN layers with synchronizing means and vars

南笙酒味 提交于 2019-12-03 02:41:20
I'd like to know the possible ways to implement batch normalization layers with synchronizing batch statistics when training with multi-GPU. Caffe Maybe there are some variants of caffe that could do, like link . But for BN layer, my understanding is that it still synchronizes only the outputs of layers, not the means and vars. Maybe MPI can synchronizes means and vars but I think MPI is a little difficult to implemnt. Torch I've seen some comments here and here , which show the running_mean and running_var can be synchronized but I think batch mean and batch var can not or are difficult to

How to run Tensorflow Estimator on multiple GPUs with data parallelism

天涯浪子 提交于 2019-12-02 16:52:18
I have a standard tensorflow Estimator with some model and want to run it on multiple GPUs instead of just one. How can this be done using data parallelism? I searched the Tensorflow Docs but did not find an example; only sentences saying that it would be easy with Estimator. Does anybody have a good example using the tf.learn.Estimator? Or a link to a tutorial or so? I think tf.contrib.estimator.replicate_model_fn is a cleaner solution. The following is from tf.contrib.estimator.replicate_model_fn documentation, ... def model_fn(...): # See `model_fn` in `Estimator`. loss = ... optimizer = tf

GPUDirect Peer 2 peer using PCIe bus: If I need to access too much data on other GPU, will it not result in deadlocks?

心不动则不痛 提交于 2019-12-02 02:53:56
问题 I have simulation program which requires a lot of data. I load the data in the GPUs for calculation and there is a lot of dependency in the data. Since 1 GPU was not enough for the data, so I upgraded it to 2 GPUs. but the limitation was, if I required data on other GPU, there had to be a copy to host first. So, if I use GPU Direct P2P, will the PCI bus handle that much of to and fro communication between the GPUs? Wont it result in deadlocks? I am new to this, so need some help and insight.