Skip to main content

snn-topology-simulation

Topology-exploiting optimization for brain-scale spiking neural network simulations — reducing communication bottlenecks via network-aware compute node assignment and dynamic load balancing.

Ir a la instalación

Datos de origen

Repositorio
hiyenwong/ai_collection
Última actividad en el origen
7 de julio de 2026 a las 08:26
Idioma detectado de SKILL.md
inglés
Estrellas
2
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
snn-topology-simulation
description
Topology-exploiting optimization for brain-scale spiking neural network simulations — reducing communication bottlenecks via network-aware compute node assignment and dynamic load balancing.
tags
["snn","neuromorphic","brain-scale-simulation","distributed-computing"]
# SNN Topology Simulation ## Description Exploiting network topology in brain-scale spiking neural network simulations. The key insight: profiling reveals that the variability of time required by compute nodes between communication calls is large, and this variability — not the interconnect speed — is the true bottleneck. By exploiting the biological network topology (which neurons connect to which), compute nodes can be assigned to minimize communication overhead, enabling efficient distributed simulation of brain-scale SNNs. Applicable to neuromorphic computing reference implementations, large-scale brain simulation, and HPC SNN optimization. ## Activation Keywords - brain-scale SNN simulation - 大规模脉冲网络模拟 - SNN communication bottleneck - spiking neural network distributed simulation - neuromorphic reference simulation - network topology SNN - SNN load balancing - brain-scale neural simulation ## Core Concepts ### The Communication Bottleneck Myth Conventional wisdom: distributed SNN simulation is limited by interconnect speed between compute nodes. Reality from profiling: **variability of compute time between communication calls** is the true bottleneck. - Some nodes finish computation much faster than others - Fast nodes wait for slow nodes at synchronization barriers - The interconnect is underutilized during these waits ### Topology-Exploiting Assignment Biological neural networks have non-random topology: - **Small-world structure**: high clustering + short path lengths - **Hub neurons**: highly connected nodes - **Modular organization**: clusters of densely connected neurons Exploiting this structure: 1. Assign neurons to compute nodes based on connectivity patterns 2. Minimize cross-node spike communication 3. Balance computational load across nodes 4. Exploit temporal locality (when spikes occur) ### Dynamic Load Balancing Static assignment is suboptimal because: - Spike activity varies over time - Different brain regions activate at different times - Computational load per neuron varies (different models, different spike rates) Dynamic strategies: 1. Monitor per-node computation time in real-time 2. Reassign neurons when imbalance exceeds threshold 3. Use predictive models to anticipate load shifts 4. Minimize reassignment overhead ## Usage Patterns ### Pattern 1: Topology-Aware Node Assignment Optimize neuron-to-node assignment for a given SNN: 1. Analyze the network's connectivity graph 2. Identify community structure (modularity) 3. Assign each community to a compute node 4. Minimize inter-community edges (cross-node spikes) 5. Balance neuron count and expected spike rate per node ### Pattern 2: Dynamic Load Balancing Implement runtime load balancing for SNN simulation: 1. Profile computation time per node each simulation step 2. Detect imbalance (>20% deviation from mean) 3. Identify neurons that can be migrated 4. Migrate neurons with minimal communication overhead 5. Verify speedup without accuracy loss ### Pattern 3: Neuromorphic Reference Benchmark Use the optimized simulation as a reference for neuromorphic hardware: 1. Run the topology-optimized CPU simulation 2. Compare with neuromorphic hardware performance 3. Identify where neuromorphic systems excel (event-driven, asynchronous) 4. Identify where CPU simulation is competitive (batch processing, large networks) ## Instructions for Agents ### Step 1: Network Analysis 1. Load the SNN connectivity graph 2. Compute degree distribution, clustering coefficient, modularity 3. Identify hub neurons and community structure 4. Estimate computational load per neuron (spike rate × model complexity) ### Step 2: Initial Assignment 1. Use graph partitioning (METIS, Scotch, or spectral clustering) 2. Objective: minimize edge cuts + balance vertex weights 3. Assign partitions to compute nodes 4. Verify communication volume vs. baseline (random assignment) ### Step 3: Profiling 1. Run the simulation with instrumentation 2. Record per-node computation time each step 3. Record inter-node communication volume 4. Identify the bottleneck (computation vs. communication) ### Step 4: Optimization 1. If computation imbalance >20%: reassign neurons 2. If communication volume > threshold: repartition graph 3. If both issues: multi-objective optimization 4. Validate against ground truth (no optimization baseline) ### Step 5: Scaling Analysis 1. Measure speedup vs. number of compute nodes 2. Identify the scaling limit (Amdahl's law vs. communication) 3. Extrapolate to brain-scale (>10⁹ neurons) 4. Compare with neuromorphic hardware projections ## Error Handling ### Graph Too Large for Memory If the connectivity graph exceeds available RAM: - Use streaming graph partitioning - Process the graph in chunks - Use approximate community detection algorithms - Consider GPU-accelerated graph processing ### Dynamic Reassignment Overhead If neuron migration costs exceed benefits: - Increase reassignment threshold - Use predictive (not reactive) rebalancing - Batch migrations (migrate multiple neurons at once) - Consider hierarchical reassignment (swap partitions, not individual neurons) ### Accuracy Degradation If optimization affects simulation accuracy: - Verify spike timing precision is maintained - Check that neuron state is correctly transferred during migration - Validate against non-optimized reference simulation - Use conservative optimization (only optimize when imbalance is significant) ## Examples ### Example 1: Human Brain-Scale Simulation Simulate a human brain-scale SNN (86 billion neurons): - Use hierarchical partitioning (region → area → column → neuron) - Assign regions to supercomputing nodes - Dynamic rebalancing within regions - Reference for neuromorphic chip design (BrainScaleS, Loihi) ### Example 2: Mouse Connectome Simulation Simulate a mouse whole-brain SNN from connectomics data: - Load the synaptic-resolution connectome - Partition by brain region (cortex, hippocampus, thalamus) - Optimize inter-region communication - Compare with in-vivo electrophysiology recordings ## Resources - arXiv: 2602.23274 — "Exploiting network topology in brain-scale simulations of spiking neural networks" - Related: `snn-performance-analysis` (SNN profiling and benchmarking) - Related: `neuromorphic-supremacy` (neuromorphic vs. conventional computing) - Related: `spiking-computational-neuroscience-survey` (comprehensive SNN survey) ## Related Skills - **snn-performance-analysis**: SNN profiling and benchmarking - **neuromorphic-supremacy**: Neuromorphic computing advantage analysis - **brain-graph-neural**: Brain network analysis with GNNs ## Notes - **Key finding**: communication variability, not interconnect speed, is the bottleneck - **Profiling is essential**: always profile before optimizing - **Biological topology matters**: small-world and modular structure enables optimization - **Reference implementations**: CPU simulations serve as ground truth for neuromorphic hardware - **Scalability**: this methodology is designed for brain-scale (>10⁹ neurons) simulations
Ver en GitHub