def METHOD_NAME(coreml_model, model_path, dev):
    coreml_model = create_coreml_model()
    out_spec = coreml_model.output_description._fd_spec
    out_names = [spec.name for spec in out_spec]
    # inference via coremltools
    inputs = {}
    for in_spec in coreml_model.input_description._fd_spec:
        name = in_spec.name
        shape = in_spec.type.multiArrayType.shape
        inputs[name] = np.random.random_sample(shape)
    coreml_outputs = [coreml_model.predict(inputs)[name] for name in out_names]
    # inference via tvm coreml runtime
    runtime = coreml_runtime.create("main", model_path, dev)
    for name in inputs:
        runtime.set_input(name, tvm.nd.array(inputs[name], dev))
    runtime.invoke()
    tvm_outputs = [runtime.get_output(i).numpy() for i in range(runtime.get_num_outputs())]
    for c_out, t_out in zip(coreml_outputs, tvm_outputs):
        np.testing.assert_almost_equal(c_out, t_out, 3)