import migraphx p = migraphx.parse_onnx("conv_relu_maxpool_test.onnx") print(p) print("Compiling ...") p.compile(migraphx.get_target("gpu"), offload_copy=False) print(p) params = {} for key, value in p.get_parameter_shapes().items(): print("Parameter {} -> {}".format(key, value)) params[key] = migraphx.to_gpu(migraphx.generate_argument(value)) r = migraphx.from_gpu(p.run(params)) print(r)
filename = token[0] label = token[1] img_pil = Image.open(imagedir + "/" + filename) if img_pil.mode != 'RGB': img_pil2 = Image.new("RGB", img_pil.size) img_pil2.paste(img_pil) img_pil = img_pil2 img_tensor = preprocess(img_pil) img_tensor.unsqueeze_(0) img_variable = Variable(img_tensor) image = img_variable.numpy() try: tmp_result = migraphx.to_gpu(migraphx.argument(image)) params['0'] = tmp_result result = np.array(migraphx.from_gpu(model.run(params)), copy=False) maxval = result.argmax() maxlist = result.argsort() if int(label) == maxlist[0][999]: ilabel = 'first' elif int(label) == maxlist[0][998]: ilabel = 'second' elif int(label) == maxlist[0][997]: ilabel = 'third' elif int(label) == maxlist[0][996]: ilabel = 'fourth' elif int(label) == maxlist[0][995]: ilabel = 'fifth' else: ilabel = 'missing' print filename, ilabel, int(label), maxlist[0][999], maxlist[0][
def run(p): params = {} for key, value in p.get_parameter_shapes().items(): params[key] = migraphx.to_gpu(migraphx.generate_argument(value)) return migraphx.from_gpu(p.run(params))