parApply'a geçiş
parallel paketini kullanarak kodu paralel çalıştırmanın temel iş akışı üç adımdan oluşur.
makeCluster()ile bir küme oluştur.- İşini yap.
stopCluster()ile kümeyi durdur.
Bir küme oluşturmanın en basit yolu makeCluster() fonksiyonuna bir sayı vermektir. Bu, varsayılan tipte bir küme oluşturur ve kodu bu kadar çekirdekte çalıştırır.
dd nesnesi 10 sütun ve 100 satıra sahip bir veri çerçevesidir. Aşağıdaki kod sütun medyanlarını hesaplamak için apply() kullanır:
apply(dd, 2, median)
Bunu paralel çalıştırmak için apply() yerine parApply() kullanırsın. Bu fonksiyonun argümanları aynıdır; tek fark, normal apply() argümanlarından önce bir küme argümanı almasıdır.
Bu egzersiz, kursun bir parçasıdır
Verimli R Kodu Yazma
Egzersiz talimatları
- Konsola kullanılabilir çekirdek sayısını yazdırmak için
detectCores()fonksiyonunu kullan. makeCluster()ile bir küme oluştur; kullanılacak çekirdek sayısını 2 olarak ayarla. Sonucuclolarak kaydet.- Yukarıdaki
apply()fonksiyonunuparApply()olarak yeniden yaz. Unutma, ilk argüman artık küme nesnesiclolmalı. stopCluster()kullanarak kümeyi durdur.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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)