← Yazılara dön
16 Eylül 2025 · 2 dk okuma

NVIDIA Jetson kurulumu: JetPack, ilk açılış ve TensorRT'ye giden yol

Çalıştığım her Jetson projesi, tek bir kare işlemeden önce kuruluma günler kaybetti. Sızıntıyı durduran sıra şu: sürüm seçimi, güç modu, doğru paketler, sonra TensorRT.

Yakın zamanda iki kez Jetson kurdum: bir kez SUAS yarışma drone’u için, bir kez savunma tarafındaki gerçek zamanlı takip işi için. İki seferde de model karttan önce hazırdı. Takvim sessizce kurulumda sızdırıyor ve sızıntının çoğu önlenebilir. Artık izlediğim sıra şu.

Egitimden sahaya: dagitim hatti

Şekil: kendi çizimim.

JetPack sürümünü karta dokunmadan önce seç

JetPack sadece bir işletim sistemi imajı değil. CUDA, cuDNN ve TensorRT sürümlerini sabitliyor ve sonradan kurduğun her şey bu üçünün üstünde duruyor. Yani ilk soru “hangi Jetson” değil. “Hangi TensorRT lazım” sorusudur ve cevaptan geriye doğru yürüyüp bir JetPack sürümüne varırsın.

Bunu yanlış yapmak gerçek günlere mal olur. Bir sürümle derlenen TensorRT motoru başka sürümde yüklenmez; farklı JetPack’li bir kartta derlenen motor bir dağıtım değil, sadece bir dosyadır. SUAS boru hattında hedef en baştan TensorRT FP16’ydı, bu yüzden JetPack seçimini kart daha açılmadan export yolu belirledi. O dedektör şimdi İHA görüntü sistemi sayfasında duruyor.

Pratik bir not: geliştirme kitleri SD kart imajından yazılır, üretim modülleri NVIDIA SDK Manager ister, SDK Manager da x86 bir Ubuntu makine ister. Sanal makine, USB kurtarma modu flash ortasında kopana kadar idare eder. Ekip Windows laptop kullanıyorsa yerli bir Ubuntu makineyi son geceye değil, bir hafta öncesine ayarla.

İlk açılış: benchmark’tan önce güç modunu ayarla

Kutudan çıkan Jetson tam hızda çalışmaz. Muhafazakâr bir güç modunda açılır ve bunu düzeltmeden aldığın her benchmark kurgudur. Aktif modu nvpmodel -q ile kontrol et, güç bütçene uyan modu seç, sonra jetson_clocks ile saatleri sabitle. Kartı yüklerken ikinci bir terminalde tegrastats açık dursun: kısılmayı anında gösterir ve Jetson’da termal kısılma sessizdir. Uyarı yok, sadece daha az kare.

Getirisi büyük iki küçük madde daha. Taşıyıcı kart izin veriyorsa çalışma verini NVMe’ye koy, çünkü sahada ilk ölen şey SD karttır. Fan profilini de bilinçli ayarla, çünkü varsayılan ayar masa başı için, güneşte kalan kapalı bir kutu için değil.

CUDA’yı pip ile kurmaya çalışma

Asıl önemli yığın JetPack’in kendisiyle gelir: CUDA, cuDNN, TensorRT. Bunları pip’le ya da rastgele depolardan kurmaya çalışma. Sonunda elinde sorunsuz import olan ama çalışma anında patlayan x86 bir paket kalır. PyTorch için NVIDIA’nın aarch64 paketleri gerekir, varsayılanlar değil. apt’ten gelen OpenCV sadece CPU’dur ve çoğu ön işleme için yeter. CUDA modülü gerçekten gerekiyorsa kendin derlersin; ne zaman değdiğini hangi CUDA’yı kullanıyorsun yazısında anlattım.

TensorRT’ye giden yol

İki projeyle temastan sağ çıkan iş akışı: eğitimi ve ONNX export’unu masaüstünde yap, ONNX’i Jetson’a kopyala, motoru cihazın kendisinde derle. Motorlar GPU’ya ve TensorRT sürümüne özeldir. Hedefte derlemek bir geçici çözüm değil, işin kendisi.

Önce FP16 derle. Jetson donanımında neredeyse bedava ve INT8’in istediği kalibrasyon verisine ihtiyaç duymaz. Sonra kutlamadan önce doğrula: sabit bir görüntü setini hem masaüstü modelden hem motordan geçir, çıktıları karşılaştır, hızdan ancak ondan sonra bahset. O adımın kendi yazısını dolduracak kadar keskin kenarı var: TensorRT ve FP16.

Jetson küçük bir masaüstü değil. Linux çalıştıran farklı bir makine. Kurulumu mühendislik işi olarak gör, plana kendi satırını ver; kart haftalarını yemeyi bırakır.

Kaynakça

JetsonJetPackgömülü sistemlerdevreye alma