New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add custom data loading (e.g. NVTabular) in KerasEstimator #3603
Conversation
@tgaddair Here is the NVTabular PR with a higher-level API to abstract away the Readers and a reduced image size (18.1GB vs. 37GB) for |
Unit Test Results (with flaky tests) 1 271 files + 76 1 271 suites +76 12h 4m 6s ⏱️ + 18m 0s Results for commit 6e53391. ± Comparison against base commit 001260a. ♻️ This comment has been updated with latest results. |
8139a5b
to
bffd528
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What do you mean with reduced image size (18.1GB vs. 37GB) for Dockerfile.test.gpu.
? Does adding NVtabular inflate the image to 37GB? It is currently 15.3GB: https://github.com/horovod/horovod/runs/7841398530?check_suite_focus=true#step:231:16
I'd prefer to split this into to PRs, one for reducing the image size and one for the custom data loading.
@EnricoMi Thanks for the review!
This was just a reference to an earlier version of the dockerfile, which was 37GB due to the use of a different base image. By going back to the |
It looks this PR needs to be rebased after #3665 is merged. |
Signed-off-by: Lee Yang <leey@nvidia.com>
Signed-off-by: Lee Yang <leey@nvidia.com>
Signed-off-by: Lee Yang <leey@nvidia.com>
Co-authored-by: Enrico Minack <github@enrico.minack.dev> Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com> Co-authored-by: Enrico Minack <github@enrico.minack.dev>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com> Co-authored-by: Enrico Minack <github@enrico.minack.dev>
Signed-off-by: Lee Yang <leewyang@gmail.com> Co-authored-by: Enrico Minack <github@enrico.minack.dev>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
…ar & conda from test dockerfiles; remove cupy dependency Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com> Co-authored-by: Enrico Minack <github@enrico.minack.dev>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
Signed-off-by: Lee Yang <leewyang@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent work!
@chongxiaoc are you happy with this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just catch a few inconsistencies.
Signed-off-by: Lee Yang <leewyang@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New round of checks. Just a few nits. For the NVTabular part, feel free to comment it since I'm not sure.
Signed-off-by: Lee Yang <leewyang@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work. Wait for CI completes and merge.
Checklist before submitting
Description
Fixes #3602.
This introduces a
DataModule
base class for Spark integrations likeKerasEstimator
, along with a defaultPetastormDataModule
and a newNVTabularDataModule
that leverages NVTabular for GPU-accelerated data loading of tabular datasets. It is loosely based on the existingDataModule
for PyTorch Lightning'sTorchEstimator
, which is unfortunately tied directly to thepl.LightningDataModule
. Ideally, this base class could also be used for the plain PyTorchTorchEstimator
as well.Review process to land