我要评分
获取效率
正确性
完整性
易理解

Setting the cfct_config File

Extract the cfct_config file and grant permissions on the file. Ensure that the file owner has the read and write permissions while users in the owner group and other users have only the read permission.
#cd /home/kbox_video/
#tar -xvf DemoVideoEngine.tar.gz cfct_config
#chmod 644 cfct_config
  • You can use the cfct_config file to flexibly configure the resources used by the video stream cloud phone to achieve optimal performance.
  • The cfct_config file contains map configurations such as GPU, CPU, ENC, and USERDATA. You can change the map configurations of the corresponding channel to select the GPU, CPU, NETINT encoding card used by the container and the path for storing data volumes.
  • Before starting a cloud phone, ensure that the cfct_config file is stored in the startup path and the configurations in the file are correct. The cloud phone container uses the configurations in this file.
  • The nodes of the NETINT encoding card vary according to the server. You need to change the value of NETINT in the cfct_config file based on the site requirements to ensure that the performance is not affected due to cross-chip encoding.
  • If only one GPU is used in your environment, change the value of VIDEO_CPU_MAP_{total_CPU_core_number}CORE_MODE{CPU_BIND_MODE} in the cfct_config file.

    Take VIDEO_CPU_MAP_128CORE_MODE0 as an example. Retain the configuration of the CPU bound to the GPU and delete other configurations. If the GPU is inserted into CPU 0, delete all references related to MODE0_CPUS2 and MODE0_CPUS3. If the GPU is inserted into CPU 1, delete all references related to MODE0_CPUS0 and MODE0_CPUS1.

  • If only one encoding card is used in your environment, change the value of VIDEO_ENC_MAP_{total_CPU_core_number}CORE in the cfct_config file.

    Take VIDEO_ENC_MAP_128CORE as an example. If the encoding card is inserted into CPU 0, delete "${NETINT1}". If the encoding card is inserted into CPU 1, delete "${NETINT0}".

Querying the NUMA to Which a NETINT Card Chip Belongs

  1. Run the nvme list command to view the nodes of the NETINT card chips.
    #nvme list

    The NVMe nodes of the NETINT card chips are marked in the red box in the preceding figure, which is only an example.

  2. Check the mapping between NVMe nodes and PCIe bus numbers.
    {index} indicates the NVMe node number shown in the preceding figure. For example, in /dev/nvme2n1, the value of {index} is 2.
    #find /sys/devices/ -name nvme{index}

  3. Check the mapping between the node and NUMA based on the bus number.
    {busID} indicates the bus number obtained in the previous step. For example, in the preceding command output, {busID} is 0000:07:00.0.
    #lspci -vvvs {busID} | grep NUMA

  4. Change the value of NETINT in cfct_config based on the NUMA information corresponding to the NVMe node of the encoding card.

    For servers powered by Kunpeng 920 7265F or 7260 processors: Write NVMe nodes belonging to NUMA 0 and NUMA 1 in the NETINT0 field, and NVMe nodes belonging to NUMA 2 and NUMA 3 in the NETINT1 field.

    Two nodes need to be added for each device in a field. For example, for NVMe device 2, you need to add nodes /dev/nvme2 and /dev/nvme2n1.

Modifying the W6600 Density Test Configuration

To test the density of the three W6600 graphics cards in Table 1, modify the VIDEO_GPU_MAP_AMD1_128CORE field in cfct_config.

If you use three W6600 graphics cards, set the parameters as follows:
VIDEO_GPU_MAP_AMD1_128CORE=(
    "${GPUS[0]}"
    "${GPUS[2]}"
    "${GPUS[1]}"
    "${GPUS[2]}"
    "${GPUS[0]}"
    "${GPUS[1]}"
)