Skip to content

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 01 Sep 05:41
· 3 commits to main since this release
0d60178

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 SingleProcessExecutor class for direct function execution
  • Modified GraphExecutor to 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:

  1. Download and extract PyFlowGraph-Windows-v0.11.0.zip
  2. 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