You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the core workflow batches all duties in the same the slot all the way from Scheduler to ParSigEx. But due to Aggregator requiring a different API, neither ParSignedDutySet, not SignedDutySet, we opted for non-batched individual API for aggregation and therefore broadcasting.
Batching broadcasts should have a positive effect on performance, both in charon broadcast delay as well as beacon node load. This should espeically help in performance clusters.
🛠️ Proposed solution
Change the core workflow API of SigAgg and all subsequent components to something like:
// SigAgg aggregates threshold partial signatures.
type SigAgg interface {
// Aggregate aggregates the partially signed duties for the DV.
Aggregate(context.Context, Duty, map[PubKey][]ParSignedData) error
// Subscribe registers a callback for aggregated signed duties.
Subscribe(func(context.Context, Duty, SignedDataSet) error)
}
The text was updated successfully, but these errors were encountered:
Introduce the `core.SignedDataSet` type and refactor `sigagg`, `aggSigDB` and `bcast` interfaces to use it. This supports batching when broadcasting signed data to beacon API which should improve latency and decrease BN load for large clusters.
category: feature
ticket: #2373
🎯 Problem to be solved
Currently, the core workflow batches all duties in the same the slot all the way from Scheduler to ParSigEx. But due to Aggregator requiring a different API, neither ParSignedDutySet, not SignedDutySet, we opted for non-batched individual API for aggregation and therefore broadcasting.
Batching broadcasts should have a positive effect on performance, both in charon broadcast delay as well as beacon node load. This should espeically help in performance clusters.
🛠️ Proposed solution
Change the core workflow API of SigAgg and all subsequent components to something like:
The text was updated successfully, but these errors were encountered: