qir-spec icon indicating copy to clipboard operation
qir-spec copied to clipboard

QIR Runtime Initialization, Finalization, and EntryPoint Handling Specification Updates

Open amccaskey opened this issue 2 years ago • 3 comments

This Issue is to track all discussions and updates related to the approved runtime initialization, finalization, and entrypoint handling workstream.

QIR implementation libraries provided at link time may need to rely on library start-up and finalization routines in order to properly configure and tear-down an underlying simulation and / or remote job submission infrastructure. QIR for native code-generation or as an exchange format with control systems may also require some notion of start-up, initialization, and tear-down.

Runtime initialization raises the question of how QIR lowering strategies should specify entry point functions and corresponding input data provided at runtime. For runtime library linking, the notion of input argc and argv can be a valuable asset to designing dynamic and flexible QIR runtimes. For QIR as a format for backend submission, the specification needs to carefully define what an entrypoint function is and how packaged runtime arguments (command line or otherwise) can be injected into the entrypoint at executable start-up.

amccaskey avatar Apr 21 '22 12:04 amccaskey

The workstream definition can be found here

bettinaheim avatar Jun 15 '22 13:06 bettinaheim

@bettinaheim shouldn't the link be https://github.com/qir-alliance/.github/blob/main/workstreams/Runtime_Init_Finalize_EntryPoint_Workstream.md on the QIR Alliance repo instead of on the fork?

k4rtik avatar Jun 15 '22 15:06 k4rtik

@bettinaheim shouldn't the link be https://github.com/qir-alliance/.github/blob/main/workstreams/Runtime_Init_Finalize_EntryPoint_Workstream.md on the QIR Alliance repo instead of on the fork?

Yes, it should be. Thank you! Edited.

bettinaheim avatar Jun 15 '22 16:06 bettinaheim