@@ -167,6 +167,250 @@ podman logs ci-analysis-agent
167
167
podman logs ollama
168
168
```
169
169
170
+ ## 🎮 GPU Acceleration Support
171
+
172
+ GPU acceleration significantly improves Ollama inference speed. This guide supports both NVIDIA and AMD GPUs.
173
+
174
+ ### ** NVIDIA GPU Setup**
175
+
176
+ #### 1. Install NVIDIA Drivers and Container Toolkit
177
+
178
+ ** Fedora/RHEL:**
179
+ ``` bash
180
+ # Install NVIDIA drivers
181
+ sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda
182
+
183
+ # Install container toolkit
184
+ sudo dnf install nvidia-container-toolkit
185
+
186
+ # Reboot to load drivers
187
+ sudo reboot
188
+ ```
189
+
190
+ ** Ubuntu/Debian:**
191
+ ``` bash
192
+ # Install NVIDIA drivers
193
+ sudo apt update
194
+ sudo apt install nvidia-driver-535 nvidia-utils-535
195
+
196
+ # Install container toolkit
197
+ distribution=$( . /etc/os-release; echo $ID$VERSION_ID )
198
+ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
199
+ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution /nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
200
+ sudo apt update
201
+ sudo apt install nvidia-container-toolkit
202
+
203
+ # Reboot to load drivers
204
+ sudo reboot
205
+ ```
206
+
207
+ #### 2. Configure Podman for NVIDIA GPU
208
+
209
+ ``` bash
210
+ # Configure runtime
211
+ sudo nvidia-ctk runtime configure --runtime=podman
212
+ sudo systemctl restart podman
213
+
214
+ # Test GPU access
215
+ nvidia-smi
216
+ podman run --rm --device nvidia.com/gpu=all nvidia/cuda:12.0-base-ubuntu20.04 nvidia-smi
217
+ ```
218
+
219
+ #### 3. Deploy with NVIDIA GPU
220
+
221
+ ``` bash
222
+ # Auto-detect and use NVIDIA GPU
223
+ ./quick-start-containers.sh
224
+
225
+ # Force NVIDIA GPU usage
226
+ ./quick-start-containers.sh --gpu nvidia
227
+
228
+ # Check GPU usage
229
+ podman exec ollama nvidia-smi
230
+ ```
231
+
232
+ ### ** AMD GPU Setup**
233
+
234
+ #### 1. Install AMD ROCm
235
+
236
+ ** Fedora/RHEL:**
237
+ ``` bash
238
+ # Install ROCm
239
+ sudo dnf install rocm-dev rocm-smi
240
+
241
+ # Add user to render group
242
+ sudo usermod -a -G render $USER
243
+
244
+ # Reboot
245
+ sudo reboot
246
+ ```
247
+
248
+ ** Ubuntu/Debian:**
249
+ ``` bash
250
+ # Install ROCm
251
+ wget -q -O - https://repo.radeon.com/rocm/rocm.gpg.key | sudo apt-key add -
252
+ echo ' deb [arch=amd64] https://repo.radeon.com/rocm/apt/debian/ ubuntu main' | sudo tee /etc/apt/sources.list.d/rocm.list
253
+ sudo apt update
254
+ sudo apt install rocm-dev rocm-smi
255
+
256
+ # Add user to render group
257
+ sudo usermod -a -G render $USER
258
+
259
+ # Reboot
260
+ sudo reboot
261
+ ```
262
+
263
+ #### 2. Deploy with AMD GPU
264
+
265
+ ``` bash
266
+ # Auto-detect and use AMD GPU
267
+ ./quick-start-containers.sh
268
+
269
+ # Force AMD GPU usage
270
+ ./quick-start-containers.sh --gpu amd
271
+
272
+ # Check GPU usage
273
+ podman exec ollama rocm-smi
274
+ ```
275
+
276
+ ### ** GPU Performance Comparison**
277
+
278
+ | GPU Type | Inference Speed | Memory Usage | Power Consumption |
279
+ | ----------| ----------------| --------------| -------------------|
280
+ | NVIDIA RTX 4090 | ~ 100 tokens/s | 8-12 GB | 200-300W |
281
+ | NVIDIA RTX 3080 | ~ 60 tokens/s | 6-10 GB | 150-200W |
282
+ | AMD RX 7900 XTX | ~ 40 tokens/s | 8-12 GB | 150-250W |
283
+ | CPU Only (16 cores) | ~ 5-10 tokens/s | 4-8 GB | 50-100W |
284
+
285
+ ### ** GPU Troubleshooting**
286
+
287
+ #### NVIDIA Issues
288
+
289
+ ** Problem** : ` nvidia-smi ` not found
290
+ ``` bash
291
+ # Install drivers
292
+ sudo dnf install nvidia-driver nvidia-utils # Fedora
293
+ sudo apt install nvidia-driver-535 # Ubuntu
294
+ ```
295
+
296
+ ** Problem** : Container can't access GPU
297
+ ``` bash
298
+ # Reconfigure runtime
299
+ sudo nvidia-ctk runtime configure --runtime=podman
300
+ sudo systemctl restart podman
301
+ ```
302
+
303
+ ** Problem** : Out of memory errors
304
+ ``` bash
305
+ # Use smaller model
306
+ ./quick-start-containers.sh -m qwen3:4b
307
+
308
+ # Or check GPU memory
309
+ nvidia-smi
310
+ ```
311
+
312
+ #### AMD Issues
313
+
314
+ ** Problem** : No GPU devices found
315
+ ``` bash
316
+ # Check devices
317
+ ls -la /dev/dri/
318
+ # Should show renderD128, renderD129, etc.
319
+
320
+ # Check permissions
321
+ groups $USER
322
+ # Should include 'render' group
323
+ ```
324
+
325
+ ** Problem** : ROCm not detected
326
+ ``` bash
327
+ # Install ROCm
328
+ sudo dnf install rocm-dev rocm-smi
329
+ # or
330
+ sudo apt install rocm-dev rocm-smi
331
+ ```
332
+
333
+ ### ** GPU Monitoring**
334
+
335
+ #### Real-time GPU monitoring:
336
+
337
+ ** NVIDIA:**
338
+ ``` bash
339
+ # Watch GPU usage
340
+ watch -n 1 podman exec ollama nvidia-smi
341
+
342
+ # Detailed monitoring
343
+ podman exec ollama nvidia-smi -l 1
344
+ ```
345
+
346
+ ** AMD:**
347
+ ``` bash
348
+ # Watch GPU usage
349
+ watch -n 1 podman exec ollama rocm-smi
350
+
351
+ # Detailed monitoring
352
+ podman exec ollama rocm-smi -d
353
+ ```
354
+
355
+ ### ** Performance Optimization**
356
+
357
+ #### Model Selection for GPU:
358
+
359
+ ** High-end GPU (24GB+ VRAM):**
360
+ ``` bash
361
+ ./quick-start-containers.sh -m llama3:70b
362
+ ```
363
+
364
+ ** Mid-range GPU (12-16GB VRAM):**
365
+ ``` bash
366
+ ./quick-start-containers.sh -m llama3:13b
367
+ ```
368
+
369
+ ** Entry-level GPU (8GB VRAM):**
370
+ ``` bash
371
+ ./quick-start-containers.sh -m llama3:8b
372
+ ```
373
+
374
+ ** Low VRAM (4-6GB):**
375
+ ``` bash
376
+ ./quick-start-containers.sh -m qwen3:4b
377
+ ```
378
+
379
+ ## 📋 Requirements
380
+
381
+ - ** System** : Linux (tested on Fedora, Ubuntu, RHEL)
382
+ - ** Podman** 4.0+ (or Docker as alternative)
383
+ - ** CPU** : 4+ cores recommended
384
+ - ** RAM** : 8GB+ (16GB+ recommended)
385
+ - ** Storage** : 20GB+ free space
386
+ - ** GPU** (optional): NVIDIA RTX series or AMD RX series
387
+
388
+ ## 🛠 Installation
389
+
390
+ ### Install Podman
391
+
392
+ ** Fedora/RHEL:**
393
+ ``` bash
394
+ sudo dnf install podman
395
+ ```
396
+
397
+ ** Ubuntu/Debian:**
398
+ ``` bash
399
+ sudo apt update && sudo apt install podman
400
+ ```
401
+
402
+ ** macOS:**
403
+ ``` bash
404
+ brew install podman
405
+ podman machine init
406
+ podman machine start
407
+ ```
408
+
409
+ ** Verify installation:**
410
+ ``` bash
411
+ podman --version
412
+ ```
413
+
170
414
## 🔧 Detailed Configuration
171
415
172
416
### Environment Variables
0 commit comments