关于 torch.nn.DataParallel 的问题

2023-12-09

我是深度学习领域的新手。现在我正在复制一篇论文的代码。因为他们使用多个 GPU,所以有一个命令torch.nn.DataParallel(model, device_ids= args.gpus).cuda()在代码中。但我只有一个GPU,什么 我应该更改此代码以匹配我的 GPU 吗?

谢谢你!


DataParallel也应该在单个 GPU 上工作,但您应该检查是否args.gpus仅包含要使用的设备的 ID(应为 0)或None。 选择None将使模块使用所有可用的设备。

你也可以删除DataParallel因为您不需要它,只需通过调用即可将模型移动到 GPUmodel.cuda()或者,如我所愿,model.to(device) where device是设备的名称。

Example:

此示例展示了如何在单个 GPU 上使用模型,并使用以下命令设置设备.to()代替.cuda().

from torch import nn
import torch

# Set device to cuda if cuda is available
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

# Create model
model = nn.Sequential(
  nn.Conv2d(1,20,5),
  nn.ReLU(),
  nn.Conv2d(20,64,5),
  nn.ReLU()
)

# moving model to GPU
model.to(device)

如果你想使用DataParallel你可以这样做

# Optional DataParallel, not needed for single GPU usage
model1 = torch.nn.DataParallel(model, device_ids=[0]).to(device)
# Or, using default 'device_ids=None'
model1 = torch.nn.DataParallel(model).to(device)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于 torch.nn.DataParallel 的问题 的相关文章

  • python - 如何删除每行中的重复列表(pandas)?

    我的每一行中都包含一个列表 我想通过保留分数中的最高值来删除重复元素 这是我的数据框 df1 中的数据 pair score 0 A A 1 0000 1 A F 0 9990 2 A G 0 9985 3 A G 0 9975 4 A H
  • 在二维数组中进行所有可能的组合

    我正在尝试制作具有所有可能组合的 4x4 16 像素黑白图像数组 我制作了以下数组作为模板 template 0 0 0 0 start with all white pixels 0 0 0 0 0 0 0 0 0 0 0 0 然后我想迭
  • 函数名称未定义

    我有一段代码 看起来像这样 if name main main def main print hello 但是 当我尝试运行此代码时 出现错误 NameError 名称 main 未定义 我是否没有在函数 def main 的第一行定义名称
  • virtualenvwrapper 函数在 shell 脚本中不可用

    所以 我再一次制作了一个很棒的 python 程序 它让我的生活变得更加轻松 并节省了大量时间 当然 这涉及到一个 virtualenv 用mkvirtualenvvirtualenvwrapper 的功能 该项目有一个requiremen
  • caffe安装:opencv libpng16.so.16链接问题

    我正在尝试在 Ubuntu 14 04 机器上使用 python 接口编译 caffe 我已经安装了 Anaconda 和 opencvconda install opencv 我还安装了咖啡中规定的所有要求 并更改了注释块makefile
  • 删除 tkinter 文本默认绑定

    我正在制作一个简单的 tkinter 文本编辑器 但我想要所有默认绑定文本小部件如果可能的话删除 例如当我按Ctrl i它默认插入一个制表符 我制作了一个事件绑定来打印文本框中有多少行 我将事件绑定设置为Ctrl i以及 当我运行它时 它会
  • 如何在plotly(python)中的刻度标签和图形之间添加空格?

    如果我使用绘图创建水平条形图 则每个条形的标签都与图表相对应 我想在标签和图表之间添加一些空间 填充 边距 我怎样才能做到这一点 Example import plotly offline as py import plotly graph
  • 获取字符串模板中所有标识符列表的函数(Python)

    对于标准库string template在Python中 有没有一个函数可以获取所有标识符的列表 例如 使用以下 xml 文件
  • 为什么我会收到 ValueError:系列的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()

    以下代码给出了值错误 major males for row in recent grads if recent grads Men gt recent grads Women major males append recent grads
  • 无法使用Python请求会话模块登录网站

    我刚刚开始进行网络抓取 对于我的第一个项目 我尝试使用 requests Session 登录 artofproblemsolving com 并访问另一个用户的帐户 这是我的代码 import requests LOGIN URL htt
  • Python Apache Beam 端输入断言错误

    我对 Apache Beam Cloud Dataflow 还很陌生 所以如果我的理解不正确 我深表歉意 我正在尝试通过管道读取大约 30 000 行长的数据文件 我的简单管道首先从 GCS 打开 csv 从数据中提取标题 通过 ParDo
  • Asyncio:从未检索到任务异常的怪异

    假设我有一个简单的代码 import asyncio async def exc print 1 0 loop asyncio get event loop loop create task exc try loop run forever
  • argparse 不检查位置参数

    我正在创建一个脚本 它使用 argparse 接受位置参数和可选参数 我已经阅读了 Doug 的教程和 python 文档 但找不到答案 parser argparse ArgumentParser description script t
  • 右键单击 QPushButton 上的 contextMenu

    对于我的应用程序 我在 Qt Designer 中创建了一个 GUI 并将其转换为 python 2 6 代码 关于一些QPushButton 与设计器创建 我想添加右键单击上下文菜单 菜单选项取决于应用程序状态 如何实现这样的上下文菜单
  • Python FTP下载550错误

    我编写了一个 ftp 爬虫来下载特定文件 它会一直工作 直到找到要下载的特定文件 然后抛出此错误 ftplib error perm 550 该文件存在于我的下载文件夹中 但文件大小为 0 kb 我需要转换某些内容才能下载吗 我可以访问 f
  • 解析整数集的字符串并列出间隔

    I have 2 5 7 9 12 string 我想从中获取 2 5 7 8 9 12 列表 python中有没有内置的函数 Thanks UPD 我想 直接的答案是No 不管怎样 谢谢你的 片段 使用一个 建议者斯文 马尔纳克 s 2
  • 如何将 django ModelForm 字段显示为不可编辑

    接受我的初步教训django ModelForm 我想让用户能够编辑博客中的条目 BlogEntry has a date postedTime title and content 我想向用户展示一个编辑表单 其中显示所有这些字段 但仅包含
  • 将二进制数据视为文件对象?

    在此代码片段 由另一个人编写 中 self archive是一个大文件的路径并且raw file是以二进制数据形式读取的文件内容 with open self archive rb as f f seek offset raw file s
  • 带 Qt 的菜单栏/系统托盘应用程序

    我是 Qt PyQt 的新手 我正在尝试制作一个应用程序 其功能将从菜单栏 系统托盘执行 这里展示了一个完美的例子 我找不到关于如何做到这一点的好资源 有人可以建议吗 Thanks 我认为您正在寻找与QMenu and QMainWindo
  • 尝试 numba 时出现巨大错误

    我在使用 numba 时遇到了大量错误 讽刺的是 正确的结果是在错误之后打印的 我正在使用最新的 Anaconda python 并安装了 numba conda install numba 一次在 Ubuntu 13 64 位和 anac

随机推荐

  • 如何检查这是目录路径还是任何文件名路径?

    by this 为什么 fopen any path name r 不给出 NULL 作为返回值 我知道在linux中目录和文件被认为是文件 所以当我在 fopen 中以读取模式给出任何目录路径或文件路径时 它不会给出 NULL 文件描述符
  • 如何合并具有相同标识符 R 的行?

    I have been searching a lot but I can t seem to find an answer for what I m looking for The rows were originally melted
  • 如何在ASP.NET中实现GZip压缩?

    我正在尝试为我的 asp net 页面 包括我的 CSS 和 JS 文件 实现 GZip 压缩 我尝试了以下代码 但它只压缩我的 aspx 页面 从YSlow HttpContext context HttpContext Current
  • 适用于具有两个类的元素的 CSS 选择器

    有没有一种方法可以根据设置为两个特定类的 class 属性的值来选择带有 CSS 的元素 例如 假设我有 3 个 div div class foo Hello Foo div div class foo bar Hello World d
  • NSSortDescriptor问题

    我正在制作一个通讯录应用程序 我从 AddressBook 中获取姓名并将其存储在核心数据中 并使用以下命令将姓名显示在表格上NSFetchedResultsController However出现的第一个索引和部分是 后跟字母 但我想像在
  • 如何从 web.config 引用程序集?

    我需要将对 System XML dll 程序集的引用添加到 web config 中 为了尝试解决问题 此处提到 扩展方法存在问题 IXmlLineInfo 我尝试将以下行添加到 程序集 部分
  • Vue路由器参数对象类型在浏览器后退按钮上更改

    我正在传递一个参数论坛 它是 Vue js 中路由的对象 使用 vue router path forum forum name ForumView component ForumView props true 当我通过使用页面上的另一个链
  • 鼠标悬停时反转文本颜色

    我想在使用自定义 黑色 光标悬停黑色文本时反转黑色文本 这个GIF演示了效果 我无法用 CSS 和 JS 来实现这个工作 我猜是与混合混合模式 剪贴蒙版 伪元素和过滤器的一些组合 以下代码使光标变为白色 但不允许黑色文本变成白色 听起来很抽
  • 尝试抓住展开的线吗?斯威夫特 2.0、XCode 7

    我的代码中有以下展开行 UIApplication sharedApplication openURL NSURL string url 有时会出现这样的致命错误 致命错误 在解包可选值时意外发现 nil 我知道为什么有时会出现此错误 但是
  • 将解析结果自动串联成向量

    我编写了一些规则来将浮点数解析为两个 std vector 的浮点数 它们又存储在一个结构中 数据输入 object name01 v 1 5701 33 8087 0 3592 v 24 0119 0 0050 21 7439 a com
  • 在 WHERE 子句中应用条件过滤

    我在 SELECT 语句中加入几个表 如下所示 它具有三个参数 DECLARE Jobid INT 0 leadid INT 0 employeeid INT 0 SELECT e id l id j id e NAME l NAME j
  • 如何在 jsp 页面和 servlet 之间共享数据

    我有几个 jsp 页面和几个 servlet 我需要将一些信息保存到会话变量中 在jsp页面中我简单的引用 session get or session set 无需显式声明 HttpSession 对象 但在 servlet 中 适用正确
  • 如何防御性地编写代码以防止随机引用“表 0”和空值?

    我正在检索适量的数据并对其进行处理 没有什么独特的 起初奇怪的是 对于某些数据集 它工作得很好 而对于其他数据集 我收到以下错误消息 不过 这个错误消息似乎完全是胡言乱语 无论如何都是误导性的 因为失败集的数据并不比成功集的数据多 所以运行
  • 排序命令在 unix 中无法正常工作以对 csv 文件进行排序

    我有一个 csv 文件 需要根据时间戳进行排序 它是 csv 中的第三列 我使用以下命令进行排序 awk NR lt 2 print next print sort t k3 8 3 11nr k3 1 3 3rM k3 4rd 当年份为单
  • Session 变量在 ASP.Net 页面的 Parallel.For 循环中是线程安全的吗

    在下面的代码中更改会话变量 即 Session Progress 是否安全 此代码是 ASP Net 页面隐藏代码的一部分 并行运行循环时 两个迭代可能会同时运行 如果两个迭代都更改了同一会话变量 则会导致问题 public void Lo
  • 如何为我的 AWS-EB 实例启用 SSH?

    我有一个正在运行的 AWS Elastic Beanstalk 实例 并附加了 RDS 数据库 并且希望从我的开发计算机启用 SSH 最好的方法是什么 具体来说 我可以从 AWS 控制台执行此操作吗 我能够保留当前的所有 EB 设置和结构吗
  • Cassandra 更改列类型:哪些类型兼容?

    互联网上有一些关于无法更改列类型的示例的一些零碎信息 例如 在数据斯塔克斯网站有一个提到 更改聚类列的类型 更改其上的列 定义了一个索引 或者 例如 here提到你无法转换uuid to timeuuid 从我个人的经历来看 我无法改变te
  • 使用 MinGW 编译为带有一些未定义引用的 .dll

    我听说所有 Windows DLLmust包含它引用的每个符号的定义 因此像这样的 DLL 文件永远不会编译 因为它没有实现bar void bar declspec dllexport void foo bar 我认为类比是 DLL 本质
  • 更改字符向量的选定元素

    以下原则是否有更短的版本来重命名数据框的某些列 data1 lt data frame a 1 3 b 1 3 c 1 3 data1Names lt names data1 data1Names data1Names a lt hello
  • 关于 torch.nn.DataParallel 的问题

    我是深度学习领域的新手 现在我正在复制一篇论文的代码 因为他们使用多个 GPU 所以有一个命令torch nn DataParallel model device ids args gpus cuda 在代码中 但我只有一个GPU 什么 我