Repository navigation
v0.3.1 Performance & Scalability
This release focuses on improved performance and scalability. Architectural changes to the data pipeline and storage layer enable the simulation to scale to significantly larger world sizes and longer duration.
Delta Compression
The full data pipeline has been migrated to a use configurable delta compression for environment data. This reduces the needed storage capacity by about factor 10 and thus also speeds up the data pipeline by about the same factor (depending on configuration even faster). On recent consumer hardware a simulation can now run for millions of ticks and/ or use large environment (large environments still need plenty of heap!).
Binary API & Visualizer Speedup
The environment data API has been updated to use the binary Protobuf format, replacing the previous JSON implementation. Combined with a new packed integer format for internal molecule representation, this reduces network bandwidth usage and parsing overhead. Consequently, the Web Visualizer is now significantly more responsive and capable of rendering larger environments smoothly, even the HTTP API now needs to decompress the delta compression.
Additionally the visualizer's tick navigation now allows small and big tick jumps for easier tick navigation.
Additional Improvements
- Entropy Register Access: Two new instructions, NTR and NTRS, have been added. These allow organisms to read the current value of their Entropy Register (SR), enabling genomes to actively react to thermodynamic pressure.
- Stability: A critical issue where organisms could enter an infinite loop of failing instructions has been resolved, ensuring consistent simulation execution.
- Infrastructure: The internal message bus now supports configurable blocking strategies to better handle backpressure in high-load scenarios.
- Usability: Data directories are now automatically created on startup, and the visualizer's timeline navigation has been updated to support the new chunk-based data structure.
What's Changed
- Feature/packed-molecule-int by @rainco77 in #57
- Feature/delta-compression by @rainco77 in #59
- Feature/environment-api-speedup by @rainco77 in #60
Full Changelog: v0.3.0...v0.3.1
Quick Start
Java 21 is required.
Download and unpack the distribution below (zip/tar).
Run the node:
# Linux / Mac
./bin/evochora node run
# Windows
.\bin\evochora.bat node run
Open your browser:
To view the simulation, navigate to:
👉 http://localhost:8081/