# ELF Library ## Components The ELF Library has 3 main components: ### HPI (HostParsedInference) - HPI is divided into a public component and a private one, and at the same time, in an arch-specific and arch-agnostic part. - It serves as the sole interface for the user of ELF library (drivers, test applications and etc.) and shall be used to orchestrate the ELF Loading process. ### Loader - Loader is a class that contains most of the implementation details used by HPI to trigger loading process: read and interpreter sections, apply relocations and etc. ### Reader/Writer - These represent classes designed for easing the ELF R/W and are capable to interpret NPU-specific extensions. ## **ELF Versioning System** For details on the versioning system, please consult [VERSIONING.md](VERSIONING.md).