Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 与使用Theano的CPU相比,使用Theano的GPU的效果较差_Python_Cuda_Gpu_Theano - Fatal编程技术网

Python 与使用Theano的CPU相比,使用Theano的GPU的效果较差

Python 与使用Theano的CPU相比,使用Theano的GPU的效果较差,python,cuda,gpu,theano,Python,Cuda,Gpu,Theano,我正在做这个教程: 本教程的解决方案如下所示: 但我的问题是当我运行代码时 使用GPU: THEANO_FLAGS=mode=FAST_RUN,device=gpu time python using_gpu_solution_1.py 我得到了以下输出: Using gpu device 0: Tesla C2050 / C2070 Used the gpu 13.37user 3.69system 0:16.49elapsed 103%CPU (0avgtext+0avgdata 61

我正在做这个教程:

本教程的解决方案如下所示:

但我的问题是当我运行代码时

使用GPU:

THEANO_FLAGS=mode=FAST_RUN,device=gpu time python using_gpu_solution_1.py
我得到了以下输出:

Using gpu device 0: Tesla C2050 / C2070
Used the gpu
13.37user 3.69system 0:16.49elapsed 103%CPU (0avgtext+0avgdata 617376maxresident)k
0inputs+16outputs (0major+75442minor)pagefaults 0swaps
Used the cpu
6.85user 14.50system 0:04.43elapsed 481%CPU (0avgtext+0avgdata 241120maxresident)k
0inputs+16outputs (0major+43904minor)pagefaults 0swaps
使用CPU时:

THEANO_FLAGS=mode=FAST_RUN,device=cpu time python using_gpu_solution_1.py
我得到了以下输出:

Using gpu device 0: Tesla C2050 / C2070
Used the gpu
13.37user 3.69system 0:16.49elapsed 103%CPU (0avgtext+0avgdata 617376maxresident)k
0inputs+16outputs (0major+75442minor)pagefaults 0swaps
Used the cpu
6.85user 14.50system 0:04.43elapsed 481%CPU (0avgtext+0avgdata 241120maxresident)k
0inputs+16outputs (0major+43904minor)pagefaults 0swaps
在这篇文章中,他们提到GPU的速度几乎提高了一倍。 但我用GPU得到的时间比CPU多

是因为代码在CPU的多核上运行,并且比GPU有了改进吗

谁能告诉我我做错了什么? 我唯一能看到的是使用GPU在系统时间上的改进。 这就是他们所说的加速吗?由于GPU的总运行时间更长。

有一个问题(1)和考虑事项(2-3):

1) 你没有正确地计时。时间的方式包括theano编译时间。Theano编译不包括在配置文件中。您应该只计算花费在函数内部的时间。为此,请修改配置文件中使用Theano profiler的脚本

2) 这是一个玩具的例子。它做纯随机梯度下降(SGD)。为了从GPU获得良好的速度,我们需要使用带有SGD的minibatch。如果我们不这样做,GPU就没有足够的数据来并行计算

3) 由于这是一个只有一个小模型的玩具示例,因此速度会因所使用的CPU和GPU而发生很大变化。这可能是因为您使用了比原来更好的CPU进行计时,或者您使用了并行BLAS进行计时。

关于这一点,有一个问题(1)和考虑(2-3):

1) 你没有正确地计时。时间的方式包括theano编译时间。Theano编译不包括在配置文件中。您应该只计算花费在函数内部的时间。为此,请修改配置文件中使用Theano profiler的脚本

2) 这是一个玩具的例子。它做纯随机梯度下降(SGD)。为了从GPU获得良好的速度,我们需要使用带有SGD的minibatch。如果我们不这样做,GPU就没有足够的数据来并行计算

3) 由于这是一个只有一个小模型的玩具示例,因此速度会因所使用的CPU和GPU而发生很大变化。这可能是因为您使用了比原来更好的CPU进行计时,或者您使用了并行BLAS进行计时。

关于这一点,有一个问题(1)和考虑(2-3):

1) 你没有正确地计时。时间的方式包括theano编译时间。Theano编译不包括在配置文件中。您应该只计算花费在函数内部的时间。为此,请修改配置文件中使用Theano profiler的脚本

2) 这是一个玩具的例子。它做纯随机梯度下降(SGD)。为了从GPU获得良好的速度,我们需要使用带有SGD的minibatch。如果我们不这样做,GPU就没有足够的数据来并行计算

3) 由于这是一个只有一个小模型的玩具示例,因此速度会因所使用的CPU和GPU而发生很大变化。这可能是因为您使用了比原来更好的CPU进行计时,或者您使用了并行BLAS进行计时。

关于这一点,有一个问题(1)和考虑(2-3):

1) 你没有正确地计时。时间的方式包括theano编译时间。Theano编译不包括在配置文件中。您应该只计算花费在函数内部的时间。为此,请修改配置文件中使用Theano profiler的脚本

2) 这是一个玩具的例子。它做纯随机梯度下降(SGD)。为了从GPU获得良好的速度,我们需要使用带有SGD的minibatch。如果我们不这样做,GPU就没有足够的数据来并行计算

3) 由于这是一个只有一个小模型的玩具示例,因此速度会因所使用的CPU和GPU而发生很大变化。这可能是因为你在一个比原来更好的CPU上进行计时,或者你是用一个并行BLAS进行计时的