Add tracy support
https://github.com/wolfpld/tracy
This is not terribly difficult on a basic level, but integration into projects and running applications with tracy is a bit clunky, especially for multi-node runs, since a tracy-instrumented application needs to send the data to a server.
#252 adds basic support. Next steps would be one or both of the following:
- Start using stackless threads as much as possible since that is easier to do with senders. This would mean the Tracy integration needs no further changes.
- Add support for fibers or saving/restoring the annotations on suspend/resume.
Will attempt this for 0.5.0, but it may require more time than a month.
The spack part of this is ongoing in https://github.com/spack/spack/pull/30588, but the pika support will not be in 0.5.0.
Part of this was implemented and merged in #252, but leaving open for the other open items in the issue description.