小编cod*_*key的帖子

可以同时激活多个Python虚拟环境吗?

我想通过虚拟环境使用tensorflow。但是,我想要运行的Python脚本要求我使用不包含tensorflow的单独虚拟环境。

是否可以同时激活这些?如果没有,我可以以某种方式合并两个虚拟环境吗?

python virtual-environment tensorflow

5
推荐指数
1
解决办法
1万
查看次数

系统面板中的图表在 Wandb (PyTorch) 中代表什么

我最近开始在 PyTorch 脚本中使用wandb模块,以确保 GPU 高效运行。然而,我不确定这些图表到底表明了什么。

我一直在关注此链接中的教程,https://lambdalabs.com/blog/weights-and-bias-gpu-cpu-utilization/,并对这个图感到困惑:

在此输入图像描述

我不确定 GPU % 和 GPU 内存访问 % 图表。博客中的描述如下:

  • GPU %:这张图可能是最重要的一张。它跟踪过去采样期间一个或多个内核在 GPU 上执行的时间百分比。基本上,您希望该值接近 100%,这意味着 GPU 一直忙于数据处理。上图有两条曲线。这是因为有两个 GPU,并且只有其中一个(蓝色)用于实验。蓝色 GPU 的繁忙程度约为 90%,这意味着它还不错,但仍有一些改进的空间。这种利用率次优的原因是我们在本实验中使用的小批量大小 (4)。GPU 经常从内存中获取少量数据,并且不能使内存总线或 CUDA 核心饱和。稍后我们将看到仅通过增加批量大小就可以增加这个数字。

  • GPU 内存访问百分比:这是一个有趣的问题。它测量过去采样周期内 GPU 内存被读取或写入的时间百分比。我们应该保持这个百分比较低,因为您希望 GPU 将大部分时间花在计算上,而不是从内存中获取数据。在上图中,繁忙的 GPU 有大约 85% 的正常运行时间访问内存。这是非常高的并且导致了一些性能问题。降低百分比的一种方法是增加批处理大小,以便数据获取变得更加高效。

我有以下问题:

  1. 上述数值之和并不等于 100%。看起来我们的 GPU 要么花时间在计算上,要么花时间在读/写内存上。这两个值的总和如何大于 100%?
  2. 为什么增加批量大小会减少访问 GPU 内存所花费的时间?

gpu machine-learning deep-learning pytorch

4
推荐指数
1
解决办法
3362
查看次数

如何截断一个numpy数组?

我正在尝试使用以下代码行将“数据”(大小为112943)截断为形状(1,15000):

data = np.reshape(data, (1, 15000))
Run Code Online (Sandbox Code Playgroud)

但是,这给了我以下错误:

ValueError: cannot reshape array of size 112943 into shape (1,15000)
Run Code Online (Sandbox Code Playgroud)

关于如何解决此错误的任何建议?

python numpy reshape valueerror numpy-slicing

3
推荐指数
1
解决办法
5253
查看次数