Si vous souhaitez lier deux noyaux OneAPI à deux cartes d’accélération respectivement avec un code hôte, vous pouvez rencontrer les limitations suivantes lorsque vous ciblez plusieurs périphériques FPGA :
• Tous les périphériques FPGA utilisent le même flux de bits FPGA.
• Tous les appareils FPGA utilisés doivent être de la même carte FPGA (même cible -Xstarget)
Pour contourner cette limitation, vous pouvez utiliser un lien dynamique pour créer deux images, puis les lier dynamiquement comme ci-dessous :
- icpx -fsycl -fPIC -fintelfpga -c vector_add.cpp -o vector_add.o
- icpx -fsycl -fPIC -shared -fintelfpga -Xshardware -Xsboard= vector_add.o -o vector_add.so
- icpx -fsycl -fPIC -fintelfpga -c vector_mul.cpp -o vector_mul.o
- icpx -fsycl -fPIC -shared -fintelfpga -Xshardware -Xsboard= vector_mul.o -o vector_mul.so
- icpx -fsycl -o main.exe main.cpp vector_add.so vector_mul.so