---
title: Asynchronous Message Updates
url: https://www.emergentmind.com/topics/asynchronous-message-updates
type: topic
---

# Asynchronous Message Updates

Asynchronous message updates denote a broad class of mechanisms in which message production, propagation, and incorporation proceed without a single global lockstep, so that senders, workers, or nodes can advance at different rates and recipients integrate delayed, partial, or reordered information later. In the literature, this notion spans asynchronous coordinate updates in belief propagation, partial-neighbor averaging in decentralized SGD, stale client updates in federated learning, pairwise gossip dissemination in consensus, deferred metadata materialization in distributed filesystems, runtime send/receive splitting in choreographies, and selective node updates in graph neural networks [1206.6837] [2306.06559] [1711.11211] [2410.08618] [2509.06777].

## 1. Multiple meanings of asynchrony

The term is not uniform across domains. In fixed-point inference, asynchronous message updates mean that only one message coordinate is updated at a time, replacing the global synchronous operator
\[
f^s(v_1,\dots,v_{|M|}) = \bigl(f_1(v),\dots,f_{|M|}(v)\bigr)
\]
with coordinate-wise updates
\[
f_m^a(v_1,\dots,v_{|M|}) = (v_1,\dots,f_m(v),\dots,v_{|M|}),
\]
so later updates can immediately use freshly updated messages rather than stale previous-round values [1206.6837].

In choreography semantics, asynchrony is defined by two properties: messages can be sent without the intended receiver being ready, and all sent messages are eventually received. This is realized by splitting a communication such as \(p.e \to q\) into runtime send and receive pieces, so that sender-side progress can be reordered ahead of receiver-side consumption [1711.11211].

In wireless random access, by contrast, asynchrony refers to the signal model rather than the execution schedule of the inference algorithm. Users are synchronous at symbol level but asynchronous at frame level, with an unknown integer delay
\[
t_n \in \{0,1,\dots,D\},
\]
and inference must jointly recover activity, delay, and channel state [2101.00651].

Collaborative perception uses yet another notion: multi-source fusion is asynchronous when the latest updates from different sources may have different generation times, but fusion is admissible only if the generation-time gap remains within a threshold \(T_n<d_n\). The age process resets only when this temporal alignment condition is met [2310.04813].

This diversity matters because a common misconception is that “asynchronous” always means wait-free computation. In the cited literature it may instead mean delayed visibility, frame-level timing mismatch, non-blocking sends, or selective participation under a logical rather than wall-clock iteration counter.

## 2. Scheduling, delay control, and partial participation

In asynchronous belief propagation, the central theoretical question is whether scheduling changes convergence. Under a max-norm contraction assumption and a minimal fairness condition stating that every message is updated infinitely often, any asynchronous propagation schedule converges to the unique fixed point. The same analysis shows that round-robin asynchronous BP has a worst-case contraction factor \(\rho_A\) satisfying
\[
\rho_A \le \rho_S,
\]
so its guaranteed convergence rate is never worse than that of synchronous propagation. On top of this, residual belief propagation prioritizes the message with largest residual
\[
r_m(v)=\|f_m(v)-v_m\|_m,\qquad m^*=\arg\max_m r_m(v^{(t)}),
\]
using a priority queue to focus updates where local inconsistency is greatest [1206.6837].

In decentralized stochastic optimization, the main tension is between synchronization barriers and stale parameters. DSGD-AAU replaces both full-neighbor synchronous averaging and fully wait-free asynchronous mixing by adaptive partial averaging. At iteration \(k\), only a subset of workers \(\mathcal N(k)\subset \mathcal N\) is active, and each active worker averages over a subset \(\mathcal N_j(k)\subset \mathcal N_j\). The worker update is
\[
\tilde{w}_j(k)=w_j(k-1)-\eta g_j(w_j(k-1)),\qquad
w_j(k)=\sum_{i\in N_j(k)} \tilde{w}_i(k)P_{i,j}(k),
\]
with a time-varying doubly stochastic Metropolis matrix. The adaptive rule is connectivity-driven rather than threshold-based: the Pathsearch procedure keeps waiting only until a new useful communication path is established, and the proof upper bounds staleness periods in DSGD-AAU by \(N-1\). Under bounded connectivity time, the method attains the canonical decentralized rate
\[
\mathcal O\!\left(\frac{1}{\sqrt{NK}}\right),
\]
which the paper interprets as linear speedup in \(N\) despite asynchronous partial participation [2306.06559].

Federated optimization makes the same issue explicit at the aggregation rule. The generalized asynchronous update is
\[
\theta^{n+1} = \theta^n + \eta_g \sum_{i=1}^M w_i(n) A_i(p_i(n)),
\]
with stochastic aggregation weights
\[
w_i(n) := \mathbf{1}(T_i^n \le \Delta t^n)\, d_i(n).
\]
Here \(p_i(n)\) records the recency of the global model seen by client \(i\), while \(d_i(n)\) can correct for unequal arrival frequencies. The framework shows that asynchronous arrivals induce a time-varying effective objective
\[
\mathcal{L}^n(\theta) := \sum_{i=1}^M q_i(n)L_i(\theta),
\]
so naive asynchrony can optimize the wrong mixture of client objectives. FedFix addresses this by aggregating all messages received in a fixed interval \(\Delta t\), with weights
\[
d_i = \left[\frac{T_i}{\Delta t}\right] p_i,
\]
thereby interpolating between synchronous FedAvg and one-message-at-a-time asynchronous aggregation [2206.10189].

## 3. Learning systems built around asynchronous updates

AsyncMesh extends asynchrony across both data and pipeline parallelism. In pipeline parallelism, a stage update is based on delayed parameters,
\[
\mathbf{w}_{ij}^{t+1} = \mathbf{w}_{ij}^{t} - \eta_t\,\nabla f_j(\mathbf{w}_{ij}^{\,t-\delta_j}; \mathbf{x}_i^{\,t-\delta_j}),
\]
and staleness is mitigated with weight look-ahead. In data parallelism, workers exchange only a random sparse subset of parameters and apply delayed sparse averages,
\[
w_{i:\mu}^{t} = \begin{cases} \bar{w}_{i:\mu}^{\,t-\tau}, & \mu\in Q^{t-\tau},\\[1ex] \hat{w}_{i:\mu}^{\,t}, & \mu\notin Q^{t-\tau}, \end{cases}
\]
then correct the stale average with an EMA-based estimate of drift,
\[
\mathbf{v}_{i}^{t,t-\tau} = (1-\lambda_t)\,\mathbf{v}_{i}^{t-1,t-\tau} + \lambda_t\left( \hat{\mathbf{w}_{i}^{\,t,t-\tau} - \hat{\mathbf{w}_{i}^{\,t-\tau,t-\tau} \right),
\qquad
\tilde{\mathbf{w}_{i}^{\,t,t-\tau} = \bar{\mathbf{w}^{\,t-\tau,t-\tau} + \mathbf{v}_{i}^{t,t-\tau}.
\]
The paper proves consensus in expectation for sparse averaging and delayed averaging with EMA, and reports experiments on language models up to \(1\)B parameters that match the fully synchronous baseline while significantly reducing communication overhead [2601.22442].

PD-ASGD moves the same discussion inside backpropagation. A forward thread computes a loss on the latest visible parameters \(\theta^u\), sends that loss to a backward thread, and then continues immediately. Each backward thread iterates from layer \(M\) to \(1\), computes \(G(\theta_{m,k}^v)\), applies
\[
\theta_{m,k}^{v+1} \gets \theta_{m,k}^v - \eta \cdot G,
\]
and writes the updated layer back to shared memory immediately. This creates a pipeline of loss messages and layer-wise parameter writes rather than one fully synchronized forward–backward unit. The paper models staleness as additive perturbation \(\theta+\xi\), derives the stale-gradient expansion
\[
\nabla_{\theta} \mathcal{L}(\theta + \xi , X, Y) \;\approx\; \nabla_{\theta} \mathcal{L}(\theta) + \nabla_{\theta}^2 \mathcal{L}(\theta)^{\top} \xi,
\]
and proves convergence to a stationary distribution of the induced SDE. Empirically, layer-wise updates achieve higher accuracy than block updates on CIFAR-10 and CIFAR-100, while asynchronous variants yield substantial time-to-accuracy gains over LAPSGD and LPPSGD [2410.05985].

FedRevive addresses stale asynchronous updates in federated learning by treating them as knowledge sources rather than merely as noisy parameter deltas. If a client trained on \(\mathbf{x}^{(t-\tau_i^t)}\) returns \(\tilde{\mathbf{x}_i^{(t-\tau_i^t)}\), the server forms the raw update
\[
\Delta_i^{(t-\tau_i^t)} = \tilde{\mathbf{x}_i^{(t-\tau_i^t)} - \mathbf{x}^{(t-\tau_i^t)}
\]
and a data-free distillation update
\[
\Delta_i^{\text{KD} \leftarrow \text{KDRevive}\!\left(\tilde{\mathbf{x}_i^{(t-\tau_i^t)},\, \mathbf{x}^{(t)}\right),
\]
then combines them through a staleness-dependent weight \(\beta(\tau_i^t)\):
\[
\mathbf{x}^{(t+1)} \leftarrow \mathbf{x}^{(t)} + \eta_s \left[(1-\beta(\tau_i^t))\Delta_i^{(t-\tau_i^t)} + \beta(\tau_i^t)\Delta_i^{\text{KD}\right].
\]
The server maintains a rolling KD buffer of recent client models and uses a meta-learned generator to synthesize pseudo-samples for multi-teacher distillation. Reported gains are up to \(32.1\%\) faster training and up to \(21.5\%\) higher final accuracy than asynchronous baselines [2511.00655].

## 4. State dissemination, consensus, and storage

Asynchronous message updates are equally central in state-replication systems. The ACA protocol adopts a hybrid pull/push gossip mechanism in which each node periodically sends a Synchronisation Request containing its Gossip List and Lamport time, and the contacted peer replies with its Gossip List, Lamport time, and a bundle of events believed unknown to the requester. Event insertion is incremental and local: frame numbers and flag tables are recomputed rather than transmitted. This yields repeated bilateral gossip synchronization without global rounds, but the paper explicitly states that the current version does not cover node failure or significantly delayed response [2001.07704].

Atomic snapshot in asynchronous message-passing systems uses a different structure: long-lived generalized lattice agreement. A call \(\Propose(v)\) first disseminates \(\langle REQUEST, v\rangle\), buffered values are gathered in \(\MPool\), then candidate proposals are spread through \(\langle PROPOSE, v\rangle\), validated after receiving support \(n-f\), and learned values are accelerated by \(\langle ACCEPT, \Learned\rangle\). The paper’s main latency results are: at most \(2\) rounds in the good case without contention, at most \(8\) rounds when no correct node receives a message from a faulty one during the operation, worst-case \(O(k)\) rounds where \(k\) is the number of active faulty nodes, and constant amortized latency. It also introduces IRA, a round-based metric for long-lived asynchronous executions with holes, because conventional latency notions become inadequate in that setting [2408.02562].

AsyncFS applies the same principle to filesystem metadata. Operations such as `create`, `delete`, and `mkdir` can return early after the target inode has been durably logged and updated locally and the parent-directory effect has only been appended to a change-log. The parent directory is then marked scattered in an in-network stale set stored on a programmable switch. Before `statdir` or `readdir` returns, if the directory is scattered, the owner aggregates change-logs from all servers, applies them, and only then answers the read. The switch tracks 49-bit directory fingerprints, supports linearizable `insert`, `query`, and `remove`, and enables batching plus change-log recast before reads. On skewed workloads, the reported improvements are up to \(13.34\times\) and \(3.85\times\) higher throughput, and \(61.6\%\) and \(57.3\%\) lower latency than InfiniFS and CFS-KV, respectively [2410.08618].

Other storage-oriented treatments show the same pattern of deferred visibility plus later repair. In Byzantine asynchronous read/write memory, updates are disseminated by reliable broadcast, accepted by quorums of size \(n-t\), and later reads execute a `catch_up` phase to prevent read inversion; in the enterprise MSMQ design, successfully executed SQL statements are inserted into a special table and shipped as transactional MSMQ messages to the remote site, where they are stored and then replayed against the destination database [1604.08161] [0912.2134].

## 5. Program semantics, runtime systems, and graph-structured updates

At the language-semantics level, asynchronous message updates can be represented explicitly rather than hidden in queues. In asynchronous choreographies, a source communication \(p.e \to q\) is unfolded into a sender-local runtime action and a pending receive term, so that send-side progress can be reordered by structural precongruence. The semantics is asynchronous precisely when a send can occur before the receiver is ready and a pending receive can later consume the message, and the paper proves asynchronous equivalence to the original synchronous semantics as well as preservation of deadlock-freedom [1711.11211].

Rumpsteak extends this idea to practical Rust `async`/`await` code through multiparty session types. Its distinctive feature is support for arbitrary local reordering of sends and receives, verified by asynchronous multiparty subtyping and, when needed, \(k\)-multiparty compatibility. The framework allows optimizations such as double buffering, streaming unrolling, and send-before-receive patterns in a ring, while preserving deadlock-freedom by construction. The new subtyping algorithm is sound and decidable, and the evaluation reports runtime improvements of about \(1.7\)–\(8.6\times\) over previous Rust session-type implementations, with much better verification scalability than global \(k\)-MC on the benchmarks considered [2112.12693].

In decentralized dynamic graph processing, the same abstraction appears as an active-message execution model. On AM-CCA, an action is sent to the memory locality that owns the target vertex, can mutate local state, and can spawn more actions. Edge streaming uses `insert-edge-action`; if local adjacency storage is full, a remote `allocate` action is issued, the current computation is suspended via a continuation, and a future stores the eventual ghost-vertex pointer. Once insertion succeeds, a user-level `bfs-action` can be propagated immediately so that previous results are updated without recomputing from scratch [2406.01201].

Graph neural networks adapt asynchrony at the level of node updates rather than threads or servers. CAMP orders nodes by centrality and partitions them into layer-specific batches \(C_n^{(l)}\). At layer \(l\), only nodes in the current batch update:
\[
x_{v}^{(l+1, l+1)} = \begin{cases} \Phi_{l} \left (x_{v}^{(l_v, l)} , \sum\limits_{u \in N(v)} \Psi_{l}(x_{v}^{(l_v, l)}, x_{u}^{(l_u, l)}) \right), & v \in C^{(l)}_{n} \\ x_{v}^{(l_v, l+1)}, & v \not\in C^{(l)}_{n}. \end{cases}
\]
This means different nodes carry representations with different last-updated layers, so information moves sequentially through bottlenecks instead of being compressed everywhere at once. The paper proves a higher feature-sensitivity bound than the standard synchronous bound and reports about \(5\%\) improvement on REDDIT-BINARY and \(4\%\) improvement on Peptides-struct [2509.06777].

## 6. Recurrent conditions, metrics, and limitations

A recurrent theme is that asynchrony alone is not a guarantee of efficiency or correctness. Fixed-point inference needs contraction plus fairness [1206.6837]. Decentralized optimization needs bounded connectivity time, and its “fully asynchronous” alternative can suffer from arbitrarily stale buffered information unless constrained by adaptive partial waiting [2306.06559]. Federated learning shows that asynchronous arrivals can bias the optimized objective unless aggregation weights are corrected so that expected participation matches intended client importance [2206.10189].

Another recurring point is that long-lived asynchronous systems need explicit visibility control. AsyncFS does not preserve synchronous semantics by materializing all effects immediately; it preserves them because every directory read first queries stale state and, if necessary, reconciles delayed logs before returning [2410.08618]. Atomic snapshot does not measure latency by naive wall-clock-style rounds; it introduces IRA because holes and silent periods make older metrics inadequate [2408.02562]. This suggests that asynchronous message updates are often inseparable from a companion notion of pending-state metadata.

The literature also warns against collapsing distinct phenomena under one label. In massive connectivity, “asynchronous” means user transmissions arrive with unknown delay bins rather than that AMP itself is asynchronously scheduled [2101.00651]. In collaborative perception, asynchronous status updates are acceptable only when the generation-time spread stays within \(T_n\), so the scheduling problem is not merely rate feasibility but also offset and gcd compatibility under periodic schedules [2310.04813]. In ACA, the communication pattern is asynchronous and gossip-based, but the protocol explicitly does not cover node failure or significantly delayed response [2001.07704].

Taken together, these results show that asynchronous message updates are best viewed not as a single algorithmic trick but as a design space. The common structure is the removal of a global barrier; the hard part is always what replaces it: residual-based scheduling, bounded-connectivity windows, stochastic aggregation weights, stale-set tracking, runtime send/receive splitting, local futures and continuations, or delayed-update correction in function space. The most successful systems are those that make this replacement explicit and analyzable rather than treating asynchrony as an implementation detail.

Source: https://www.emergentmind.com/topics/asynchronous-message-updates