# Async Functions Without Await - TODO Generated: 2026-01-04 ## Summary There are **277 async functions** that don't use `.await` internally. These add unnecessary overhead by creating state machines for synchronous code. ## Why Not Fixed Now Removing `async` from these functions requires: 1. Removing `.await` from all call sites 2. Some implement `async_trait` which mandates async signatures 3. Changes cascade across multiple files ## Priority Medium - Performance improvement but not critical for correctness. ## Files Affected ( 97 files) - `crates/core/rtx-graph/src/evolution.rs:` - `crates/core/rtx-memory/src/fragmentation.rs:` - `crates/core/rtx-memory/src/gpu_oom.rs:` - `crates/core/rtx-memory/src/gpu_pinning.rs:` - `crates/core/rtx-memory/src/gpu_real.rs:` - `crates/core/rtx-memory/src/gpu_simple.rs:` - `crates/core/rtx-memory/src/pool_manager.rs:` - `crates/core/rtx-memory/src/zero_optimizer/pressure.rs:` - `crates/core/rtx-tokenization/src/multimodal.rs:` - `crates/core/rtx-tokenization/src/sentencepiece.rs:` - `crates/core/rtx-tokenization/src/trainer.rs:` - `crates/core/rtx-validation/src/lib.rs:` - `crates/core/rtx-validation/src/search/bayes_search.rs:` - `crates/core/rtx-validation/src/search/halving_search.rs:` - `crates/core/rtx-validation/src/search/random_search.rs:` - `crates/models/rtx-nlg/src/lib.rs:` - `crates/models/rtx-nlg/src/serving/batch.rs:` - `crates/models/rtx-nlg/src/serving/mod.rs:` - `crates/models/rtx-nlg/src/serving/streaming.rs:` - `crates/models/rtx-nlg/src/serving/templates.rs:` - `crates/production/rtx-config/src/config.rs:` - `crates/production/rtx-config/src/loader.rs:` - `crates/production/rtx-config/src/secrets.rs:` - `crates/production/rtx-config/src/validation.rs:` - `crates/production/rtx-config/src/watcher.rs:` - `crates/production/rtx-monitoring/src/alerts.rs:` - `crates/production/rtx-monitoring/src/collector.rs:` - `crates/production/rtx-monitoring/src/health.rs:` - `crates/production/rtx-monitoring/src/lib.rs:` - `crates/production/rtx-monitoring/src/telemetry.rs:` - `crates/production/rtx-serving-api/src/advanced_server.rs:` - `crates/production/rtx-serving-api/src/billing.rs:` - `crates/production/rtx-serving-api/src/cache/kv_cache.rs:` - `crates/production/rtx-serving-api/src/cache/manager.rs:` - `crates/production/rtx-serving-api/src/cache/metrics.rs:` - `crates/production/rtx-serving-api/src/cache/sliding_window.rs:` - `crates/production/rtx-serving-api/src/cache/speculative.rs:` - `crates/production/rtx-serving-api/src/grpc.rs:` - `crates/production/rtx-serving-api/src/inference_cached.rs:` - `crates/production/rtx-serving-api/src/multi_model.rs:` - `crates/production/rtx-serving-api/src/queue_management.rs:` - `crates/production/rtx-serving-api/src/rate_limiting.rs:` - `crates/production/rtx-serving-api/src/streaming.rs:` - `crates/production/rtx-serving-api/src/websocket.rs:` - `crates/specialized/rtx-neuro-artifacts/src/models.rs:` - `crates/specialized/rtx-neuro-lsl/src/service.rs:` - `crates/specialized/rtx-platform/src/billing.rs:` - `crates/specialized/rtx-platform/src/federation.rs:` - `crates/specialized/rtx-platform/src/region.rs:` - `crates/specialized/rtx-platform/src/slo.rs:` - `crates/specialized/rtx-platform/src/tenant.rs:` - `crates/specialized/rtx-science/src/biology/protein.rs:` - `crates/specialized/rtx-science/src/chemistry/gnn.rs:` - `crates/specialized/rtx-science/src/chemistry/properties.rs:` - `crates/specialized/rtx-science/src/integration.rs:` - `crates/specialized/rtx-science/src/physics/adaptive.rs:` - `crates/specialized/rtx-science/src/physics/pinn.rs:` - `crates/specialized/rtx-science/src/physics/training.rs:` - `crates/training/rtx-evolution/src/autonomous_optimizer.rs:` - `crates/training/rtx-evolution/src/hyperparameter_tuner.rs:` - `crates/training/rtx-evolution/src/knowledge.rs:` - `crates/training/rtx-evolution/src/optimization.rs:` - `crates/training/rtx-evolution/src/orchestrator.rs:` - `crates/training/rtx-evolution/src/sandbox.rs:` - `crates/training/rtx-evolution/src/telemetry.rs:` - `crates/training/rtx-federated/src/aggregation/async_agg.rs:` - `crates/training/rtx-federated/src/aggregation/fedavg.rs:` - `crates/training/rtx-federated/src/aggregation/fednova.rs:` - `crates/training/rtx-federated/src/aggregation/fedprox.rs:` - `crates/training/rtx-federated/src/aggregation/scaffold.rs:` - `crates/training/rtx-federated/src/byzantine/anomaly_detection.rs:` - `crates/training/rtx-federated/src/byzantine/krum.rs:` - `crates/training/rtx-federated/src/byzantine/reputation_system.rs:` - `crates/training/rtx-federated/src/byzantine/trimmed_mean.rs:` - `crates/training/rtx-federated/src/infrastructure/client_manager/mod.rs:` - `crates/training/rtx-federated/src/infrastructure/client_manager/protocol.rs:` - `crates/training/rtx-federated/src/infrastructure/client_manager/selector.rs:` - `crates/training/rtx-federated/src/infrastructure/communication.rs:` - `crates/training/rtx-federated/src/infrastructure/fault_tolerance.rs:` - `crates/training/rtx-federated/src/infrastructure/monitoring.rs:` - `crates/training/rtx-federated/src/infrastructure/resource_scheduler.rs:` - `crates/training/rtx-federated/src/lib.rs:` - `crates/training/rtx-federated/src/personalization/mod.rs:` - `crates/training/rtx-federated/src/privacy/differential_privacy.rs:` - `crates/training/rtx-federated/src/privacy/homomorphic.rs:` - `crates/training/rtx-federated/src/privacy/local_dp.rs:` - `crates/training/rtx-federated/src/privacy/secure_computation.rs:` - `crates/training/rtx-federated/src/simulation/mod.rs:` - `crates/training/rtx-flash-attention/src/core/cpu.rs:` - `crates/training/rtx-rl/src/actor_learner.rs:` - `crates/training/rtx-rl/src/algorithms/dpo.rs:` - `crates/training/rtx-rl/src/algorithms/ppo.rs:` - `crates/training/rtx-rl/src/algorithms/sac.rs:` - `crates/training/rtx-transformers/src/revolutionary/federated_coordination.rs:` - `crates/training/rtx-transformers/src/revolutionary/hybrid_orchestrator.rs:` - `crates/training/rtx-transformers/src/revolutionary/orchestrator_core.rs:` - `crates/training/rtx-transformers/src/revolutionary/orchestrator_edge.rs:` ## How to Fix 1. For standalone async functions: Remove `async` keyword and remove `.await` from call sites 2. For trait implementations: Check if trait can be made sync, or leave as-is 3. Run `cargo check` after each change to catch cascading errors