MCPcopy Create free account
hub / github.com/dask/dask / test_diagnostics

Function test_diagnostics

dask/tests/test_order.py:1225–1356  ·  view source on GitHub ↗

r""" a1 b1 c1 d1 e1 /|\ /|\ /|\ /| / / | X | X | X | / / |/ \|/ \|/ \|/ a0 b0 c0 d0 e0

(abcde)

Source from the content-addressed store, hash-verified

1223
1224
1225def test_diagnostics(abcde):
1226 r"""
1227 a1 b1 c1 d1 e1
1228 /|\ /|\ /|\ /| /
1229 / | X | X | X | /
1230 / |/ \|/ \|/ \|/
1231 a0 b0 c0 d0 e0
1232 """
1233 a, b, c, d, e = abcde
1234 dsk = {
1235 (a, 0): (f,),
1236 (b, 0): (f,),
1237 (c, 0): (f,),
1238 (d, 0): (f,),
1239 (e, 0): (f,),
1240 (a, 1): (f, (a, 0), (b, 0), (c, 0)),
1241 (b, 1): (f, (b, 0), (c, 0), (d, 0)),
1242 (c, 1): (f, (c, 0), (d, 0), (e, 0)),
1243 (d, 1): (f, (d, 0), (e, 0)),
1244 (e, 1): (f, (e, 0)),
1245 }
1246 o = order(dsk)
1247 assert_topological_sort(dsk, o)
1248 info, memory_over_time = diagnostics(dsk)
1249 # this is ambiguous, depending on whether we start from left or right
1250 assert all(o[key] == val.order for key, val in info.items())
1251 if o[(e, 1)] == 1:
1252 assert o[(e, 1)] == 1
1253 assert o[(d, 1)] == 3
1254 assert o[(c, 1)] == 5
1255 assert memory_over_time == [0, 1, 1, 2, 2, 3, 2, 3, 2, 3]
1256 assert {key: val.age for key, val in info.items()} == {
1257 (a, 0): 1,
1258 (b, 0): 3,
1259 (c, 0): 5,
1260 (d, 0): 5,
1261 (e, 0): 5,
1262 (a, 1): 0,
1263 (b, 1): 0,
1264 (c, 1): 0,
1265 (d, 1): 0,
1266 (e, 1): 0,
1267 }
1268 assert {key: val.num_dependencies_freed for key, val in info.items()} == {
1269 (a, 0): 0,
1270 (b, 0): 0,
1271 (c, 0): 0,
1272 (d, 0): 0,
1273 (e, 0): 0,
1274 (a, 1): 3,
1275 (b, 1): 1,
1276 (c, 1): 1,
1277 (d, 1): 0,
1278 (e, 1): 0,
1279 }
1280 assert {key: val.num_data_when_run for key, val in info.items()} == {
1281 (a, 0): 2,
1282 (b, 0): 2,

Callers

nothing calls this directly

Calls 5

orderFunction · 0.90
diagnosticsFunction · 0.90
assert_topological_sortFunction · 0.85
allFunction · 0.85
itemsMethod · 0.45

Tested by

no test coverage detected