Python 3.14 support #26
@@ -16,7 +16,7 @@ jobs:
|
|||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v5
|
||||||
with:
|
with:
|
||||||
python-version: '3.12'
|
python-version: '3.14'
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ jobs:
|
|||||||
runs-on: nvidia-cuda
|
runs-on: nvidia-cuda
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
python-version: ["3.8", "3.10", "3.12"]
|
python-version: ["3.8", "3.10", "3.12", "3.14"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
|
|||||||
+1
-1
@@ -81,7 +81,7 @@ You can replicate our CI environment exactly to minimize "it works on my machine
|
|||||||
* **CUDA Toolkit:** 12.5.1
|
* **CUDA Toolkit:** 12.5.1
|
||||||
* **Base Docker Image:** `nvidia/cuda:12.5.1-devel-ubuntu24.04`
|
* **Base Docker Image:** `nvidia/cuda:12.5.1-devel-ubuntu24.04`
|
||||||
* **Node.js Version:** 20.x
|
* **Node.js Version:** 20.x
|
||||||
* **Python Versions Tested:** 3.8, 3.10, 3.12
|
* **Python Versions Tested:** 3.8, 3.10, 3.12, 3.14
|
||||||
* **CI Docker Image:** You can pull the exact image used by our runners from Docker Hub:
|
* **CI Docker Image:** You can pull the exact image used by our runners from Docker Hub:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ classifiers = [
|
|||||||
"Programming Language :: Python :: 3.10",
|
"Programming Language :: Python :: 3.10",
|
||||||
"Programming Language :: Python :: 3.11",
|
"Programming Language :: Python :: 3.11",
|
||||||
"Programming Language :: Python :: 3.12",
|
"Programming Language :: Python :: 3.12",
|
||||||
|
"Programming Language :: Python :: 3.13",
|
||||||
|
"Programming Language :: Python :: 3.14",
|
||||||
"Topic :: Scientific/Engineering :: Mathematics",
|
"Topic :: Scientific/Engineering :: Mathematics",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -139,7 +139,7 @@ def test_get_real_roots_numpy(quadratic_func):
|
|||||||
Tests that the NumPy-based genetic algorithm approximates the roots correctly.
|
Tests that the NumPy-based genetic algorithm approximates the roots correctly.
|
||||||
"""
|
"""
|
||||||
# Using more generations for higher accuracy in testing
|
# Using more generations for higher accuracy in testing
|
||||||
ga_opts = GA_Options(num_of_generations=50, data_size=200000, selection_percentile=0.66, root_precision=3)
|
ga_opts = GA_Options(num_of_generations=100, data_size=500000, selection_percentile=0.66, root_precision=2)
|
||||||
|
|
||||||
roots = quadratic_func.get_real_roots(ga_opts, use_cuda=False)
|
roots = quadratic_func.get_real_roots(ga_opts, use_cuda=False)
|
||||||
|
|
||||||
@@ -158,7 +158,7 @@ def test_get_real_roots_cuda(quadratic_func):
|
|||||||
It will be skipped automatically if CuPy is not available.
|
It will be skipped automatically if CuPy is not available.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
ga_opts = GA_Options(num_of_generations=50, data_size=200000, selection_percentile=0.66, root_precision=3)
|
ga_opts = GA_Options(num_of_generations=100, data_size=500000, selection_percentile=0.66, root_precision=2)
|
||||||
|
|
||||||
roots = quadratic_func.get_real_roots(ga_opts, use_cuda=True)
|
roots = quadratic_func.get_real_roots(ga_opts, use_cuda=True)
|
||||||
|
|
||||||
@@ -172,7 +172,7 @@ def test_get_roots_numpy(complex_func):
|
|||||||
Tests that the NumPy-based genetic algorithm approximates the roots correctly.
|
Tests that the NumPy-based genetic algorithm approximates the roots correctly.
|
||||||
"""
|
"""
|
||||||
# Using more generations for higher accuracy in testing
|
# Using more generations for higher accuracy in testing
|
||||||
ga_opts = GA_Options(num_of_generations=50, data_size=200000, selection_percentile=0.66, root_precision=3)
|
ga_opts = GA_Options(num_of_generations=100, data_size=500000, selection_percentile=0.66, root_precision=2)
|
||||||
|
|
||||||
roots = complex_func.get_roots(ga_opts, use_cuda=False)
|
roots = complex_func.get_roots(ga_opts, use_cuda=False)
|
||||||
|
|
||||||
@@ -191,7 +191,7 @@ def test_get_roots_cuda(complex_func):
|
|||||||
It will be skipped automatically if CuPy is not available.
|
It will be skipped automatically if CuPy is not available.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
ga_opts = GA_Options(num_of_generations=50, data_size=200000, selection_percentile=0.66, root_precision=3)
|
ga_opts = GA_Options(num_of_generations=100, data_size=500000, selection_percentile=0.66, root_precision=2)
|
||||||
|
|
||||||
roots = complex_func.get_roots(ga_opts, use_cuda=True)
|
roots = complex_func.get_roots(ga_opts, use_cuda=True)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user