Esempio n. 1
0
 /// <summary>
 /// Execute the operation defined by <paramref name="op"/> and return handles to computed
 /// tensors in <paramref name="retvals"/>.
 /// </summary>
 /// <remarks>
 /// Upon successful return, the first <paramref name="num_retvals"/> slots in <paramref name="retvals"/> will
 /// contain handle instances which the caller is responsible for disposing once they are no longer in use.
 /// </remarks>
 /// <param name="op"></param>
 /// <param name="retvals"></param>
 /// <param name="num_retvals"></param>
 /// <param name="status"></param>
 public static void TFE_Execute(SafeEagerOpHandle op, SafeEagerTensorHandle[] retvals, out int num_retvals, SafeStatusHandle status)
 {
     unsafe
     {
         num_retvals = retvals?.Length ?? 0;
         var rawReturns = stackalloc IntPtr[num_retvals];
         TFE_Execute(op, rawReturns, ref num_retvals, status);
         for (var i = 0; i < num_retvals; i++)
         {
             // A handle is created for every return, even if rawReturns[i] is null. The resulting handle will be
             // non-null but invalid, which is the same behavior P/Invoke gives for non-array SafeHandle return
             // values.
             retvals[i] = new SafeEagerTensorHandle(rawReturns[i]);
         }
     }
 }
Esempio n. 2
0
 public static extern void TFE_OpSetAttrShapeList(SafeEagerOpHandle op, string attr_name, IntPtr[] dims, int[] num_dims, int num_values, SafeStatusHandle out_status);
Esempio n. 3
0
 protected int TFE_OpAddInputList(SafeEagerOpHandle op, SafeEagerTensorHandle[] inputs, int num_inputs, SafeStatusHandle status)
 => c_api.TFE_OpAddInputList(op, inputs, num_inputs, status);
Esempio n. 4
0
 public static extern int TFE_OpGetOutputLength(SafeEagerOpHandle op, string input_name, SafeStatusHandle status);
Esempio n. 5
0
 public static extern void TFE_OpAddInput(SafeEagerOpHandle op, SafeEagerTensorHandle h, SafeStatusHandle status);
Esempio n. 6
0
 public static extern void TFE_OpSetAttrValueProto(SafeEagerOpHandle op, string attr_name, IMessage[] proto, int proto_len, SafeStatusHandle status);
Esempio n. 7
0
 public static extern void TFE_OpSetAttrTypeList(SafeEagerOpHandle op, string attr_name, TF_DataType[] values, int num_values);
Esempio n. 8
0
 public static extern void TFE_OpSetAttrFunctionName(SafeEagerOpHandle op, string attr_name, string data, int length);
Esempio n. 9
0
 protected void TFE_OpSetAttrString(SafeEagerOpHandle op, string attr_name, string value, uint length)
 => c_api.TFE_OpSetAttrString(op, attr_name, value, length);
Esempio n. 10
0
 protected void TFE_OpSetAttrType(SafeEagerOpHandle op, string attr_name, TF_DataType value)
 => c_api.TFE_OpSetAttrType(op, attr_name, value);
Esempio n. 11
0
 protected void TFE_OpSetAttrShape(SafeEagerOpHandle op, string attr_name, long[] dims, int num_dims, SafeStatusHandle out_status)
 => c_api.TFE_OpSetAttrShape(op, attr_name, dims, num_dims, out_status);
Esempio n. 12
0
 protected void TFE_OpAddInput(SafeEagerOpHandle op, SafeEagerTensorHandle h, SafeStatusHandle status)
 => c_api.TFE_OpAddInput(op, h, status);
Esempio n. 13
0
 protected void TFE_OpSetDevice(SafeEagerOpHandle op, string device_name, SafeStatusHandle status)
 => c_api.TFE_OpSetDevice(op, device_name, status);
Esempio n. 14
0
 protected int TFE_OpGetOutputLength(SafeEagerOpHandle op, string input_name, SafeStatusHandle status)
 => c_api.TFE_OpGetOutputLength(op, input_name, status);
Esempio n. 15
0
 public static extern void TFE_OpSetAttrStringList(SafeEagerOpHandle op, string attr_name, string[] values, ulong[] lengths, int num_values);
Esempio n. 16
0
 private static unsafe extern void TFE_Execute(SafeEagerOpHandle op, IntPtr *retvals, ref int num_retvals, SafeStatusHandle status);
Esempio n. 17
0
 public static extern void TFE_OpSetAttrBool(SafeEagerOpHandle op, string attr_name, bool value);
Esempio n. 18
0
 public static extern void TFE_OpReset(SafeEagerOpHandle op_to_reset, string op_or_function_name, string raw_device_name, SafeStatusHandle status);
Esempio n. 19
0
 public static extern void TFE_OpSetAttrString(SafeEagerOpHandle op, string attr_name, string value, ulong length);
Esempio n. 20
0
 public static extern void TFE_OpSetAttrType(SafeEagerOpHandle op, string attr_name, TF_DataType value);
Esempio n. 21
0
 public static extern void TFE_OpSetAttrIntList(SafeEagerOpHandle op, string attr_name, long[] values, int num_values);
Esempio n. 22
0
 public static extern void TFE_OpSetAttrInt(SafeEagerOpHandle op, string attr_name, long value);
Esempio n. 23
0
 public static extern void TFE_OpSetDevice(SafeEagerOpHandle op, string device_name, SafeStatusHandle status);
Esempio n. 24
0
 public static extern void TFE_OpSetAttrFloat(SafeEagerOpHandle op, string attr_name, float value);
Esempio n. 25
0
 public static extern TF_AttrType TFE_OpGetAttrType(SafeEagerOpHandle op, string attr_name, ref byte is_list, SafeStatusHandle status);
Esempio n. 26
0
 public static extern void TFE_OpSetAttrShape(SafeEagerOpHandle op, string attr_name, long[] dims, int num_dims, SafeStatusHandle out_status);
Esempio n. 27
0
 public static extern int TFE_OpAddInputList(SafeEagerOpHandle op, [In, MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(SafeHandleArrayMarshaler))] SafeEagerTensorHandle[] inputs, int num_inputs, SafeStatusHandle status);
Esempio n. 28
0
 protected void TFE_Execute(SafeEagerOpHandle op, SafeEagerTensorHandle[] retvals, out int num_retvals, SafeStatusHandle status)
 => c_api.TFE_Execute(op, retvals, out num_retvals, status);