GPU支持AWS语义细分

问题描述

我已经在笔记本中使用AWS提供的语义分段算法训练了一个模型。 将训练有相同尺寸图像的512x512尺寸的图像馈送到该网络大约需要10秒钟。馈送大小为1024x512的图像大约需要两倍的时间。

这感觉像是荒谬的时间,所以我更深入地研究,使用gluoncv和基于AWS语义分段的mxnet将模型加载到EC2实例中。

在这里,我找到了一个ctx标志,用于声明要使用CPU还是GPU。 我在AWS上找不到该标志,因此我认为必须根据我选择运行的实例在后台处理该标志。

但是,将笔记本上训练的模型加载到为GPU设置的EC2实例中时,出现以下错误: “ RuntimeError:参数'fcn0_resnetv1s_conv0_weight'尚未在上下文gpu(0)上初始化。仅在[cpu(0)]上初始化。”

我将其解释为仅在CPU上运行的网络,并依次解释了为什么通过网络提供512x512图像需要10秒的时间。

我在这里想念什么吗? 如何使AWS提供的语义分割算法可以在GPU上运行?

关于, C

解决方法

According to its documentation SageMaker语义分段支持CPU和GPU进行推理。

SageMaker内置算法容器无法部署在笔记本电脑中,它们只能通过托管端点或批处理转换来部署。因此,如果要部署到GPU,则需要在struct MyDestination: View { var color: Color var body: some View { Text("Hello,MyDestination").background(color) } } struct ContentView: View { var body: some View { NavigationView { VStack { NavigationLink(destination: MyDestination(color: Color.yellow)) { Text("Yellow") } } .navigationTitle("Menu Demo").navigationBarTitleDisplayMode(.inline) .toolbar { ToolbarItem(placement: .primaryAction) { Menu { NavigationLink(destination: MyDestination(color: Color.red)) { Text("Red") } Button("Blue",action: { print("Blue") }) } label: { Label("",systemImage: "ellipsis.circle").imageScale(.large) } } } } } } 调用或终结点创建SDK调用(如果不使用Python SDK)中指定支持GPU的计算机

某些算法具有相当透明的内部结构(例如语义分割算法),使您可以离线读取它们,例如在笔记本电脑或自定义环境中。

在这种情况下,为了自己运行GPU推理,您需要在GPU上下文中同时包含模型和输入。要将模型移至GPU,可以使用model.deploy()

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...