Idiomatic multi-gpu usage

Offen
#37 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
python, pytorch

Rechercherichtung

Das Issue nennt keine Repository-Dateien oder Tests. Beginne damit, das gezeigte PyTorch-, CuPy- und nvImageCodec-Multi-GPU-Snippet zu reproduzieren, und untersuche anschließend, wie Encoder ein Gerät auswählt. Als erledigt gilt eine dokumentierte, funktionierende Nutzungsmöglichkeit, die Tensoren auf der vorgesehenen GPU hält und den gemeldeten Core Dump vermeidet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

question
Describe the question.

I'm trying to utilize this library in multi-gpu torch settings and so far I'm getting no luck with frequent core dumped error, that doesn't tell me much.

my current approach is this (LLM generated):

            dev_idx = _torch.cuda.current_device() if _torch.cuda.is_available() else 0
            with cp.cuda.Device(dev_idx):
                encoder = nvimgcodec.Encoder()
                output_path = frame_dir / f"{to_stem(name)}.tiff"
                gpu_arr = cp.asarray(result.cpu())
                encoder.write(str(output_path), gpu_arr)
                # Release GPU memory retained by CuPy's pool to avoid OOM across concurrent saves
                try:
                    cp.get_default_memory_pool().free_all_blocks()
                except Exception:
                    pass

from nvidia-smi I see that most of the memory is being allocated on GPU 0 and it feels like nvImageEncoder is not explicitly aware of what GPU it is expected to run on. Can you provide example on how to utilize it and keep tensors on GPU?

Check for duplicates
  • I have searched the open bugs/issues and have found no duplicates for this bug report
Vorherrschende Sprache
Jupyter Notebook
Sterne
164
Forks
26
Ø Merge
27 Min.
Gemergte PRs (30 T.)
1

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus NVIDIA/nvImageCodec

Alle Issues in NVIDIA/nvImageCodec

Ähnliche Issues

Weitere Issues zu Computer Vision

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.