Dagger.jl
Dagger.jl copied to clipboard
Add DaggerGraphs subpackage
This was started during JuliaCon with @pszufe but I never finished it - it's a naive Graphs.jl directed graph implementation that uses Dagger to partition the graph.
@gdalle
Todo:
- [x] Optimize
add_vertices!implementation - [x] Add undirected graph support
- [x] Add
freezefor creating immutableDGraph - [x] Optimize immutable
DGraphoperations - [x] Default to directed graph
- [x] Add vertex/edge metadata support
- [x] Add lazy
weightsimplementation (callsweightson metadata) - [x] Rename "external" to "background" for cross-partition
AdjList - [x] Switch
AdjListto dense representation (likeSimpleGraph) - [x] Optimize purely local operations
- [x] Validate Graphs.jl interface compatibility
- [x] Return and cache neighborhood on remote vertex lookup (
inneighbors/outneighbors) - [ ] Implement user-configurable caching strategies
- [ ] Prefetch neighborhoods
- [x] Implement batched and/or streaming edge creation
- [x] Add loading/saving from $k^2$ files
- [x] Validate benchmark performance on purely-local operations versus
SimpleGraph - [ ] Add docs
- [x] Add CI
- [ ] (Optional) Add support for ingesting vertices/edges from a
DataFrameor Tables source