From 7bb7736656ccb9463a37b1178a03be44bc2a8190 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 10 May 2026 17:01:30 +0000
Subject: [PATCH 1/5] Initial plan
From 68af08183fe828437a8f6c9ca10896a33888481a Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 10 May 2026 17:04:25 +0000
Subject: [PATCH 2/5] docs: update GPU contribution and Colab repository
references
Agent-Logs-Url: https://github.com/OpenPIV/openpiv-python-gpu/sessions/85a079ee-bcfa-44d2-92f9-cafc65f2743f
Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com>
---
README.md | 6 +++---
openpiv/docs/src/developers.rst | 20 ++++++++++++++++---
...openpiv_python_gpu_tutorial_advanced.ipynb | 12 +++++------
.../openpiv_python_gpu_tutorial_basic.ipynb | 20 +++++++++----------
4 files changed, 36 insertions(+), 22 deletions(-)
diff --git a/README.md b/README.md
index 344ae5b1..44694c50 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@ paper on that topic has been published.
## Test without installation
-Try the GPU functionality on Google Colab: [Basic Tutorial](https://colab.research.google.com/github/ericyang125/openpiv-python-gpu/blob/main/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb).
+Try the GPU functionality on Google Colab: [Basic Tutorial](https://colab.research.google.com/github/OpenPIV/openpiv-python-gpu/blob/master/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb).
When viewing the file on GitHub there will be a link to view the notebook with Google Colab.
Click the link to load the notebook into Colaboratory where you can test the GPU capabilities.
@@ -54,8 +54,8 @@ For documentation of the GPU-accelerated modules, see API reference or the tutor
## Demo notebooks
Two tutorial notebooks demonstrate the usage of the GPU-accelerated functions:
-1. [Basic tutorial](https://colab.research.google.com/github/ericyang125/openpiv-python-gpu/blob/main/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb)
-2. [Advanced tutorial](https://colab.research.google.com/github/ericyang125/openpiv-python-gpu/blob/main/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb)
+1. [Basic tutorial](https://colab.research.google.com/github/OpenPIV/openpiv-python-gpu/blob/master/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb)
+2. [Advanced tutorial](https://colab.research.google.com/github/OpenPIV/openpiv-python-gpu/blob/master/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb)
Notebooks containing examples for non-GPU PIV functions are available in the base repository:
[OpenPIV-Python-Examples](https://github.com/OpenPIV/openpiv-python-examples)
diff --git a/openpiv/docs/src/developers.rst b/openpiv/docs/src/developers.rst
index 7190e91d..7f09b30b 100644
--- a/openpiv/docs/src/developers.rst
+++ b/openpiv/docs/src/developers.rst
@@ -14,9 +14,9 @@ This is absolutely not a comprehensive guide of git development, and it is only
1) Download and install git. Instruction can be found `here `_.
2) Set up a github account.
-3) Clone OpenPiv repository using::
+3) Clone OpenPiv GPU repository using::
- git clone http://github.com/openpiv/openpiv-python.git
+ git clone https://github.com/OpenPIV/openpiv-python-gpu.git
4) create a branch `new_feature` where you implement your new feature.
5) Fix, change, implement, document code, ...
@@ -28,6 +28,21 @@ This is absolutely not a comprehensive guide of git development, and it is only
11) Create another branch for a new feature.
+Submitting larger GPU changes
+-----------------------------
+If your update contains several related improvements (for example Python-version migration, validation fixes, and
+performance tuning in the GPU processing module), open one pull request that clearly lists each change and what was
+validated.
+
+Before opening the PR, run at least:
+
+* GPU tutorial notebook(s) on Colab or another CUDA-enabled environment.
+* ``python -m pytest openpiv/test/gpu`` on a CUDA-enabled machine.
+* Relevant CPU regression tests, e.g. ``python -m pytest openpiv/test/test_validation.py``.
+
+API compatibility note: avoid renaming public functions or changing public arguments without a compatibility plan.
+When a rename is necessary, keep backward-compatible wrappers (or aliases) and document the transition in the PR.
+
Which language can I use?
-------------------------
As a general rule, we use Python where it does not make any difference with code speed. In those situations where Python speed is
@@ -62,4 +77,3 @@ If you need to install cv2::
conda install -c conda-forge opencv
-
diff --git a/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb b/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb
index 5bae168c..cc5a8c65 100644
--- a/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb
+++ b/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb
@@ -13,7 +13,7 @@
"\n",
"Use the following link to run this using GPUs from Google Colab.\n",
"\n",
- "[](https://colab.research.google.com/github/ericyang125/openpiv-python-gpu/blob/main/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb)\n",
+ "[](https://colab.research.google.com/github/OpenPIV/openpiv-python-gpu/blob/master/openpiv/tutorials/openpiv_python_gpu_tutorial_advanced.ipynb)\n",
"\n",
"Ensure that GPU acceleration is enabled in Google Colab: Runtime > Change runtime type.\n"
]
@@ -150,10 +150,10 @@
"Built on Wed_Sep_21_10:33:58_PDT_2022\n",
"Cuda compilation tools, release 11.8, V11.8.89\n",
"Build cuda_11.8.r11.8/compiler.31833905_0\n",
- "Collecting git+https://github.com/ericyang125/openpiv-python-gpu.git\n",
- " Cloning https://github.com/ericyang125/openpiv-python-gpu.git to /tmp/pip-req-build-mp3so4lw\n",
- " Running command git clone --filter=blob:none --quiet https://github.com/ericyang125/openpiv-python-gpu.git /tmp/pip-req-build-mp3so4lw\n",
- " Resolved https://github.com/ericyang125/openpiv-python-gpu.git to commit b3084e7c6be5373edc50751d9afb08bc6c3573a4\n",
+ "Collecting git+https://github.com/OpenPIV/openpiv-python-gpu.git\n",
+ " Cloning https://github.com/OpenPIV/openpiv-python-gpu.git to /tmp/pip-req-build-mp3so4lw\n",
+ " Running command git clone --filter=blob:none --quiet https://github.com/OpenPIV/openpiv-python-gpu.git /tmp/pip-req-build-mp3so4lw\n",
+ " Resolved https://github.com/OpenPIV/openpiv-python-gpu.git to commit b3084e7c6be5373edc50751d9afb08bc6c3573a4\n",
" Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n",
" Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n",
" Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n",
@@ -220,7 +220,7 @@
"!nvcc --version\n",
"\n",
"# Install from source.\n",
- "!pip install git+https://github.com/ericyang125/openpiv-python-gpu.git\n"
+ "!pip install git+https://github.com/OpenPIV/openpiv-python-gpu.git\n"
]
},
{
diff --git a/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb b/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb
index c7cc01d1..ba691498 100644
--- a/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb
+++ b/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb
@@ -42,7 +42,7 @@
"\n",
"Use the following link to run this using GPUs from Google Colab.\n",
"\n",
- "[](https://colab.research.google.com/github/ericyang125/openpiv-python-gpu/blob/main/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb)\n",
+ "[](https://colab.research.google.com/github/OpenPIV/openpiv-python-gpu/blob/master/openpiv/tutorials/openpiv_python_gpu_tutorial_basic.ipynb)\n",
"\n",
"Ensure that GPU acceleration is enabled in Google Colab: Runtime > Change runtime type."
]
@@ -287,7 +287,7 @@
"!nvcc --version\n",
"\n",
"# Install from source.\n",
- "!pip install git+https://github.com/ericyang125/openpiv-python-gpu.git\n"
+ "!pip install git+https://github.com/OpenPIV/openpiv-python-gpu.git\n"
],
"execution_count": 1,
"outputs": [
@@ -320,10 +320,10 @@
"Built on Wed_Sep_21_10:33:58_PDT_2022\n",
"Cuda compilation tools, release 11.8, V11.8.89\n",
"Build cuda_11.8.r11.8/compiler.31833905_0\n",
- "Collecting git+https://github.com/ericyang125/openpiv-python-gpu.git\n",
- " Cloning https://github.com/ericyang125/openpiv-python-gpu.git to /tmp/pip-req-build-68g_5zr4\n",
- " Running command git clone --filter=blob:none --quiet https://github.com/ericyang125/openpiv-python-gpu.git /tmp/pip-req-build-68g_5zr4\n",
- " Resolved https://github.com/ericyang125/openpiv-python-gpu.git to commit 4a47c3ab291e8bc2408578e598cd742eafa95b5d\n",
+ "Collecting git+https://github.com/OpenPIV/openpiv-python-gpu.git\n",
+ " Cloning https://github.com/OpenPIV/openpiv-python-gpu.git to /tmp/pip-req-build-68g_5zr4\n",
+ " Running command git clone --filter=blob:none --quiet https://github.com/OpenPIV/openpiv-python-gpu.git /tmp/pip-req-build-68g_5zr4\n",
+ " Resolved https://github.com/OpenPIV/openpiv-python-gpu.git to commit 4a47c3ab291e8bc2408578e598cd742eafa95b5d\n",
" Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n",
" Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n",
" Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n",
@@ -410,8 +410,8 @@
}
},
"source": [
- "!wget https://raw.githubusercontent.com/ericyang125/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_a.bmp\n",
- "!wget https://raw.githubusercontent.com/ericyang125/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_b.bmp\n"
+ "!wget https://raw.githubusercontent.com/OpenPIV/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_a.bmp\n",
+ "!wget https://raw.githubusercontent.com/OpenPIV/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_b.bmp\n"
],
"execution_count": 2,
"outputs": [
@@ -419,7 +419,7 @@
"output_type": "stream",
"name": "stdout",
"text": [
- "--2023-12-10 03:20:25-- https://raw.githubusercontent.com/ericyang125/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_a.bmp\n",
+ "--2023-12-10 03:20:25-- https://raw.githubusercontent.com/OpenPIV/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_a.bmp\n",
"Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...\n",
"Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
@@ -430,7 +430,7 @@
"\n",
"2023-12-10 03:20:25 (8.94 MB/s) - ‘exp1_001_a.bmp’ saved [190006/190006]\n",
"\n",
- "--2023-12-10 03:20:25-- https://raw.githubusercontent.com/ericyang125/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_b.bmp\n",
+ "--2023-12-10 03:20:25-- https://raw.githubusercontent.com/OpenPIV/openpiv-python-gpu/master/openpiv/data/test1/exp1_001_b.bmp\n",
"Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...\n",
"Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
From f264f42e91093a27fdaef605a88a9a98dcbb9ba5 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 10 May 2026 17:05:21 +0000
Subject: [PATCH 3/5] docs: clarify OpenPIV GPU clone instruction wording
Agent-Logs-Url: https://github.com/OpenPIV/openpiv-python-gpu/sessions/85a079ee-bcfa-44d2-92f9-cafc65f2743f
Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com>
---
openpiv/docs/src/developers.rst | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/openpiv/docs/src/developers.rst b/openpiv/docs/src/developers.rst
index 7f09b30b..153b7378 100644
--- a/openpiv/docs/src/developers.rst
+++ b/openpiv/docs/src/developers.rst
@@ -14,7 +14,7 @@ This is absolutely not a comprehensive guide of git development, and it is only
1) Download and install git. Instruction can be found `here `_.
2) Set up a github account.
-3) Clone OpenPiv GPU repository using::
+3) Clone the OpenPIV GPU repository (this repository) using::
git clone https://github.com/OpenPIV/openpiv-python-gpu.git
@@ -76,4 +76,3 @@ If you need to install cv2::
--------------------------
conda install -c conda-forge opencv
-
From 348e00d1f6c07e50a7a319b62e1480940bc89e4e Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 10 May 2026 17:06:10 +0000
Subject: [PATCH 4/5] docs: refine developer guidance wording
Agent-Logs-Url: https://github.com/OpenPIV/openpiv-python-gpu/sessions/85a079ee-bcfa-44d2-92f9-cafc65f2743f
Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com>
---
openpiv/docs/src/developers.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/openpiv/docs/src/developers.rst b/openpiv/docs/src/developers.rst
index 153b7378..bf86b8e2 100644
--- a/openpiv/docs/src/developers.rst
+++ b/openpiv/docs/src/developers.rst
@@ -14,7 +14,7 @@ This is absolutely not a comprehensive guide of git development, and it is only
1) Download and install git. Instruction can be found `here `_.
2) Set up a github account.
-3) Clone the OpenPIV GPU repository (this repository) using::
+3) Clone this repository using::
git clone https://github.com/OpenPIV/openpiv-python-gpu.git
@@ -37,7 +37,7 @@ validated.
Before opening the PR, run at least:
* GPU tutorial notebook(s) on Colab or another CUDA-enabled environment.
-* ``python -m pytest openpiv/test/gpu`` on a CUDA-enabled machine.
+* ``python -m pytest openpiv/test/gpu`` from the repository root on a CUDA-enabled machine.
* Relevant CPU regression tests, e.g. ``python -m pytest openpiv/test/test_validation.py``.
API compatibility note: avoid renaming public functions or changing public arguments without a compatibility plan.
From 02b963372f38845110b3ac4e3d698b089e16b7d7 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sun, 10 May 2026 17:07:01 +0000
Subject: [PATCH 5/5] docs: clarify OpenPIV GPU clone and test command examples
Agent-Logs-Url: https://github.com/OpenPIV/openpiv-python-gpu/sessions/85a079ee-bcfa-44d2-92f9-cafc65f2743f
Co-authored-by: alexlib <747110+alexlib@users.noreply.github.com>
---
openpiv/docs/src/developers.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/openpiv/docs/src/developers.rst b/openpiv/docs/src/developers.rst
index bf86b8e2..14a8e4d4 100644
--- a/openpiv/docs/src/developers.rst
+++ b/openpiv/docs/src/developers.rst
@@ -14,7 +14,7 @@ This is absolutely not a comprehensive guide of git development, and it is only
1) Download and install git. Instruction can be found `here `_.
2) Set up a github account.
-3) Clone this repository using::
+3) Clone the OpenPIV GPU repository using::
git clone https://github.com/OpenPIV/openpiv-python-gpu.git
@@ -37,7 +37,7 @@ validated.
Before opening the PR, run at least:
* GPU tutorial notebook(s) on Colab or another CUDA-enabled environment.
-* ``python -m pytest openpiv/test/gpu`` from the repository root on a CUDA-enabled machine.
+* ``python -m pytest openpiv/test`` on a CUDA-enabled machine (includes the GPU tests under ``openpiv/test/gpu``).
* Relevant CPU regression tests, e.g. ``python -m pytest openpiv/test/test_validation.py``.
API compatibility note: avoid renaming public functions or changing public arguments without a compatibility plan.