Practical Runtime Instrumentation of Software Languages: the Case of SciHook
summary
A runtime bridge called SciHook implements a language-level instrumentation interface: generated C++ simulation code emits before/after job events and constructs execution contexts that expose memory as NumPy views (no copies). Python handlers register at startup, run on emitted events to validate results, initialize boundary conditions, or stop a run; replacing file I/O with in-process instruments yields large speedups in light workflows, and measured overhead for mere monitoring is low.
AI-written summary · about
chapters (11)
- 0:00SciHook introduction
- 3:19Debugging generated C++
- 5:26Polyglot in scientific computing
- 7:11Language instrumentation design
- 8:38SciHook with Naab simulations
- 10:47Generated instrumentation example
- 12:33Debugging with Python scripts
- 14:00Validation and preprocessing
- 15:50Performance benefits
- 16:57SciHook summary and future
- 18:27Q&A
related talks
01h 01mProgramming Abstractions for Orchestration of HPC Scientific Computing
01h 21mAfter Reflection: The Runtime Story
34mLow-level RASP: Protecting Applications Implemented in High-level Programming Languages
16mhS: Speculative Script Reordering at Subprocess Granularity
36mPardon the Interposition—Modifying and Improving Software Behavior with Interposers
42mScripts in applications: how and why to let users write code?
01h 21mPerformance Really Matters
01h 07mThere Is Only One Time in Software (Language) Engineering!
