@@ -347,6 +347,64 @@ jobs:
347347 pip install slack_sdk tabulate
348348 python utils/log_reports.py >> $GITHUB_STEP_SUMMARY
349349
350+ run_nightly_quantization_tests :
351+ name : Torch quantization nightly tests
352+ strategy :
353+ fail-fast : false
354+ max-parallel : 2
355+ matrix :
356+ config :
357+ - backend : " bitsandbytes"
358+ test_location : " bnb"
359+ runs-on :
360+ group : aws-g6e-xlarge-plus
361+ container :
362+ image : diffusers/diffusers-pytorch-cuda
363+ options : --shm-size "20gb" --ipc host --gpus 0
364+ steps :
365+ - name : Checkout diffusers
366+ uses : actions/checkout@v3
367+ with :
368+ fetch-depth : 2
369+ - name : NVIDIA-SMI
370+ run : nvidia-smi
371+ - name : Install dependencies
372+ run : |
373+ python -m venv /opt/venv && export PATH="/opt/venv/bin:$PATH"
374+ python -m uv pip install -e [quality,test]
375+ python -m uv pip install -U ${{ matrix.config.backend }}
376+ python -m uv pip install pytest-reportlog
377+ - name : Environment
378+ run : |
379+ python utils/print_env.py
380+ - name : ${{ matrix.config.backend }} quantization tests on GPU
381+ env :
382+ HF_TOKEN : ${{ secrets.DIFFUSERS_HF_HUB_READ_TOKEN }}
383+ # https://pytorch.org/docs/stable/notes/randomness.html#avoiding-nondeterministic-algorithms
384+ CUBLAS_WORKSPACE_CONFIG : :16:8
385+ BIG_GPU_MEMORY : 40
386+ run : |
387+ python -m pytest -n 1 --max-worker-restart=0 --dist=loadfile \
388+ --make-reports=tests_${{ matrix.config.backend }}_torch_cuda \
389+ --report-log=tests_${{ matrix.config.backend }}_torch_cuda.log \
390+ tests/quantization/${{ matrix.config.test_location }}
391+ - name : Failure short reports
392+ if : ${{ failure() }}
393+ run : |
394+ cat reports/tests_${{ matrix.config.backend }}_torch_cuda_stats.txt
395+ cat reports/tests_${{ matrix.config.backend }}_torch_cuda_failures_short.txt
396+ - name : Test suite reports artifacts
397+ if : ${{ always() }}
398+ uses : actions/upload-artifact@v4
399+ with :
400+ name : torch_cuda_${{ matrix.config.backend }}_reports
401+ path : reports
402+ - name : Generate Report and Notify Channel
403+ if : always()
404+ run : |
405+ pip install slack_sdk tabulate
406+ python utils/log_reports.py >> $GITHUB_STEP_SUMMARY
407+
350408# M1 runner currently not well supported
351409# TODO: (Dhruv) add these back when we setup better testing for Apple Silicon
352410# run_nightly_tests_apple_m1:
0 commit comments