Louvain Modularity Launch Demo¶
To load and launch louvain Modularity for multi compute units on multi boards, we provided louvainRun API with two kernel modes which command is -kernel_mode.
- LOUVAINMOD_PRUNING_KERNEL, -kernel_mode 1, launch the pre-build L2 u50 1 cu kernel on multi boards.
- LOUVAINMOD_2CU_U55C_KERNEL, -kernel_mode 2, launch the pre-build L2 u55c 2 cu kernel on multi boards parallelly.
Launch u50 Flow¶
Ensure run the script L3/tests/pre_launch.sh to set the path of libgraphL3.so Ensure export the right $(PROJECTPATH) for the L2 pre-build U50 xclbin path, this xclbin may need 777 permission by xrm.
cd L3/tests/louvainRun make host ./build_dir.sw_emu.xilinx_u50_gen3x16_xdma_201920_3/host.exe -x $(PROJECTPATH)/build_dir.sw_emu.xilinx_u50_gen3x16_xdma_201920_3/kernel_louvain.xclbin -kernel_mode 1 -num_devices 1 -devices xilinx_u50_gen3x16_xdma_201920_3 -num_level 100 -num_iter 100 -load_alveo_partitions ../louvainPartition/example_tx.par.proj -setwkr 0 -driverAlone
Louvain fast Input Arguments:
Usage: host.exe -[-kernel_mode -x -num_devices -devices -num_level -num_iter -load_alveo_partitions -setwkr -driverAlone] -kernel_mode: the kernel mode : 1 is u50 1 cu, 2 is for u55c 2cu parallel launch in louvainRunSubGraph -x: path of the xclbin : path -num_devices: the number of boards : 1~n -devices: the shell name of device : xilinx_u50_gen3x16_xdma_201920_3 xilinx_u55c_gen3x16_xdma_base_2 -num_level: the max number of level or phase the louvain modularity : 1~n -num_iter: the max number of iteration the louvain modularity :1~n -load_alveo_partitions: the project to be load : *.par.proj -setwkr the number Client nodes in CS modes, currently is 0 : 0 -driverAlone only use the Server node in CS modes.
Launch u55c Flow¶
Ensure run the script L3/tests/pre_launch.sh to set the path of libgraphL3.so Ensure export the right $(PROJECTPATH) for the L2 pre-build U55C xclbin path, this xclbin may need 777 permission by xrm.
cd L3/tests/louvainRun make host ./build_dir.sw_emu.xilinx_u55c_gen3x16_xdma_base_2/host.exe -x $(PROJECTPATH)/build_dir.sw_emu.xilinx_u55c_gen3x16_xdma_base_2/kernel_louvain.xclbin -kernel_mode 2 -num_devices 1 -devices xilinx_u55c_gen3x16_xdma_base_2 -num_level 100 -num_iter 100 -load_alveo_partitions ../louvainPartition/example_tx.par.proj -setwkr 0 -driverAlone