Computing bandwidth between pairs of workers

I’m seeking for some advice on how to recompute reported bandwidths between pairs of workers in the performance report. What I would like to see are all the transfers accounted for in their computations. For now I don’t see how to derive such metrics from the information reported in workers’ log.

Hi @orliac, welcome to Dask community!

Cloud you be more precise on the information you want to retrieve? Is it something that you can see on the Dashboard but are unable to get by yourself, and if so which part?

Workers’ log don’t give much information about this, however, you can find plenty of statistics through diverse means:

I can also give some simple code sample:

from distributed import Client

# create client
client = Client(n_workers=2, threads_per_worker=2, memory_limit='2GiB')

workers = client.cluster.scheduler.workers.values()
for ws in workers:
    print(ws.metrics['transfer'])

gives:

{'incoming_bytes': 0, 'incoming_count': 0, 'incoming_count_total': 0, 'outgoing_bytes': 0, 'outgoing_count': 0, 'outgoing_count_total': 0}
{'incoming_bytes': 0, 'incoming_count': 0, 'incoming_count_total': 0, 'outgoing_bytes': 0, 'outgoing_count': 0, 'outgoing_count_total': 0}