本文转载自: 硬码农二毛哥微信公众号
在Vitis下运行DNNDK例程时,(例程地址https://github.com/Xilinx/Vitis-In-Depth-Tutorial/blob/2020.1/Vitis_Plat...)运行到编译时,(20 Right click the hello_dpu project folder and select Build Project)一直出如下错误:
[21:04:46] Run vpl: Step synth: Failed [21:04:47] Run vpl: FINISHED. Run Status: synth ERROR ERROR: [VPL 60-773] In '/home/pynq/fzu5/fzu5_custom_pkg/hello_dpu/Hardware/dpu.build/link/vivado/vpl/vivado.log', caught Tcl error: One or more synthesis runs failed during dynamic region dcp generation WARNING: [VPL 60-732] Link warning: INFO: Platform does not require extraction of debug/profile metadata. WARNING: [VPL 60-732] Link warning: No monitor points found for BD automation. ERROR: [VPL 60-704] Integration error, One or more synthesis runs failed during dynamic region dcp generation ERROR: [VPL 60-704] Integration error, run 'synth_1' couldn't start because one or more of the prerequisite runs failed ERROR: [VPL 60-704] Integration error, run 'system_hard_zynq_ultra_ps_e_0_0_synth_1' failed, please look at the run log file '/home/pynq/fzu5/fzu5_custom_pkg/hello_dpu/Hardware/dpu.build/link/vivado/vpl/prj/prj.runs/system_hard_zynq_ultra_ps_e_0_0_synth_1/runme.log' for more information ERROR: [VPL 60-704] Integration error, run 'system_hard_xbar_0_synth_1' failed, please look at the run log file '/home/pynq/fzu5/fzu5_custom_pkg/hello_dpu/Hardware/dpu.build/link/vivado/vpl/prj/prj.runs/system_hard_xbar_0_synth_1/runme.log' for more information ERROR: [VPL 60-1328] Vpl run 'vpl' failed ERROR: [VPL 60-806] Failed to finish platform linker INFO: [v++ 60-1442] [21:04:48] Run run_link: Step vpl: Failed Time (s): cpu = 00:00:05 ; elapsed = 00:31:09 . Memory (MB): peak = 1339.316 ; gain = 0.000 ; free physical = 972 ; free virtual = 1554 ERROR: [v++ 60-661] v++ link run 'run_link' failed ERROR: [v++ 60-626] Kernel link failed to complete ERROR: [v++ 60-703] Failed to finish linking INFO: [v++ 60-1653] Closing dispatch client. makefile:82: recipe for target 'dpu.xclbin' failed make: *** [dpu.xclbin] Error 1
解决方法
以上错误是由于虚拟内存空间太小导致,扩大SWAP区域空间,由2G改成8G。执行如下步骤修改虚拟内存:
查看虚拟内存空间:
free –h
停用SWAP空间:
sudo swapoff –v /swapfile sudo rm /swapfile
创建swap文件:
sudo dd if=/dev/zero of=swapfile bs=1G count=8
修改swapfile文件权限:
sudo chmod 600 /swapfile
设置Linux SWAP区域:
sudo mkswap /swapfile
激活SWAP文件:
sudo swapon /swapfile
再次查看虚拟内存空间是否设置成功:
free –h
设置成功后再进行编译,结果正常。