| name | performance |
| description | Performance optimization guidelines for Splitrail. Use when optimizing parsing, reducing memory usage, or improving throughput. |
Performance Considerations
Techniques Used
- Parallel analyzer loading -
futures::join_all() for concurrent stats loading
- Parallel file parsing -
rayon for parallel iteration over files
- Fast JSON parsing -
simd_json exclusively for all JSON operations (note: rmcp crate re-exports serde_json for MCP server types)
- Fast directory walking -
jwalk for parallel directory traversal
- Lazy message loading - TUI loads messages on-demand for session view
See existing analyzers in src/analyzers/ for usage patterns.
Guidelines
- Prefer parallel processing for I/O-bound operations
- Use
parking_lot locks over std::sync for better performance
- Avoid loading all messages into memory when not needed
- Use
BTreeMap for date-ordered data (sorted iteration)