首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GPU支持AWS语义分割

GPU支持AWS语义分割
EN

Stack Overflow用户
提问于 2020-09-15 15:24:42
回答 1查看 64关注 0票数 0

我已经使用AWS提供的语义分割算法在笔记本中训练了一个模型。将512x512大小的图像馈送到该网络,并在相同大小的图像上进行训练,大约需要10秒。输入大小为1024x512的图像所需的时间大约是原来的两倍。

这感觉像是一段荒谬的时间,所以我深入挖掘,使用gluoncv和mxnet将模型加载到一个EC2实例中,这是亚马逊网络服务语义分割的基础。

在这里我发现了一个ctx标志,用于声明我想使用CPU还是GPU。我在AWS上找不到这个标志,所以我的假设是这必须在后台处理,这取决于我选择运行的实例。

然而,当将我在笔记本上训练的模型加载到为图形处理器设置的EC2实例中时,我得到了以下错误:"RuntimeError:参数'fcn0_resnetv1s_conv0_weight‘没有在上下文图形处理器(0)上初始化。它只在cpu(0)上初始化。“

我将其解释为网络仅在CPU上运行,并反过来解释了为什么需要10秒才能通过网络提供512x512图像。

我是不是漏掉了什么?如何让AWS提供的语义分割算法使用GPU运行?

致敬,C

EN

回答 1

Stack Overflow用户

发布于 2020-10-18 23:07:29

According to its documentation SageMaker语义分割同时支持处理器和图形处理器进行推理。

SageMaker内置算法容器不能在notebooks中部署,它们只能通过托管端点或批量转换进行部署。因此,如果您想要部署到GPU,则需要在model.deploy()调用或端点创建SDK调用中指定启用GPU的计算机(如果不使用Python SDK)

一些算法有相当透明的内部结构(比如语义分割算法),可以让你离线阅读它们,例如在Notebook中或在你的自定义环境中。

在这种情况下,为了自己运行GPU推理,您需要在GPU上下文中同时具有模型和输入。要将模型移动到GPU,可以使用net.collect_params().reset_ctx(mxnet.gpu())

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63896995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档