Skip to content

Build GPU conda package #1405

Open
moazreyad wants to merge 1 commit into
apache:dev-postgresqlfrom
moazreyad:conda-gpu
Open

Build GPU conda package #1405
moazreyad wants to merge 1 commit into
apache:dev-postgresqlfrom
moazreyad:conda-gpu

Conversation

@moazreyad

Copy link
Copy Markdown
Contributor

Summary

This PR adds a GPU conda build workflow and updates the SINGA GPU build path for CUDA 12.2 / cuDNN 8.

Changes

  • Add .github/workflows/conda-gpu-build.yaml

    • Runs on ubuntu-latest
    • Builds the GPU conda package with conda-build
    • Uses CUDA 12.2
    • Uses Python 3.8
  • Update the conda GPU recipe

    • Pin CMake below 4 for compatibility with the current project CMake files
    • Align CUDA 12.2 build dependencies
    • Use GCC/G++ 11 for the CUDA 12 build
    • Add CUDA runtime/dev package pins needed by the build
  • Update CUDA/cuDNN compatibility

    • Add missing Thrust header include
    • Support cuDNN 8 convolution algorithm selection APIs
    • Support cuDNN 8 RNN descriptor setup APIs

Validation

  • Confirmed conda render succeeds.

  • Confirmed conda-build tool/conda/singa succeeds in GitHub Actions.

  • Downloaded and tested the built conda package locally.

  • Verified the package can be installed from a local indexed conda channel with runtime dependencies resolved.

  • Verified import smoke test:

    python -c "import singa; import singa.singa_wrap; print(singa.__version__)"
    
  • Verified lightweight GPU examples locally:

    python examples/mlp/model.py --max-epoch 1
    python examples/mlp/native.py --max-epoch 1

Notes

GitHub-hosted ubuntu-latest runners do not provide NVIDIA GPUs, so the workflow currently validates that the GPU conda package builds successfully. Runtime GPU execution was tested locally on a machine with an NVIDIA GPU.

@moazreyad moazreyad self-assigned this Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant