Hesaplamak çok uzun süren bir kod çalıştırıyorum. Kodumu foreach()%dopar%
kullanarak paralel yaptım ve kümede çalışıyorum.Nadir geri izleme Hata
Genellikle iyi çalışır ama bazen çöker ve aşağıdaki hatayı alıyorum: Artık Error in { : task 4 failed - "missing value where TRUE/FALSE needed" Calls: %dopar% -> <Anonymous> Execution halted
diyor Yürütme ama sadece başkalarının çalışan ve sonunda onu çıkışa başarısız ama gelmez devam böylece bu özel çekirdek için durdurdu Bana daha önce söylemedin. Sanırım bir if
bildirimi ile ilgili bir sorun var. Kodu bilgisayarımda simüle etmeye çalıştım ama simüle edemediğim çok nadir.
Kod 100 000 döngüde 100 saatte kolayca çalışır ve bunlardan yalnızca biri başarısız olur.
Sorularım şunlardır: Hatanın nerede olduğunu gözden geçirebilir miyim? (Bir küme üzerinde kodu çalıştırıyorum böylece tüm güzel Rstudio öğelerine sahip değilim)
Ayrıca, görevlerden biri çökmüş olsa bile foreach()
döngüsünden çıktı almak mümkün mü?
Ya da insanlar benim bilgisayarımda kilitlenme yapmak için kullanabileceğiniz herhangi bir yöntem kullanabilir?
Gerekirse kodu yazabilirim, lütfen yardımcı olup olmadığını sorun.
Bilginizi bir try() içinde sarın. O zaman tüm sonuçları elde edebilecek ve sorunu araştırabileceksiniz. –
@KarlForner: Yapmaya çalışıyorum gibi görünmüyor. Sadece benim kodumda 'Beklenmedik semboller' hakkında şikayette bulunur ... Kullanmak için özel bir yol var mı? Ben hiç aşina değilim. – TAllieri
'try' veya' trycatch' iyi bir öneridir. Diğer bir olasılık da, her paralel çağrıda kullanılan * girişin * (j-th veri alt kümesinin) günlüğe kaydedilmesidir, böylece soruna neden olan veri parçasını daraltabilirsiniz. Bu arada, fonksiyonunuzda doğrulama kodu bulunduğundan emin olun; örneğin, 'length (bir şey)> 0' ve '! Is.na (bir şey)' 'in' TRUE'' olup olmadığını kontrol etmeden önce (eğer) . –