Ver código fonte

Fix sequentialization of simgrid GPU transfers, thanks Lionel Eyraud for spotting it

Samuel Thibault 7 anos atrás
pai
commit
609973e5ea
1 arquivos alterados com 4 adições e 4 exclusões
  1. 4 4
      src/core/simgrid.c

+ 4 - 4
src/core/simgrid.c

@@ -642,12 +642,12 @@ static int transfers_are_sequential(struct transfer *new_transfer, struct transf
 
 	/* GPU-GPU transfers are sequential with any RAM->GPU transfer */
 	if (new_is_gpu_gpu
-			&& old_transfer->dst_node == new_transfer->src_node
-			&& old_transfer->dst_node == new_transfer->dst_node)
+			&& (old_transfer->dst_node == new_transfer->src_node
+			 || old_transfer->dst_node == new_transfer->dst_node))
 		return 1;
 	if (old_is_gpu_gpu
-			&& new_transfer->dst_node == old_transfer->src_node
-			&& new_transfer->dst_node == old_transfer->dst_node)
+			&& (new_transfer->dst_node == old_transfer->src_node
+			 || new_transfer->dst_node == old_transfer->dst_node))
 		return 1;
 
 	/* StarPU's constraint on CUDA transfers is using one stream per