v0.11.0
PyFlowGraph v0.11.0
Release Date: September 1, 2025
Build: 0d60178
Major Changes
Single Process Execution Architecture
Replaced subprocess isolation with direct Python function calls for significant performance improvements.
Implementation:
- Added
SingleProcessExecutorclass for direct function execution - Modified
GraphExecutorto use single process instead of subprocess.run() - Implemented persistent namespace for imports and variables
- Added direct object reference passing without JSON serialization
Performance Results:
- Execution speed: 96,061 operations/second (0.01ms per operation)
- Eliminated subprocess overhead (50-200ms → <1ms per node)
- Removed JSON serialization overhead completely
- Import persistence eliminates re-import costs
Native Object Passing System
Implemented zero-copy object passing for ML frameworks.
Supported Types:
- PyTorch tensors with GPU memory sharing
- NumPy arrays with direct references
- Pandas DataFrames without copying
- TensorFlow tensors and variables
- JAX arrays with hardware acceleration
Measured Performance Improvements:
- PyTorch operations: 4,000x-7,500x faster
- NumPy array processing: 95x-100x faster
- Pandas DataFrame operations: 20x-50x faster
- Large object transfers: eliminated (now uses references)
NVIDIA GPU Computer Vision Pipeline
Added complete computer vision workflow demonstrating GPU acceleration.
Components:
- Image preprocessing with CUDA tensors
- ResNet50 classification with ImageNet labels
- GPU device detection and reporting
- Automatic GPU memory management
Requirements:
- NVIDIA GPU with CUDA support
- CUDA-enabled PyTorch (2.0.0+cu118)
- CUDA Toolkit installation
Technical Improvements
Virtual Environment Management
- Fixed environment switching between different graphs
- Added proper package loading from graph-specific virtual environments
- Implemented dynamic sys.path injection for package availability
- Added Dependencies section support to FlowSpec format
GUI Fixes
- Fixed undo history dialog text visibility in dark theme
- Fixed Clear Results button functionality in computer vision pipeline
- Added proper device information display (cuda:0 vs cpu)
- Implemented absolute path resolution for relative image paths
- Added meaningful ImageNet class names instead of numeric IDs
Testing
Added 36 new tests covering:
- Native object passing validation
- ML framework integration testing
- Memory leak detection
- Performance benchmarking
- Edge cases (circular references, concurrent access)
Bug Fixes
Virtual Environment Issues
- Fixed environment switching when loading graphs with different requirements
- Resolved package loading issues with proper sys.path management
- Fixed PyTorch deprecation warnings (updated torchvision API usage)
- Corrected import path consistency for isinstance() compatibility
GUI State Management
- Fixed Clear Results button scope issues in GUI State Handler
- Resolved node reference access in GUI functions
- Fixed device information connection routing
- Improved connection source accuracy for device reporting
Breaking Changes
Architecture Change: PyFlowGraph now uses single-process execution instead of subprocess isolation.
Impact:
- Performance: Significant speed improvements for all workflows
- Security: Reduced process isolation (traded for performance)
- Compatibility: Existing graphs work unchanged
- Environment: Virtual environment isolation maintained
Installation
Requirements:
- Windows OS with Python 3.8+
- PySide6
- Optional: NVIDIA GPU + CUDA for computer vision features
- Optional: PyTorch, NumPy, Pandas for ML workflows
Installation:
- Download and extract
PyFlowGraph-Windows-v0.11.0.zip - Run
PyFlowGraph.exe
Documentation Updates
- Updated Epic 3 specifications for single-process architecture
- Added performance benchmarks and metrics
- Enhanced FlowSpec format with Dependencies section
- Added LLM documentation for AI-assisted graph creation
- Updated memory management and GPU cleanup documentation