Parla.py
Parla.py copied to clipboard
A Python based programming system for heterogeneous computing
We should set up automated upload to github.io on each master commit.
We use type hints extensively. Cross-module type reference complicates the import chain. Some imports are only for certain Parla types and unnecessarily creates module dependency. Type aliases may help to...
Matrices could be stored in column or row major. However, `clone_here()` always copies array in row major order as a default. IMO, it is problematic since users could intentionally declare...
The scheduler gives unnecessary warnings when trying to assign tasks to processors. Also, the print format on these warning messages needs to be cleaned up. Simple repro on Frontera: ```...
When creating tasks with `@spawn`, if the `memory` argument isn't set, the scheduler seems to assume the task will actually take no memory. Thus, tasks can fill up a device...
The system has quite a lot of logging in there from various debugging efforts. Most of the time this is fine because it's at the `debug` level so it doesn't...
While it's generally an unreasonable pain to detect arbitrary overlap of numpy array objects, the storage_size helper routine could potentially check for duplicate objects. Do we want to do this?
@hfingler noted in the N-body demo that letting the scheduler pick which GPU to use for each task instead of specifying them manually was actually harmful in that case. Our...
I was just discussing sequential semantics in the paper draft and remembered that, although this is well-defined, we don't actually have any kind of execution mode that actually makes it...
Currently the end user specifies resource use for a task independent of the architecture used. This doesn't make practical sense since if something runs on a CPU it may use...