NOMAD South Bound API Discussion 20211018 Motivation Basic
NOMAD South. Bound API Discussion 2021/10/18
Motivation • Basic APIs are between Nomad agent and Driver/Accelerator, and run on host. • Portability between different accelerator platform: FPGA, GPU, Intel Cards… • 3 rd accelerator can be integrated into Nomad.
High Level Considerations • These APIS is implemented in C or Python, and is on the top of Driver. • Functaionalities • • • Support discovery of hardware (HW) /functional accelerators. Support reservation of HW/functional accelerator resources. Support binding/attaching to HW/functional accelerators. Support unbinding/detaching from the HW/functional accelerator. Support collection of the HW functional performance metrics.
The starting list • get_total_acc_resource(self, nodename) • acc_get_relation(self): get the VF-PF relation as a map K-V • acc_get_vf_resource(self, accelerator): get the accelerator info for the VF • acc_set_vf_resource(self, accelerator): set the accelerator info for the VF • acc_get_resource_state(self, accelerator): get the current state of the accelerator • acc_release_resource(self, accelerator): release the accelerator.
Example • get_total_acc_resource (self, nodename) //Return the accelerator metadata in the node. The return value //type is the same as metadata. For Example: {"acc_type": "XXX", " capability": { {"num": "10", "unit": "G*PPS"}, {"num": "800", "unit": "bps"} }
- Slides: 5