Я пытаюсь запустить пример dask на https://examples.dask.org/machine-learning.html для блоков данных.
Мой python 3 код:
from dask.distributed import Client, progress
client = Client(processes=False, threads_per_worker=8,
n_workers=2, memory_limit='6GB')
client
Я не уверен, почему у него всегда такие жалобы?
distributed.worker - WARNING - Memory use is high but worker has no data to store to disk. Perhaps some other process is leaking memory? Process memory: 5.31 GB -- Worker memory limit: 4.00 GB
Кроме того,
from sklearn.datasets import make_classification
from sklearn.svm import SVC
from sklearn.model_selection import GridSearchCV
import pandas as pd
X, y = make_classification(n_samples=1000000, random_state=0)
param_grid = {"C": [0.001, 0.01, 0.1, 0.5, 1.0, 2.0, 5.0, 10.0],
"kernel": ['rbf', 'poly', 'sigmoid'],
"shrinking": [True, False]}
grid_search = GridSearchCV(SVC(gamma='auto', random_state=0, probability=True),
param_grid=param_grid,
return_train_score=False,
iid=True,
cv=3,
n_jobs=-1)
import joblib
with joblib.parallel_backend('dask'):
grid_search.fit(X, y)
Когда я проверял использование процессора в ganglia на кластере блоков данных, который имеет 1 драйвер и 1 - 64 рабочих только драйвер занят и все рабочие машины простаивают.
Кластер включает автоматическое масштабирование.
Посты в Распараллеливание в кластере dask и Распараллеливание на кластере dask не помогают.
Почему только драйвер занят?
Также я попытался:
from dask_jobqueue import PBSCluster, HTCondorCluster, JobQueueCluster, LSFCluster, MoabCluster, OARCluster, SGECluster, SLURMCluster
cluster = SLURMCluster(cores=16,
memory="1GB",
disk='1GB',
project='test_project',
queue='premium',
interface='eth0')# 'ib0',
#job_cls=SLURMJob)
#walltime='02:00:00')
cluster.scale(100) # Start 100 workers in 100 jobs that match the description above
из dask.distributed import Client клиент = клиент (кластер)
но это не работает.
спасибо