NVIDIA / spark-rapids-tools

User tools for Spark RAPIDS
Apache License 2.0
50 stars 37 forks source link

Update tools with latest qualx and add CLI for train #1064

Closed parthosa closed 4 months ago

parthosa commented 4 months ago

Fixes #1049.

We want to import the training module from QualX and update the prediction code with latest changes. This will be done in four steps.

Steps

  1. Import the source code and pretrained models as it as. Exclude these from pytest and flake8 linters.
  2. Make changes in the qualx files to connect them with tools.
  3. Make changes in the tools to use the latest changes in qualx.
  4. Add entry point for train by adding a new CMD for training.

Changes

How to test/run?

We have three entry points with qualx

1. Python Qualification CMD:

spark_rapids qualification --platform <platform> --eventlogs </path/to/eventlogs> --estimation_model xgboost

2. Python Prediction CMD:

spark_rapids prediction --qual_output </path/to/qual_202406xxx> --prof_output </path/to/qual_202406xx> --output_folder </path/to/save/csv/files>

3. Python Train CMD (new):

Install optional dependencies for qualx training

cd user_tools
pip install -e .[qualx]

Train CMD:

spark_rapids train --dataset </path/to/dataset/files(s)> --model </path/to/save/trained/model> --output_folder </path/to/save/csv/files>

Note:

leewyang commented 4 months ago

Just to clarify things a bit per @amahussein's questions: