Application Acceleration With FPGAs
Programmable Acceleration Cards (PACs), DCP, FPGA AI Suite, Software Stack, and Reference Designs
493 Discussions

Resetting Queues for Intel Mount Bryce FPGA and ACC200 Without Rebooting

PhaniNarasimham
261 Views

Dear Sir,

We are exploring methods to reset the queues on Intel Mount Bryce FPGA and ACC200 FPGA devices without rebooting the server, particularly for use in FlexRAN environments. A typical reset method for such devices involves power cycling or full reinitialization, leading to downtime.

To avoid this and explore dynamic queue reset or reconfiguration options through APIs such as Intel's OPAE (Open Programmable Acceleration Engine) and DPDK (Data Plane Development Kit).

Mount Bryce FPGA: Dynamic Queue Reset via OPAE API
  Based on initial study there are a few approaches we are exploring:

FPGA Management Tools: Intel’s OPAE toolkit offers APIs that allow dynamic reconfiguration of FPGAs. Through the use of OPAE, is it be possible to reset the FPGA's queues without requiring a full reinitialization. We would like to investigate if OPAE's reconfiguration APIs can be used to:
Reset queue states dynamically.

Reconfigure resource allocation without disrupting the current workload.
Intel FPGA Management Tools: While the OPAE framework offers FPGA management and partial reconfiguration, we need guidance on specific API functions or configurations for queue handling on Mount Bryce. If such functionality is not available,
could there be any potential methods using a partial reconfiguration approach for on-the-fly adjustments?

2. ACC200 FPGA: Queue Reset using DPDK RTE API
For ACC200, we are analyzing the RTE API from DPDK version 22.11 and identified the following approach:

pb_bb_config Tool: We are using the pb_bb_config tool to reset and reassign queues, which includes modifying the configuration files:

Command: /rsysfs/opt/radisys/l1/misc/pf-bb-config/pf_bb_config ACC200 -c /rsysfs/opt/radisys/l1/misc/pf-bb-config/acc200/acc200_config_pf.cfg
This allows queue reassignment after resetting.
rte_acc200_configure() API: We plan to further investigate rte_acc200_configure() within the DPDK API for queue management.
This function may allow dynamic configuration of the queues without the need for a system reboot.

Request for Guidance:

Could you confirm if this approach for ACC200 using pb_bb_config and the RTE API is suitable for resetting and reallocating queues dynamically?
For Mount Bryce, is there a method or API within Intel's OPAE toolkit or FPGA management tools that allows queue reallocation without full
reinitialization?
We are looking to minimize downtime and optimize performance for FlexRAN deployments, and any insights or recommendations
regarding the APIs, especially for handling dynamic queue management

Labels (2)
0 Kudos
0 Replies
Reply