Controlling AI Engine Partitions - 2025.2 English - UG1076

AI Engine Tools and Flows User Guide (UG1076)

Document ID
UG1076
Release Date
2025-11-20
Version
2025.2 English

There can be multiple partitions in an AI Engine array. Each partition contains independent graphs. The xclbin file generated by the v++ packager includes the metadata for all partitions. For information about the v++ building flow, see Compiling AI Engine Graph for Independent Partitions.

A handle to a graph in a partition can be retrieved from the device after loading the xclbin. You can use this handle to control the graph by prefixing the graph name with the partition name in the xrt::graph(device,uuid,"pr0_gr") API. Following is example code used to control the pr0 and pr1 partitions:

// Open xclbin
auto device = xrt::device(0); //device index=0
auto uuid = device.load_xclbin(xclbinFilename);
//Create handle for graph "gr" in partition "pr0"
auto ghdl1=xrt::graph(device,uuid,"pr0_gr"); 
ghdl1.run(iterations);
//Create handle for graph "gr" in partition "pr1"
auto ghdl2=xrt::graph(device,uuid,"pr1_gr"); 
ghdl2.run(iterations);

ghdl1.wait();
ghdl2.wait();

To reload AI Engine partitions on hardware refer to Runtime Control and Reload of AI Engine Partitions.