Scikit-learn hakkındaki çoğu tahmin edicide, paralel işler oluşturmak için / yöntemlerinde bir n_jobs
parametre vardır . Sadece 1 Python işlemi oluşturduğunu ve çekirdekleri maksimuma çıkardığını ve CPU kullanımının% 2500'e ulaşmasına neden olduğunu fark ettim . Bu, ~% 100 kullanımda birden fazla Python işlemi oluşturan pozitif 1 tamsayı> 1'e ayarlamaktan oldukça farklıdır.fit
predict
joblib
-1
Ayarlama, çoklu CPU Linux sunucusundaki CPU ve çekirdek kullanımını nasıl etkiler? (örneğin n_jobs=8
, 8 CPU tamamen kilitliyse veya CPU'lar hala diğer görevler / işlemler için bazı çekirdekler ayırıyor mu?)
Ayrıca, MemoryError
zaman zaman n_jobs=-1
büyük veri kümeleri için ayarlarken olsun . Bununla birlikte, bellek kullanımı tek Python işlemi için genellikle% 30-40 civarında seyreder. Veri ve bellek, değerine bağlı olarak nasıl yönetiliyor / kopyalanıyor n_jobs
?