This paper proposes a non-intrusive, declarative, dynamic and transparent system called `HiQ` to track Python program runtime information without compromising on the run-time system performance and losing insight. HiQ can be used for monolithic and distributed systems, offline and online applications. HiQ is developed when we optimize our large deep neural network (DNN) models which are written in Python, but it can be generalized to any Python program or distributed system, or even other languages like Java. We have implemented the system and adopted it in our deep learning model life cycle management system to catch the bottleneck while keeping our production code clean and highly performant. The implementation is open-sourced at: [https://github.com/oracle/hiq](https://github.com/oracle/hiq).
翻译:本文提出了一种名为`HiQ`的非入侵式、声明式、动态且透明的系统,用于在不损害运行时系统性能且不丢失洞察力的前提下,追踪Python程序的运行时信息。HiQ适用于单机和分布式系统、离线及在线应用场景。该系统最初是在优化用Python编写的大型深度神经网络(DNN)模型时开发的,但可推广至任何Python程序或分布式系统,甚至Java等其他语言。我们已实现该系统并将其应用于深度学习模型生命周期管理系统,在保持生产代码简洁且高性能的同时实现瓶颈定位。该实现已在 [https://github.com/oracle/hiq](https://github.com/oracle/hiq) 开源。