ut-parla / Parla.py

A Python based programming system for heterogeneous computing
Other
21 stars 9 forks source link

Memory tracking fixes #120

Closed sestephens73 closed 2 years ago

sestephens73 commented 2 years ago

Previously, the scheduler didn't start tracking a parray until the parray was directly used by a task. This meant that if a parray was initialized from a cupy array on a device, memory would be used that the scheduler was unaware of. I added a callback which starts parray tracking in the parray init function.

Previously, the mapper's assignment policy mistakenly only looked at the memory parameter to see if devices had enough resources to run a task. Now it looks at the memory parameter plus the amount of data needing to be moved to the device for gather necessary parrays.