コード例 #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]);
         }
     }
 }
コード例 #2
0
 public static extern void TFE_OpSetAttrShapeList(SafeEagerOpHandle op, string attr_name, IntPtr[] dims, int[] num_dims, int num_values, SafeStatusHandle out_status);
コード例 #3
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected int TFE_OpAddInputList(SafeEagerOpHandle op, SafeEagerTensorHandle[] inputs, int num_inputs, SafeStatusHandle status)
 => c_api.TFE_OpAddInputList(op, inputs, num_inputs, status);
コード例 #4
0
 public static extern int TFE_OpGetOutputLength(SafeEagerOpHandle op, string input_name, SafeStatusHandle status);
コード例 #5
0
 public static extern void TFE_OpAddInput(SafeEagerOpHandle op, SafeEagerTensorHandle h, SafeStatusHandle status);
コード例 #6
0
 public static extern void TFE_OpSetAttrValueProto(SafeEagerOpHandle op, string attr_name, IMessage[] proto, int proto_len, SafeStatusHandle status);
コード例 #7
0
 public static extern void TFE_OpSetAttrTypeList(SafeEagerOpHandle op, string attr_name, TF_DataType[] values, int num_values);
コード例 #8
0
 public static extern void TFE_OpSetAttrFunctionName(SafeEagerOpHandle op, string attr_name, string data, int length);
コード例 #9
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected void TFE_OpSetAttrString(SafeEagerOpHandle op, string attr_name, string value, uint length)
 => c_api.TFE_OpSetAttrString(op, attr_name, value, length);
コード例 #10
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected void TFE_OpSetAttrType(SafeEagerOpHandle op, string attr_name, TF_DataType value)
 => c_api.TFE_OpSetAttrType(op, attr_name, value);
コード例 #11
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 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);
コード例 #12
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected void TFE_OpAddInput(SafeEagerOpHandle op, SafeEagerTensorHandle h, SafeStatusHandle status)
 => c_api.TFE_OpAddInput(op, h, status);
コード例 #13
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected void TFE_OpSetDevice(SafeEagerOpHandle op, string device_name, SafeStatusHandle status)
 => c_api.TFE_OpSetDevice(op, device_name, status);
コード例 #14
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected int TFE_OpGetOutputLength(SafeEagerOpHandle op, string input_name, SafeStatusHandle status)
 => c_api.TFE_OpGetOutputLength(op, input_name, status);
コード例 #15
0
 public static extern void TFE_OpSetAttrStringList(SafeEagerOpHandle op, string attr_name, string[] values, ulong[] lengths, int num_values);
コード例 #16
0
 private static unsafe extern void TFE_Execute(SafeEagerOpHandle op, IntPtr *retvals, ref int num_retvals, SafeStatusHandle status);
コード例 #17
0
 public static extern void TFE_OpSetAttrBool(SafeEagerOpHandle op, string attr_name, bool value);
コード例 #18
0
 public static extern void TFE_OpReset(SafeEagerOpHandle op_to_reset, string op_or_function_name, string raw_device_name, SafeStatusHandle status);
コード例 #19
0
 public static extern void TFE_OpSetAttrString(SafeEagerOpHandle op, string attr_name, string value, ulong length);
コード例 #20
0
 public static extern void TFE_OpSetAttrType(SafeEagerOpHandle op, string attr_name, TF_DataType value);
コード例 #21
0
 public static extern void TFE_OpSetAttrIntList(SafeEagerOpHandle op, string attr_name, long[] values, int num_values);
コード例 #22
0
 public static extern void TFE_OpSetAttrInt(SafeEagerOpHandle op, string attr_name, long value);
コード例 #23
0
 public static extern void TFE_OpSetDevice(SafeEagerOpHandle op, string device_name, SafeStatusHandle status);
コード例 #24
0
 public static extern void TFE_OpSetAttrFloat(SafeEagerOpHandle op, string attr_name, float value);
コード例 #25
0
 public static extern TF_AttrType TFE_OpGetAttrType(SafeEagerOpHandle op, string attr_name, ref byte is_list, SafeStatusHandle status);
コード例 #26
0
 public static extern void TFE_OpSetAttrShape(SafeEagerOpHandle op, string attr_name, long[] dims, int num_dims, SafeStatusHandle out_status);
コード例 #27
0
 public static extern int TFE_OpAddInputList(SafeEagerOpHandle op, [In, MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(SafeHandleArrayMarshaler))] SafeEagerTensorHandle[] inputs, int num_inputs, SafeStatusHandle status);
コード例 #28
0
ファイル: CApiTest.cs プロジェクト: SciSharp/TensorFlow.NET
 protected void TFE_Execute(SafeEagerOpHandle op, SafeEagerTensorHandle[] retvals, out int num_retvals, SafeStatusHandle status)
 => c_api.TFE_Execute(op, retvals, out num_retvals, status);