private ProducerVertex(int id, Stage <Epoch> stage, int numberToSend) : base(id, stage) { this.numberToSend = numberToSend; this.output = new VertexOutputBuffer <int, Epoch>(this); this.NotifyAt(new Epoch(0)); }
public IntegratorShard(int index, Stage <Epoch> stage) : base(index, stage) { this.input = new VertexInputBuffer <Weighted <R>, Epoch>(this); this.output = new VertexOutputBuffer <Weighted <R>, Epoch>(this); this.currentIntegration = new Dictionary <R, Int64>(); }
internal ProgressUpdateCentralizer(int index, Stage <Pointstamp> stage, ProgressUpdateAggregator aggregator) : base(index, stage) { this.Aggregator = aggregator; this.Output = new VertexOutputBuffer <long, Pointstamp>(this); this.PCS = new PointstampCountSet(this.Stage.InternalGraphManager.Reachability); }
internal ProgressUpdateCentralizer(int index, Stage <Empty> stage, ProgressUpdateAggregator aggregator) : base(index, stage) { this.Aggregator = aggregator; this.Output = new VertexOutputBuffer <Update, Empty>(this); this.PCS = new PointstampCountSet(this.Stage.InternalComputation.Reachability); }
public Reporting( VertexContext <T> c, Stream <string, T> inlineStats, Stream <Pair <string, ReportingRecord <Int64> >, T> aggInt, Stream <Pair <string, ReportingRecord <double> >, T> aggDouble) { context = c; if (c.parent.parent.manager.Reporting.HasDomain) { rootVertex = c.parent.parent.manager.Reporting.RootDomainVertex(c.Vertex.VertexId); } else { rootVertex = null; } if (inlineStats == null) { inlineStatistics = null; } else { inlineStatistics = new VertexOutputBuffer <string, T>(c.Vertex); inlineStats.StageOutput.Register(inlineStatistics); } if (aggInt == null) { aggregateInt = null; aggregateDouble = null; } else { aggregateInt = new VertexOutputBuffer <Pair <string, ReportingRecord <long> >, T>(c.Vertex); aggInt.StageOutput.Register(aggregateInt); aggregateDouble = new VertexOutputBuffer <Pair <string, ReportingRecord <double> >, T>(c.Vertex); aggDouble.StageOutput.Register(aggregateDouble); } }
/// <summary> /// Creates a new BinaryVertex /// </summary> /// <param name="index">vertex index</param> /// <param name="stage">host stage</param> public BinaryVertex(int index, Stage <TTime> stage) : base(index, stage) { this.Output = new VertexOutputBuffer <TOutput, TTime>(this); }
public ProgressUpdateAggregator(int index, Stage <Pointstamp> stage) : base(index, stage) { this.Output = new VertexOutputBuffer <long, Pointstamp>(this); }
public AggregateStatisticsVertex(int index, Stage <T> parent) : base(index, parent) { output = new VertexOutputBuffer <Pair <string, ReportingRecord <R> >, T>(this); }
internal IngressVertex(int index, Stage <IterationIn <T> > stage, Func <R, int> initialIteration) : base(index, stage) { Output = new VertexOutputBuffer <R, IterationIn <T> >(this); this.InitialIteration = initialIteration; }
internal EgressVertex(int index, Stage <T> stage, int iterationNumber) : base(index, stage) { outputs = new VertexOutputBuffer <R, T>(this); this.releaseAfter = iterationNumber; }
public ProgressUpdateAggregator(int index, Stage <Empty> stage) : base(index, stage) { this.Output = new VertexOutputBuffer <Update, Empty>(this); }
internal StreamingInputVertex(int index, Stage <Epoch> stage) : base(index, stage) { this.inputQueue = new System.Collections.Concurrent.ConcurrentQueue <Instruction>(); this.output = new VertexOutputBuffer <S, Epoch>(this); }
public ProgressUpdateAggregator(int index, Stage <Empty> stage) : base(index, stage) { this.Output = new VertexOutputBuffer <Update, Empty>(this); NaiadTracing.Trace.LockInfo(this.Lock, "Aggregator Lock"); }