Я новичок в Dask и недавно перешел на параллельные вычисления с помощью этого замечательного и замечательного пакета. Тем не менее, в моей реализации я изо всех сил пытался понять, почему мне требуется 6 минут на то, чтобы разослать python dict в памяти моей рабочей станции планировщика моим рабочим.
Диктовка не огромная. sys.sizeof(mydict)
показывает мне, что это 41943152 байта. Будет ли это иметь значение, если я буду использовать массив dask или numpy? Я уверен, что это не сетевое ограничение, поскольку я смог скопировать файл размером 400 МБ в рабочий терминал менее чем за 15 секунд.
Моя установка - это еще одна рабочая рабочая станция (2 процесса x 1 поток), с моей станцией планировщика также настроена как рабочая станция (4 процесса x 1 поток). Любая помощь будет оценена!
future_dict = my_vc.e1.dict_of_all_sea_mesh_edges
[future_dict] = c.scatter([future_dict])
Вход:
Scattering dict_of_all_sea_mesh_edges to cluster execution started
Scattering dict_of_all_sea_mesh_edges to cluster completed in 00 HOURS :06 MINUTES :46.67 SECONDS
In[2]: sys.getsizeof(my_vc.e1.dict_of_all_sea_mesh_edges)/1000000
Out[2]: 41.943152