Summary
This issue discusses an optional faster Highway backend implemented with Python + C++.
The pure-Python implementation is proposed separately as the main integration path. This issue is for the optimized version, which may be considered later as a backlog item.
Motivation
The C++ backend is significantly faster and is more suitable for larger networks. However, it requires compiling a C++ executable, which may complicate CDlib installation, packaging, and OS independence.
Implementation
The C++ backend keeps the same public Python API as the pure-Python version:
from cdlib import algorithms
coms = algorithms.highway(G)
Internally, the branch uses a compiled C++ executable through cdlib/algorithms/internal/Highway.py.
Branch
The implementation is available in my fork under:
Notes
This version can be treated as a future optional backend. The pure-Python version should be considered first for integration.
Summary
This issue discusses an optional faster Highway backend implemented with Python + C++.
The pure-Python implementation is proposed separately as the main integration path. This issue is for the optimized version, which may be considered later as a backlog item.
Motivation
The C++ backend is significantly faster and is more suitable for larger networks. However, it requires compiling a C++ executable, which may complicate CDlib installation, packaging, and OS independence.
Implementation
The C++ backend keeps the same public Python API as the pure-Python version:
Internally, the branch uses a compiled C++ executable through cdlib/algorithms/internal/Highway.py.
Branch
The implementation is available in my fork under:
Notes
This version can be treated as a future optional backend. The pure-Python version should be considered first for integration.