You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We create cudf series using the type and then categorize it in our PG implimentation while we should do it the other-way as this introduces memory overhead and also runs into cudf's int64 size_t limitations.
This PR fixes#2903 .
We reduce the memory foot print by `3.5x` and speeds up the add_data by `557x` and also allows us to not be limited in the size of edges we can save. (Time is in seconds vs ms)
Before PR:
```python3
Name (time in s, mem in bytes) Mean GPU mem GPU Leaked mem Rounds GPU Rounds
----------------------------------------------------------------------------------------------------------------------------------------------
bench_add_edge_data[15000000] 2.3044 (1.0) 2,160,000,064 (1.0) 0 (1.0) 1 1
bench_add_edge_data[30000000] 4.7941 (2.08) 4,320,000,064 (2.00) 0 (1.0) 1 1
bench_add_edge_data[60000000] 8.7235 (3.79) 8,640,000,064 (4.00) 0 (1.0) 1 1
bench_add_edge_data[120000000] FAILED
----------------------------------------------------------------------------------------------------------------------------------------------
```
After PR
```python
-------------------------------------------------------------- benchmark: 4 tests --------------------------------------------------------------
Name (time in ms, mem in bytes) Mean GPU mem GPU Leaked mem Rounds GPU Rounds
------------------------------------------------------------------------------------------------------------------------------------------------
bench_add_edge_data[15000000] 16.3785 (1.0) 615,000,080 (1.0) 0 (1.0) 1 1
bench_add_edge_data[30000000] 17.3631 (1.06) 1,230,000,080 (2.00) 0 (1.0) 1 1
bench_add_edge_data[60000000] 22.2947 (1.36) 2,460,000,080 (4.00) 0 (1.0) 1 1
bench_add_edge_data[120000000] 26.9747 (1.65) 4,920,000,080 (8.00) 0 (1.0) 1 1
------------------------------------------------------------------------------------------------------------------------------------------------
```
Authors:
- Vibhu Jawa (https://github.com/VibhuJawa)
Approvers:
- Joseph Nke (https://github.com/jnke2016)
- Brad Rees (https://github.com/BradReesWork)
URL: #2924
Version
22.12
Which installation method(s) does this occur on?
Conda
Describe the bug.
We create cudf series using the type and then categorize it in our PG implimentation while we should do it the other-way as this introduces memory overhead and also runs into cudf's int64
size_t
limitations.cugraph/python/cugraph/cugraph/structure/property_graph.py
Lines 434 to 436 in 7387fbc
CC: @eriknw
Minimum reproducible example
Relevant log output
Environment details
Other/Misc.
This impacts our ability to scale on
ogbn-products
using our cugraph-store as that runs into this error.Code of Conduct
The text was updated successfully, but these errors were encountered: