Open EarlMilktea opened 3 weeks ago
@shinich1
I'm temped to try binding mainly because numba
is not good at nesting pythonic data structures (such as list
), which are inherently required to represent graphs.
In addition to baseline speedups (ex. faster for-loop), as flow/gflow algorithm repeatedly allocate/discard expensive data structures, we may be benefited by carefully managing/reusing working memories.
For that purpose, Rust would be better than C++.
@shinich1
I'm temped to try binding mainly because
numba
is not good at nesting pythonic data structures (such aslist
), which are inherently required to represent graphs.
@EarlMilktea Sounds good! binding with Rust
seems to be the best way.
Shall we try implementing in this repo, and once there's a PR, that would be a good place to discuss whether or not to move to a separate repo (as flow-finding algorithms and related linalg functions can be independent of graphix).
I'm pretty sure that flow/gflow calculator CAN be independent. Do you want it to be in the same repo?
independent repo souds good, here's new one: https://github.com/TeamGraphix/fastflow
I'm open to other naming ideas.. (nb fastflow
seems to be available on pypi https://pypi.org/search/?q=fastflow&o=, though there's a ML related paper with same name )
Describe the feature you'd like
Refactor & optimize
gflow.py
.We may need to resort to C++ or Rust bindings if
numba
doesn't work.