Ver código fonte

Fix more examples of interface definitions

Samuel Thibault 5 anos atrás
pai
commit
5d2b80bf9f

+ 1 - 1
doc/doxygen/chapters/410_mpi_support.doxy

@@ -314,7 +314,7 @@ static int complex_pack_data(starpu_data_handle_t handle, unsigned node, void **
   struct starpu_complex_interface *complex_interface = (struct starpu_complex_interface *) starpu_data_get_interface_on_node(handle, node);
 
   *count = complex_get_size(handle);
-  starpu_malloc_flags(ptr, *count, 0);
+  *ptr = starpu_malloc_on_node_flags(node, *count, 0);
   memcpy(*ptr, complex_interface->real, complex_interface->nx*sizeof(double));
   memcpy(*ptr+complex_interface->nx*sizeof(double), complex_interface->imaginary, complex_interface->nx*sizeof(double));
 

+ 2 - 0
examples/cpp/add_vectors_interface.cpp

@@ -467,6 +467,8 @@ static int unpack_vector_cpp_handle(starpu_data_handle_t handle, unsigned node,
 	STARPU_ASSERT(count == vector_interface->elemsize * vector_interface->nx);
 	memcpy((void*)vector_interface->ptr, ptr, count);
 
+	starpu_free_on_node_flags(node, (uintptr_t)ptr, count, 0);
+
 	return 0;
 }
 

+ 1 - 1
examples/interface/complex_interface.c

@@ -159,7 +159,7 @@ static int complex_unpack_data(starpu_data_handle_t handle, unsigned node, void
 	memcpy(complex_interface->real, data, complex_interface->nx*sizeof(double));
 	memcpy(complex_interface->imaginary, data+complex_interface->nx*sizeof(double), complex_interface->nx*sizeof(double));
 
-	starpu_free_flags(ptr, count, 0);
+	starpu_free_on_node_flags(node, (uintptr_t) ptr, count, 0);
 
 	return 0;
 }

+ 2 - 0
mpi/tests/user_defined_datatype_value.h

@@ -117,6 +117,8 @@ static int value_unpack_data(starpu_data_handle_t handle, unsigned node, void *p
 
 	assert(value_interface->value[0] == 36);
 
+	starpu_free_on_node_flags(node, (uintptr_t)ptr, count, 0);
+
 	return 0;
 }