public GraphDef ToGraphDef() { TF_Buffer b = this.ToGraphDefBuffer(); var stream = CodedInputStream.CreateWithLimits((UnmanagedMemoryStream)b, 256 * 1024 * 1024, 100); var def = GraphDef.Parser.ParseFrom(stream); b.Delete(); return(def); }
public TF_Status Run(TF_Output[] inputs, TF_Tensor[] inputValues, TF_Output[] outputs, TF_Tensor[] outputValues, TF_Operation[] targets = null, TF_Buffer runMetadata = null, TF_Buffer runOptions = null) { var status = tf_status.TF_NewStatus(); var _inputs = inputs.Select(i => i.__Instance).ToArray(); var _inputValues = inputValues.Select(i => i.__Instance).ToArray(); var _outputs = outputs.Select(i => i.__Instance).ToArray(); var _outputValues = outputValues.Select(i => i.__Instance).ToArray(); var _targets = targets?.Select(i => i.__Instance).ToArray(); var ro = new Buffer(new byte[0]); fixed(IntPtr *_i = _inputs) fixed(IntPtr * _iv = _inputValues) fixed(IntPtr * _o = _outputs) fixed(IntPtr * _ov = _outputValues) fixed(IntPtr * _t = _targets) { TF_SessionRun2( this.__Instance, IntPtr.Zero, inputs[0].__Instance, inputValues[0].__Instance, 0, outputs[0].__Instance, outputValues[0].__Instance, //outputValues[0].__Instance, 0, targets[0].__Instance, 1, IntPtr.Zero, status.__Instance ); } //c_api.TF_SessionRun //TF_SessionRun2(this, null, inputs, inputValues, inputs.Length, outputs, outputValues, outputs.Length, null, 0, null, status); var msg = tf_status.TF_Message(status); return(status); }