Topik ini menyiapkan lingkungan kerja PyTorch dari awal: memilih antara build CUDA dan build CPU, menginstal paketnya melalui pip, memverifikasi hasil instalasi, dan menjalankan smoke test, yaitu uji coba kecil untuk memastikan seluruh komponen bekerja. Seluruh tahapan dirancang untuk berjalan tanpa GPU, dan cara berpikirnya tidak berubah ketika kelak GPU tersedia. Setelah selesai, perintah apa pun pada jalur ini dapat dijalankan tanpa hambatan lingkungan.
Memilih build: CUDA atau CPU#
PyTorch diedarkan dalam dua keluarga build, yaitu paket yang sudah dikompilasi beserta pustaka pendukungnya. Build CPU menjalankan seluruh perhitungan pada prosesor, sedangkan build CUDA menggunakan GPU NVIDIA melalui CUDA, yaitu platform komputasi paralel milik NVIDIA. Keduanya menyediakan API Python yang identik, sehingga kode yang ditulis untuk satu build berjalan pada build lainnya tanpa perubahan. Kata device pada PyTorch menyebut perangkat komputasi tempat tensor berada, misalnya cpu atau cuda.
Tabel berikut merangkum perbedaannya.
| Aspek | Build CPU | Build CUDA |
|---|---|---|
| Ukuran unduhan | ratusan megabita | beberapa gigabita |
| Perangkat keras | tidak menuntut GPU | GPU NVIDIA beserta driver-nya |
| Kecepatan pelatihan | cukup untuk model kecil | jauh lebih cepat untuk model besar |
| Kecocokan | pembelajaran dan eksperimen kecil | pelatihan skala besar |
Kekhawatiran lama yang tidak lagi relevan adalah perlunya menginstal CUDA Toolkit secara terpisah. Paket build CUDA yang diambil pip sudah menyertakan runtime CUDA yang dibutuhkannya, sehingga yang tersisa hanyalah GPU dengan driver yang memadai.
Instalasi dengan pip#
Instalasi dilakukan melalui pip, pengelola paket bawaan Python. Perintah pip install torch torchvision tanpa argumen tambahan mengambil build default dari PyPI, yang pada Linux dan Windows berupa build CUDA berukuran besar, sedangkan pada macOS otomatis menjadi build CPU. Bila build CPU yang diinginkan pada Linux atau Windows, tambahkan --index-url yang menunjuk ke repositori resmi PyTorch:
# tidak-dijalankan
# kedua perintah berikut tidak dieksekusi di sandbox karena unduhannya besar (ratusan megabita hingga beberapa gigabita)
pip install torch torchvision
pip install torch torchvision --index-url https://download.pytorch.org/whl/cputorchvision disertakan dalam kedua perintah karena menyediakan dataset citra dan model klasik yang bobotnya sudah dilatih, yang digunakan pada jalur ini. Perintah yang kedua menghasilkan build CPU dan menjadi pilihan untuk lingkungan tanpa GPU. Proses instalasi memakan waktu beberapa menit tergantung pada kecepatan jaringan, dan hanya perlu dilakukan satu kali per lingkungan Python. Apabila komputer menggunakan beberapa lingkungan sekaligus, pastikan lingkungan yang aktif saat instalasi sama dengan lingkungan yang aktif saat kode dijalankan.
Verifikasi instalasi#
Verifikasi pertama cukup satu baris, yaitu meminta PyTorch menyebutkan versinya sendiri:
# tampilkan versi PyTorch yang terpasang
python3 -c "import torch; print(torch.__version__)"2.15.0+cpuBilangan di depan adalah versi PyTorch, sedangkan akhiran +cpu menyatakan build yang terpasang. Akhiran serupa pada build CUDA berbentuk +cu121 dan sejenisnya, yang menandai versi CUDA yang dibundel. Apabila perintah ini berakhir dengan ModuleNotFoundError, paket PyTorch belum terpasang pada interpreter yang sedang digunakan.
Pemeriksaan berikutnya lebih menyeluruh karena sekaligus menanyakan keberadaan GPU:
import torch
print("Versi PyTorch :", torch.__version__)
print("CUDA tersedia :", torch.cuda.is_available())
print("Jumlah device CUDA :", torch.cuda.device_count())Versi PyTorch : 2.15.0+cpu
CUDA tersedia : False
Jumlah device CUDA : 0Tiga baris keluaran menjawab tiga pertanyaan berbeda. torch.__version__ mengonfirmasi paket yang terpasang beserta build-nya, torch.cuda.is_available() menyatakan bahwa build CUDA tidak terpasang atau GPU tidak terdeteksi, dan torch.cuda.device_count() menghitung jumlah GPU yang dapat digunakan. Nilai False pada keluaran di atas adalah jawaban yang sah untuk lingkungan tanpa GPU, bukan tanda kegagalan instalasi. Build CPU menjalankan API yang sama persis, sehingga seluruh materi jalur ini tetap dapat dikerjakan.
Smoke test pertama#
Pada tahap terakhir, smoke test dijalankan untuk memastikan semua komponen bekerja sebelum pekerjaan sesungguhnya dimulai. Untuk PyTorch, uji ini berarti membuat tensor, menghitung nilai di atasnya, dan mencetak device tempat perhitungan berjalan.
Skrip berikut memuat pola yang digunakan berulang kali pada jalur ini: pemilihan device ditulis secara eksplisit berdasarkan jawaban torch.cuda.is_available(), dan tensor dibuat langsung pada device tersebut:
import torch
# pilih device: GPU bila tersedia, CPU bila tidak
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
print("Device aktif:", device)
# tensor kecil dibuat langsung di device tersebut
a = torch.tensor([[1.0, 2.0], [3.0, 4.0]], device=device)
b = torch.tensor([[5.0, 6.0], [7.0, 8.0]], device=device)
# perkalian matriks sebagai bukti perhitungan berjalan
c = a @ b
print("Hasil perkalian matriks:")
print(c)Device aktif: cpu
Hasil perkalian matriks:
tensor([[19., 22.],
[43., 50.]])Baris Device aktif: cpu menunjukkan pemilihan device berjalan, dan hasil perkalian matriks tercetak lengkap dengan nilai-nilainya. Pada komputer dengan build CUDA dan GPU yang siap, baris yang sama mencetak cuda, sedangkan sisa skripnya tidak berubah sama sekali. Perpindahan dari satu device ke device lain inilah salah satu daya tarik PyTorch: kode yang mengikuti pola di atas tidak perlu disunting ketika device berganti.
Kesalahan umum#
Dua error berikut paling sering muncul tepat setelah instalasi.
Yang pertama adalah ModuleNotFoundError: No module named 'torch' padahal instalasi baru saja dilakukan. Penyebabnya hampir selalu perbedaan lingkungan: pip yang menjalankan instalasi terhubung ke interpreter Python yang berbeda dari interpreter yang menjalankan skrip. Perbaikannya adalah menginstal melalui interpreter yang sama dengan skrip, misalnya python3 -m pip install torch, setelah lingkungan yang aktif dipastikan.
Yang kedua adalah menganggap torch.cuda.is_available() bernilai False sebagai kegagalan instalasi. Nilai tersebut adalah jawaban yang sah untuk build CPU atau komputer tanpa GPU yang memadai. Apabila GPU memang ada dan nilainya tetap False, periksa tiga hal secara berurutan: akhiran versi yang menyatakan build yang terpasang, driver NVIDIA yang terpasang, dan keluaran torch.cuda.device_count().
Ringkasan#
- Build CPU dan build CUDA menyediakan API Python yang identik. Pilihannya ditentukan oleh perangkat keras dan ukuran pelatihan, sedangkan build CPU sudah cukup untuk seluruh jalur ini.
- Instalasi berjalan melalui pip dengan repositori resmi PyTorch, lalu diverifikasi melalui
torch.__version__dantorch.cuda.is_available(). - Smoke test pertama membuat tensor pada device terpilih, menghitung perkalian matriks, dan mencetak device aktif dengan pola pemilihan device yang digunakan sepanjang jalur.
Referensi#
- PyTorch documentation — PyTorch
— Rujukan API lengkap, termasuk dokumentasi modul
torch.cuda. - Learn the Basics — PyTorch — Pengenalan resmi tensor dan alur kerja PyTorch setelah lingkungan siap.