是否有一个应用程序可以显示我的GPU使用历史记录,就像我可以启动任务管理器查看CPU使用情况一样?我希望能够看到我使用WPF应用程序在GPU上加载了多少负载.
我有一个应用程序,我需要采取图像的平均强度大约100万图像.它"感觉"就像GPU片段着色器的工作,但片段着色器用于每像素本地计算,而图像平均是全局操作.
我考虑的一种方法是将图像加载到纹理中,应用2x2框模糊,将结果加载回N/2 x N/2纹理并重复直到输出为1x1.但是,这将采用着色器的log n应用程序.
有没有办法一次性完成?或者我应该分解并使用CUDA/OpenCL?
我需要知道用户是否正在使用Chrome浏览带有webgl黑名单上的显卡的网站:
http://support.google.com/chrome/bin/answer.py?hl=en-GB&answer=1220892
具体来说,我需要知道他们是否使用ATI卡.我在THREE.js上做的项目在ATI卡上的Chrome浏览器中产生了一个非常难看的渲染(线条没有消除锯齿),我想提供一个替代方案.
我知道有一个后期效果模糊了线条,但艺术方向的结果更糟糕.
我有一个123MB的大int数组,它基本上是这样用的:
private static int[] data = new int[32487834];
static int eval(int[] c)
{
int p = data[c[0]];
p = data[p + c[1]];
p = data[p + c[2]];
p = data[p + c[3]];
p = data[p + c[4]];
p = data[p + c[5]];
return data[p + c[6]];
}
Run Code Online (Sandbox Code Playgroud)
eval()被称为很多(约50B次)与不同c,我想知道是否(以及如何)我可以加快它.
我已经使用了一个不安全的函数和一个使用所有CPU 的固定数组.它是RayW的TwoPlusTwo 7卡评估器的C#端口.C++版本的速度微不足道.
GPU可以用来加快速度吗?
我想知道关于GPU的硬件架构的所有内容,除了GPU编程,我在互联网上的一切都没有,我需要基本的硬件介绍,如ALU,内存管理......还有谁可以向我介绍一些优秀的书或类似的东西?提前致谢 .
我需要唯一地识别显示器,以达到显示器确实在特征上不同的程度.因此,插入同一物理端口的相同型号的显示器不会被视为不同,但基本上其他一切都将被视为不同.
当系统GPU更改时,CGDirectDisplayID也会更改,但不会以文档的方式更改.实验表明,根据使用的GPU,相同的屏幕ID将相差2.
解决此问题的方法是获取显示的IO注册表字符串:
io_service_t servicePort = CGDisplayIOServicePort (cgDisplayID);
io_service_t root = IODisplayForFramebuffer (servicePort, kNilOptions);
NSDictionary* ioRegistryDict = nil;
NSString* displayKey = nil;
IORegistryEntryCreateCFProperties (root, (CFMutableDictionaryRef *)&ioRegistryDict, kCFAllocatorDefault, kNilOptions);
if (ioRegistryDict)
displayKey = [ioRegistryDict objectForKey:@"IODisplayPrefsKey"];
Run Code Online (Sandbox Code Playgroud)
这很有效,除了10.9之外,不推荐使用CGDisplayIOServicePort.
鉴于所有这些,以及Apple建议不要缓存NSScreens(无论如何都不能真正用于此目的),可靠地识别屏幕的最佳方法是什么,以便我可以告诉(例如)家中的屏幕之间的区别一个在工作?
我不想依赖屏幕分辨率,因为不应将用户更改分辨率视为不同的显示.也不应该将不同GPU上的相同屏幕视为不同.
第二个目标是找到一种给定CGDirectDisplayID的方法,如果发生GPU切换,如何确定同一屏幕的CGDirectDisplayID是什么?这至少允许我通过CGDirectDisplayID跟踪显示,只要我可以匹配来自两个GPU控制器的两个结果.
I am running Tensor Flow version 0.7.1, 64-bit GPU-enabled, installed with pip, and on a PC with Ubuntu 14.04. My issue is that Tensor Flow is running out of memory when building my network, even though based on my calculations, there should be sufficient room on my GPU.
Below is a minimal example of my code, which is based on the Tensor Flow MNIST tutorial. The network is a two-layer fully-connected network, and the number of nodes in the hidden …
我想比较我的代码处理时间和不使用gpu.我的keras后端是Tensorflow.所以它会自动使用GPU.我用一个keras/examples/mnist_mlp.py比较模型.
我检查了下面的处理时间.那么,我如何禁用我的GPU?应该~/.keras/keras.json修改?
$ time python mnist_mlp.py
Test loss: 0.109761892007
Test accuracy: 0.9832
python mnist_mlp.py 38.22s user 3.18s system 162% cpu 25.543 total
Run Code Online (Sandbox Code Playgroud) 假设我有一个火炬CUDA张量,我想应用一些函数,sin()但我明确定义了该函数F.如何F在Pytorch中使用并行计算.
我正在尝试为10级图像分类任务训练一个简单的多层感知器,这是Udacity深度学习课程的一部分.更确切地说,任务是对从各种字体呈现的字母进行分类(数据集称为notMNIST).
我最终得到的代码看起来相当简单,但无论我在培训期间总是获得非常低的GPU使用率.我用GPU-Z测量负载,它只显示25-30%.
这是我目前的代码:
graph = tf.Graph()
with graph.as_default():
tf.set_random_seed(52)
# dataset definition
dataset = Dataset.from_tensor_slices({'x': train_data, 'y': train_labels})
dataset = dataset.shuffle(buffer_size=20000)
dataset = dataset.batch(128)
iterator = dataset.make_initializable_iterator()
sample = iterator.get_next()
x = sample['x']
y = sample['y']
# actual computation graph
keep_prob = tf.placeholder(tf.float32)
is_training = tf.placeholder(tf.bool, name='is_training')
fc1 = dense_batch_relu_dropout(x, 1024, is_training, keep_prob, 'fc1')
fc2 = dense_batch_relu_dropout(fc1, 300, is_training, keep_prob, 'fc2')
fc3 = dense_batch_relu_dropout(fc2, 50, is_training, keep_prob, 'fc3')
logits = dense(fc3, NUM_CLASSES, 'logits')
with tf.name_scope('accuracy'):
accuracy = tf.reduce_mean(
tf.cast(tf.equal(tf.argmax(y, 1), …Run Code Online (Sandbox Code Playgroud)