[Fork] Pascal GPU Support for Immich ML (GTX 10-series) #24576
Replies: 5 comments 3 replies
-
|
@mertalev is this a regression in our supported platforms? |
Beta Was this translation helpful? Give feedback.
-
|
Everything in this post is LLM hallucination. The kernel of truth here is that bumping ONNX Runtime might have bumped the minimum compute capability to 7.5 (Turing) based on what they currently target in their repo's Dockerfiles. We can look into this. |
Beta Was this translation helpful? Give feedback.
-
|
FWIW I’m running ML on pascal (gtx 1080) on 2.3.1 and it works just fine |
Beta Was this translation helpful? Give feedback.
-
|
I'm not entirely sure, but based on the information I found, CUDA 12 seems to have some issues with supporting the Pascal architecture under ONNX Runtime. So, following the AI's suggestion, I downgraded the CUDA version to 11 and made the corresponding adjustments, and it started running normally afterward. |
Beta Was this translation helpful? Give feedback.
-
|
I tried with a GTX 1050 but unfortunately it doesn't seem to work, not being an expert I asked ChatGpt to help me by entering this Fix but after a few attempts it tells me "Setting execution providers to ['CPUExecutionProvider']" |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Pascal GPU Support Fork for Immich Machine Learning
Problem Statement
Starting from Immich v2.3.1, the official machine learning Docker image switched to CUDA 12 + cuDNN 9 + ONNX Runtime 1.20.1, which requires GPU compute capability 7.0 or higher. This change breaks compatibility with Pascal architecture GPUs (compute capability 6.1), including:
Users with these GPUs experience crashes when attempting to use machine learning features (facial recognition, CLIP search, object detection, etc.).
Solution
I've created a fork that restores full ML functionality for Pascal GPUs by:
1. CUDA 11.8 Downgrade
nvidia/cuda:11.8.0-cudnn8-runtime-ubuntu22.041.17.1(last version supporting CUDA 11.8)Dockerfile,pyproject.toml,uv.lock2. ONNX Model Patching Toolkit
Newer models (e.g., PP-OCRv5) use ONNX IR version 10, which is incompatible with ONNX Runtime 1.17.1. The toolkit includes:
audit_onnx_compatibility.py- Scan models and report IR versionspatch_onnx_models.py- Automatically downgrade IR v10 → v9auto_patch_immich_ml.sh- One-click orchestration script for the entire workflowdownload_models.py- Fetch models from ModelScope (alternative source)3. Kubernetes Integration
The auto-patch script can:
kubectlRepository
🔗 Fork URL: https://github.com/stephen94125/immich
📚 Documentation: See
README.mdfor detailed setup instructionsQuick Start
Building the Image
Using the Auto-Patch Script
cd machine-learning/tools chmod +x auto_patch_immich_ml.sh ./auto_patch_immich_ml.shThe script will automatically:
Docker Compose Integration
Testing Results
✅ Tested Environment:
Performance Notes
Related Commits
ee129a6- CUDA 11.8 downgrade2bb5bbe- ONNX patching toolkit1156724- kubectl cp path fixWhy Share This?
I believe many Immich users still have Pascal GPUs that are perfectly capable of running ML workloads. This fork allows them to continue using all features without needing hardware upgrades.
Feedback Welcome
If you're using Pascal GPUs and try this fork, please share your experience! I'm particularly interested in:
Disclaimer
This is an unofficial fork maintained independently. For the official Immich project, please visit https://immich.app or the main repository at https://github.com/immich-app/immich.
License: AGPLv3 (inherited from upstream Immich project)
Beta Was this translation helpful? Give feedback.
All reactions