stfc / RegentParticleDSL

A particle-method DSL based on Regent programming language
MIT License
1 stars 0 forks source link

Optional timing infrastructure #57

Open LonelyCat124 opened 4 years ago

LonelyCat124 commented 4 years ago

One thing that may be useful to help profile/optimise is timing infrastructure, that can be enabled/disabled through either an input argument or environment variable.

LonelyCat124 commented 3 years ago

I'm going to look into this now.

LonelyCat124 commented 3 years ago

I have an initial implementation now, in the timing branch. I'm currently running the tests to check it doesn't break anything.

Right now it limits parallelism, so its pretty bad. It would be better to move it into the invoke_framework instead of the neighbour search, and have it at the start and end of the invoke, and the ability to interact with the symbols to reset the start/end if there is a call to something else in the library (e.g. when updating the neighbour search algorithm).