AnchoringFilterEnabled
public bool AnchoringFilterEnabledpublic bool AnchoringFilterEnabledpublic int AnchoringFilterGenerationsDetermines how long anchoring history is retained. A lower generation count keeps the filter fresher, but might forget anchored grains too quickly. A higher generation count retains history longer, but increases the memory usage and the risk of saturation.
Because the filter decays exactly once per repartitioning round, the actual time a "cold" grain remains anchored is directly tied to ActivationRepartitionerOptions and ActivationRepartitionerOptions. For example with the default of 3 generations and round periods randomly firing between 1-2 mins, a grain that goes completely "cold" will be retained in the filter for 4.5 mins (on average) before being dropped.
public int MaxEdgeCountThe maximum number of edges to retain in-memory during a repartitioning round. An edge represents how many calls were made from one grain to another.
If this number is N, it does not mean that N activations will be migrated after a repartitioning round. It also does not mean that if any activation ranked very high, that it will rank high at the next cycle. At the most extreme case, the number of activations that will be migrated, will equal this number, so this should give you some idea as to setting a reasonable value for this.
public TimeSpan MaxRoundPeriodpublic int MaxUnprocessedEdgespublic TimeSpan MinRoundPeriodpublic double ProbabilisticFilteringMaxAllowedErrorRateActivationRepartitionerOptions is set to true, otherwise this does not apply. public TimeSpan RecoveryPeriod