xinhui pan
e5a541eaf2
kfdtest: Add P2P bandwidth test
...
The test measures the bandwidth between GPUs. Currently we do not
care numa topology as some products really support across PCI-e root
complex p2p.
test result on two gfx900 system.
[ RUN ] KFDPerformanceTest.P2PBandWidthTest
[ ] Copy from node to node by [push, NONE]
[ ] [1 -> 0] 6.13477 - 6.12695 GB/s
[ ] [1 -> 2] 3.77734 - 3.76855 GB/s
[ ] [2 -> 0] 6.67676 - 6.6543 GB/s
[ ] [2 -> 1] 6.14453 - 6.12793 GB/s
[ ] Copy from node to node by [pull, NONE]
[ ] [1 -> 0] 6.10547 - 6.08105 GB/s
[ ] [1 -> 2] 9.65527 - 9.65039 GB/s
[ ] [2 -> 0] 6.49805 - 6.4873 GB/s
[ ] [2 -> 1] 8.95508 - 8.85254 GB/s
[ ] Full duplex copy from node to node by [push|pull, NONE]
[ ] [1 -> 0] 11.0986 - 11.0986 GB/s
[ ] [1 -> 2] 7.54297 - 7.54297 GB/s
[ ] [2 -> 0] 12.0264 - 11.9639 GB/s
[ ] [2 -> 1] 12.0469 - 12.0371 GB/s
[ ] Full duplex copy from node to node by [push, push]
[ ] [1 <-> 2] 11.7324 - 11.4541 GB/s
[ ] Full duplex copy from node to node by [pull, pull]
[ ] [1 <-> 2] 11.4824 - 11.0508 GB/s
[ ] Copy from node to multiple nodes by [push, NONE]
[ ] [1 -> [0...2]] 5.625 - 5.73633 GB/s
[ ] [2 -> [0...2]] 6.45801 - 6.4707 GB/s
[ ] Copy from multiple nodes to node by [push, NONE]
[ ] [[1...2] -> 0] 12.8379 - 12.2578 GB/s
Now we can get more timestamp info like below.
Copy from node to node by [push, NONE]
[1 -> 0]
[1 : 0] #-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-##-#-#-#-#-###############################
[1 : 1] ####################################################################################################
[1 -> 2]
[1 : 0] #--#-#-#-#-#--#-#-#-#-#--#-#-#-#-#--#-#-#-#-#-#--#-#-#-#-#--#-#-#-#-#--#-#-#-#-#-#--#-#-#-#-#--#-#-######################################
[1 : 1] ##################################################################################################-#
[2 -> 0]
[2 : 0] ##-###-##-###-###-##-###-##-###-###-##-###-###-##-###-###-##-###-##-###-###-##-###-###-##-###-###-#################
[2 : 1] ###############################################################################-#############-###-##
[2 -> 1]
[2 : 0] ##-##-##-##-##-###-##-##-##-##-##-###-##-##-##-##-###-##-##-##-##-##-###-##-##-##-##-###-##-##-##-####################
[2 : 1] ################################################################################-###-############-##
[snip]
Full duplex copy from node to node by [push, push]
[1 <-> 2]
[1 : 0] #-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-#-#-#-####################################
[1 : 1] ################-###################################################-############-####-#############
[2 : 2] #-##-##-##-#-##-##-##-##-#-##-##-##-##-#-##-##-##-##-#-##-##-##-##-#-##-##-##-##-##-#-##-##-##-##-#-##-##-##-##-##-#-##################
[2 : 3] #####-######-#####-######-#####-######-#####-######-#####-######-#####-######-#####-######-#####-######-#####-#####-##
Full duplex copy from node to node by [pull, pull]
[1 <-> 2]
[1 : 0] ######################################################################-##-#-###############-####-###
[1 : 1] #-#-#-##-#-#-##-#-#-##-#-#-##-#-#-##-#-#-##-#-#-##-#-#-#-##-#-#-##-#-#-##-#-#-##-#-#-##-#-#-##-#-#-############################
[2 : 2] ##-##-##-##-###-##-##-##-##-###-##-##-##-###-##-##-##-##-###-##-##-##-###-##-##-##-##-###-##-##-##-##-###-##-##-##-###-##-##-############
[2 : 3] #-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#########-#############
Copy from node to multiple nodes by [push, NONE]
[1 -> [0...2]]
[1 : 0] #-#--#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-###############################
[1 : 1] ########################################################################################-###-###-###
[2 -> [0...2]]
[2 : 0] ##-##-##-###-##-###-##-##-###-##-###-##-##-###-##-###-##-###-##-##-###-##-###-##-##-###-##-###-##-##################
[2 : 1] -################################################################################################-##
Copy from multiple nodes to node by [push, NONE]
[[1...2] -> 0]
[1 : 0] #-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-##-#-#-#-#-#-#-#-#-##-#-#-#-###############################
[1 : 1] ################################################################################################-#-#
[2 : 2] ##-##-##-###-##-##-###-##-##-##-###-##-##-###-##-##-###-##-##-###-##-##-##-###-##-##-###-##-##-###-##-##################
[2 : 3] #########################-#########################-#########################-#########################
[ OK ] KFDPerformanceTest.P2PBandWidthTest (15982 ms)
Change-Id: Ia90044191d51650ccb220476d31fb317aa3ad6ce
Signed-off-by: xinhui pan <xinhui.pan@amd.com >
2018-09-19 12:03:05 +08:00