Mulai sekarangMulai gratis

Berpindah ke parApply

Untuk menjalankan kode secara paralel menggunakan paket parallel, alur kerja dasarnya terdiri dari tiga langkah.

  1. Buat klaster menggunakan makeCluster().
  2. Lakukan pekerjaan komputasi.
  3. Hentikan klaster menggunakan stopCluster().

Cara paling sederhana untuk membuat klaster adalah dengan memberikan sebuah angka ke makeCluster(). Ini membuat klaster dengan tipe bawaan, menjalankan kode pada sejumlah core tersebut.

Objek dd adalah data frame dengan 10 kolom dan 100 baris. Kode berikut menggunakan apply() untuk menghitung median kolom:

apply(dd, 2, median)

Untuk menjalankannya secara paralel, Anda mengganti apply() dengan parApply(). Argumen untuk fungsi ini sama, kecuali sekarang ia menerima argumen klaster sebelum argumen-argumen apply() yang biasa.

Latihan ini merupakan bagian dari kursus

Menulis Kode R yang Efisien

Lihat Kursus

Instruksi latihan

  • Gunakan fungsi detectCores() untuk mencetak jumlah core yang tersedia ke konsol.
  • Buat klaster menggunakan makeCluster(); tetapkan jumlah core yang digunakan sama dengan 2. Simpan hasilnya sebagai cl.
  • Tulis ulang fungsi apply() di atas menjadi parApply(). Ingat, argumen pertama sekarang harus objek klaster, cl.
  • Hentikan klaster menggunakan stopCluster().

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Determine the number of available cores
___

# Create a cluster via makeCluster
cl <- makeCluster(___)

# Parallelize this code
apply(dd, 2, median)

# Stop the cluster
stopCluster(cl)
Edit dan Jalankan Kode