-
Notifications
You must be signed in to change notification settings - Fork 5
Add Comprehensive CI Scripts and Documentation #26
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
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Summary: - Introduced multiple CI scripts: `setup.sh`, `install-triton.sh`, `install-project.sh`, and `run-tests.sh` for setting up the tritonparse environment, installing dependencies, and running tests. - Updated `README.md` to document the usage and features of the new scripts. - Added a GitHub Actions workflow (`test.yml`) to automate the testing process on code pushes and pull requests. These additions streamline the CI process, ensuring a consistent environment for development and testing.
Summary: - Modified the `test.yml` workflow file to add `findhao/setup_ci` branch to the list of branches that trigger CI tests on push events. This change ensures that CI tests are executed for the new setup branch, enhancing the testing coverage during development.
Summary: - Updated `install-triton.sh` to include system `libstdc++` updates for compatibility with newer C++ features and improved error handling during Triton installation verification. - Modified `setup.sh` to install cuDNN and verify its installation, enhancing the setup process for the Triton environment. - Updated `test.yml` to reflect changes in CUDA version from 12.6 to 12.8 and added a new linting job to ensure code quality. These changes improve the robustness of the CI setup and ensure compatibility with the latest dependencies.
Summary: - Introduced `install-cudnn.sh` script to automate the download and installation of cuDNN in the CI environment. - Updated `README.md` to document the new script, including environment variables and usage examples. - Modified `install-triton.sh` and `setup.sh` to utilize the new cuDNN installation script, streamlining the setup process. These changes enhance the CI setup by providing a dedicated script for cuDNN installation, improving clarity and usability for developers.
Summary: - Removed the linting job from the `test.yml` workflow, streamlining the CI process. - Retained the test execution step to ensure that tests are still run as part of the CI pipeline. This change simplifies the workflow configuration, focusing on test execution while eliminating the linting steps that were previously included.
Summary: - Added architecture detection to the `install-cudnn.sh` script, allowing it to download the appropriate cuDNN archive based on the system architecture (aarch64/arm64 or x86_64). - Updated the download process to fetch the cuDNN archive directly from NVIDIA, improving reliability. - Implemented error handling for both the download and extraction processes, ensuring better feedback in case of failures. - Cleaned up temporary files after installation to maintain a tidy environment. These changes improve the robustness and usability of the cuDNN installation process in the CI environment.
…allation Summary: - Modified `.ci/setup.sh` to include installation of the CUDA toolkit along with clang and clangd, enhancing the setup process for system dependencies. - Removed the separate CUDA installation step from the GitHub Actions workflow in `test.yml`, consolidating the installation process into the setup script. These changes improve the efficiency of the CI environment setup by ensuring all necessary dependencies are installed in a single step.
… GitHub Actions workflow
…ibility; update GitHub Actions workflow to reflect changes
…d logging; update GitHub Actions to fetch latest Triton commit for caching
…ging; update GitHub Actions workflow to cache Triton source and build more effectively
…checks, and error handling; update GitHub Actions workflow to ensure jq availability and handle commit fetching errors gracefully
…ript to streamline the process.
…rsion detection, and conditional installation of development libraries; update GitHub Actions workflow to include weekly cache timestamp and cache APT packages.
…nd pull request events, streamlining CI process
…rch's official cuDNN installation script; revise README to reflect changes and streamline installation instructions.
…vated permissions
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🚀 Add Comprehensive CI Scripts and Documentation
📋 Overview
This PR introduces a complete CI infrastructure for tritonparse, including modular scripts for environment setup, dependency installation, and test execution, along with comprehensive documentation.
🆕 New Features
CI Scripts (
.ci/
directory):setup.sh
- Sets up conda environment, installs system dependencies, and configures CUDA/cuDNNinstall-triton.sh
- Installs Triton from source with proper libstdc++ handlinginstall-cudnn.sh
- Downloads and installs cuDNN with architecture detectioninstall-project.sh
- Installs tritonparse in editable mode with test dependenciesrun-tests.sh
- Runs test suite with configurable options (CPU/CUDA/all, coverage)README.md
- Comprehensive documentation for all CI scriptsKey Script Features:
set -e
for fail-fast behaviorTest Configuration:
TEST_TYPE=cpu
TEST_TYPE=cuda
TEST_TYPE=all
(default)COVERAGE=true
📚 Documentation
🎯 Benefits
Test Plan:
Github Actions:
https://github.com/pytorch-labs/tritonparse/actions/workflows/test.yml
Manual Test: