rapidsai / wholegraph

WholeGraph - large scale Graph Neural Networks
https://docs.rapids.ai/api/cugraph/stable/wholegraph/
Apache License 2.0
100 stars 38 forks source link

Other (optional?) dependencies #212

Open jakirkham opened 3 months ago

jakirkham commented 3 months ago

After noticing a few missing dependencies ( https://github.com/rapidsai/wholegraph/issues/210 ) & ( https://github.com/rapidsai/wholegraph/issues/211 ), ran depfinder on wholegraph and got the following output:

{
    "builtin": [
        "argparse",
        "importlib",
        "multiprocessing",
        "os",
        "pickle",
        "random",
        "typing"
    ],
    "questionable": [
        "dgl",
        "mpi4py",
        "torch",
        "torch_geometric",
        "torch_sparse",
        "wg_torch"
    ],
    "relative": [
        "comm",
        "common_options",
        "cugraphops",
        "data_loader",
        "distributed_launch",
        "dlpack_utils",
        "embedding",
        "gnn_model",
        "graph_ops",
        "graph_structure",
        "initialize",
        "tensor",
        "utils",
        "wholegraph_env"
    ],
    "required": [
        "numpy",
        "packaging",
        "pylibcugraphops",
        "pylibwholegraph",
        "torch"
    ]
}

The builtins we can ignore. The relatives will ignore for the moment

With required, a couple of these are covered elsewhere:

Though we should consider adding packaging and pylibcugraphops

The questionable list would be good to hear feedback from the Wholegraph team on. Maybe these are optional dependencies and we can define them under extras. If some are hard requirements, that would be good to know as that would change how these are handled

Anyways please let us know what you think on how these should be handled 🙂