Skip to content

Performance Tips

Optimize TrueFidelity Desktop for smooth operation, responsive playback, and efficient analysis by following these guidelines based on the actual system capabilities.

Hardware Recommendations

Minimum Requirements

  • CPU: 4 cores, 2.5 GHz or higher
  • Memory: 8 GB RAM (16 GB for Docker operations)
  • Storage: 50 GB free space on SSD
  • Graphics: Any GPU supporting hardware acceleration
  • OS: Windows 10/11, macOS 10.15+, or Linux with Docker support
  • CPU: 6-8 cores, 3 GHz or higher for better multi-container performance
  • Memory: 16 GB RAM minimum, 32 GB recommended for large BLF files
  • Storage: NVMe SSD with 100+ GB free space for logs and Docker images
  • Network: Stable connection for Docker image downloads

Docker Configuration

Since TrueFidelity uses Docker for ECU simulation, Docker performance directly impacts system performance.

Docker Desktop Settings

  1. Memory Allocation:
  2. Open Docker Desktop settings
  3. Increase memory to at least 8 GB
  4. For large systems, allocate 12-16 GB
  5. Leave 4-8 GB for the host OS

  6. CPU Allocation:

  7. Allocate at least 4 CPU cores to Docker
  8. For multi-ECU systems, increase to 6-8 cores
  9. Balance with host system needs

  10. Disk Space:

  11. Ensure Docker has adequate disk space
  12. Regular cleanup: docker system prune -a
  13. Monitor image sizes: docker images

RTOS ECU Considerations

When working with Zephyr or FreeRTOS ECUs: - Terminal access is not available for RTOS-based ECUs - Use ECU Console panel for log viewing instead - Enable GDB debugging in ECU properties for detailed analysis - Console logging works with all ECU types

File and Data Management

BLF File Optimization

  1. File Location:
  2. Store BLF files on local SSD, not network drives
  3. Keep working files on fastest available storage
  4. Archive completed analyses to slower storage

  5. File Size Considerations:

  6. Files under 500 MB: Smooth performance
  7. 500 MB - 2 GB: May experience some delays
  8. Over 2 GB: Consider splitting or filtering before import
  9. Maximum tested: 4 GB (performance degrades significantly)

  10. Pre-processing:

  11. Filter unnecessary CAN IDs before creating BLF
  12. Reduce capture duration when possible
  13. Use appropriate sampling rates

System Files

  • Keep system JSON files small and focused
  • Avoid excessive numbers of ECUs (10+ may impact performance)
  • Organize systems by project or test scenario

Playback Performance

Signal Player Optimization

  1. Before Playback:
  2. Close unnecessary panels
  3. Clear Network Traffic panel if full
  4. Limit selected signals in Signal Viewer

  5. During Playback:

  6. Start with 1x speed for large files
  7. Use pause/resume instead of stop/start
  8. Monitor memory usage in system tools

  9. Signal Selection:

  10. Select only essential signals for charting
  11. Deselect signals when not needed
  12. Group related signals for efficiency

Network Traffic Panel

  1. Managing Data Flow:
  2. Use filters to reduce displayed frames
  3. Clear panel periodically during long sessions
  4. Disable auto-scroll if reviewing specific frames

  5. Filtering Best Practices:

  6. Filter by CAN ID for focused analysis
  7. Apply filters before starting playback
  8. Remove filters when no longer needed

UI and Layout Performance

Panel Management

  1. Docking Configuration:
  2. Keep frequently used panels docked
  3. Close panels not in use
  4. Avoid excessive panel stacking
  5. Use stable layouts to reduce redrawing

  6. Mode Switching:

  7. Stay in one mode during intensive operations
  8. Save work before switching modes
  9. Allow transitions to complete before interacting

System Canvas

  1. Canvas Performance:
  2. Limit number of visible ECUs and networks
  3. Avoid excessive connection lines
  4. Use zoom appropriately (50-150% optimal)
  5. Minimize canvas redraws during edits

  6. Building Systems:

  7. Build smaller subsystems first
  8. Test with fewer ECUs initially
  9. Add complexity gradually

Signal Chart Optimization

Chart Settings

  1. Time Window:
  2. Use appropriate time windows (10-60 seconds)
  3. Avoid extremely long windows with many signals
  4. Adjust based on data density

  5. Signal Count:

  6. Limit to 4-6 signals simultaneously
  7. Use multiple charts for different signal groups
  8. Remove signals when analysis complete

  9. Visual Settings:

  10. Enable grid only when needed
  11. Use auto-scale judiciously
  12. Export charts promptly to free memory

Export Performance

CSV Export

  1. Best Practices:
  2. Export smaller time ranges
  3. Limit number of signals
  4. Close other applications during export
  5. Use local storage for output files

  6. Large Exports:

  7. Break into multiple smaller exports
  8. Export during low-activity periods
  9. Monitor disk space availability

BLF Export

  • Generally faster than CSV
  • Maintains data integrity
  • Suitable for archival purposes
  • Can be re-imported for future analysis

System Maintenance

Regular Cleanup

  1. Docker Maintenance: ```bash # Remove stopped containers docker container prune

# Remove unused images docker image prune -a

# Complete cleanup (use carefully) docker system prune -a --volumes ```

  1. Application Cleanup:
  2. Clear browser cache periodically
  3. Remove old export files
  4. Archive completed projects
  5. Clean temporary directories

Performance Monitoring

  1. System Tools:
  2. Windows: Task Manager, Resource Monitor
  3. macOS: Activity Monitor
  4. Linux: htop, docker stats

  5. Key Metrics:

  6. CPU usage by Docker and Electron
  7. Memory consumption trends
  8. Disk I/O during playback
  9. Network usage (if using remote storage)

Troubleshooting Performance Issues

Common Problems and Solutions

Symptom Possible Causes Solutions
Slow application startup Docker not running, large saved layout Start Docker first, reset window layout
Playback stutters Large BLF file, insufficient memory Reduce playback speed, increase Docker memory
System build fails Insufficient resources, Docker issues Check Docker status, free up resources
UI freezes Too many panels open, memory pressure Close unused panels, restart application
Export takes forever Large dataset, slow storage Export smaller ranges, use SSD
Chart updates slowly Too many signals, auto-scale enabled Reduce signals, use fixed scale

Performance Diagnostics

When experiencing issues:

  1. Check Docker Status: bash docker info docker stats --no-stream

  2. Monitor Resources:

  3. CPU usage should stay below 80%
  4. Memory usage should leave 2-4 GB free
  5. Disk I/O should not be constantly maxed

  6. Application Logs:

  7. Check browser console (F12)
  8. Review Docker container logs
  9. Look for error messages

Best Practices Summary

Do's

  • ✅ Use local SSD storage for active files
  • ✅ Allocate sufficient Docker resources
  • ✅ Close unnecessary panels during intensive operations
  • ✅ Filter data before analysis
  • ✅ Export in manageable chunks
  • ✅ Maintain your Docker environment

Don'ts

  • ❌ Work with files on network drives
  • ❌ Select all signals at once
  • ❌ Leave Docker with default memory settings
  • ❌ Ignore system resource warnings
  • ❌ Try to load extremely large files without splitting
  • ❌ Run multiple instances simultaneously

Platform-Specific Tips

Windows

  • Ensure WSL 2 is properly configured for Docker
  • Disable Windows Defender scanning for Docker directories
  • Use native Windows paths, not WSL paths

macOS

  • Grant necessary permissions to Docker Desktop
  • Increase Docker resources in Docker Desktop preferences
  • Use APFS formatted drives for best performance

Linux

  • Run Docker with appropriate user permissions
  • Consider using native Docker instead of Docker Desktop
  • Ensure sufficient swap space configured

Getting Help

If performance issues persist after following these guidelines:

  1. Document the issue with specific steps to reproduce
  2. Note system specifications and Docker configuration
  3. Capture relevant logs and error messages
  4. Contact support with this information
  • System Requirements - Detailed hardware and software requirements
  • Docker Setup - Configuring Docker for TrueFidelity
  • Troubleshooting - Common issues and solutions
  • File Compatibility - Optimal file formats and sizes