From 31203eeb8ac655292c3fe29b41a0a75415e509b1 Mon Sep 17 00:00:00 2001 From: Mathieu Faverge <mathieu.faverge@inria.fr> Date: Wed, 27 Nov 2024 14:22:22 +0100 Subject: [PATCH] example: Remove the useless copy of the matrices in the examples --- example/lapack_to_chameleon/step2.c | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/example/lapack_to_chameleon/step2.c b/example/lapack_to_chameleon/step2.c index e6e16883a..f89c2b017 100644 --- a/example/lapack_to_chameleon/step2.c +++ b/example/lapack_to_chameleon/step2.c @@ -117,22 +117,15 @@ int main(int argc, char *argv[]) { * CHAMELEON_Desc_Create( ... , 0, 0, number of rows, number of columns, 1, 1); * Have a look to the documentation for details about these parameters. */ - CHAMELEON_Desc_Create(&descA, NULL, ChamRealDouble, + CHAMELEON_Desc_Create(&descA, A, ChamRealDouble, NB, NB, NB*NB, N, N, 0, 0, N, N, 1, 1); - CHAMELEON_Desc_Create(&descB, NULL, ChamRealDouble, + CHAMELEON_Desc_Create(&descB, B, ChamRealDouble, NB, NB, NB*NB, N, NRHS, 0, 0, N, NRHS, 1, 1); - CHAMELEON_Desc_Create(&descX, NULL, ChamRealDouble, + CHAMELEON_Desc_Create(&descX, X, ChamRealDouble, NB, NB, NB*NB, N, NRHS, 0, 0, N, NRHS, 1, 1); - CHAMELEON_Desc_Create(&descAC, NULL, ChamRealDouble, + CHAMELEON_Desc_Create(&descAC, Acpy, ChamRealDouble, NB, NB, NB*NB, N, N, 0, 0, N, N, 1, 1); - /* copy LAPACK matrices in CHAMELEON descriptors to be able to call the tile - * interface */ - CHAMELEON_dLap2Desc(UPLO, A, N, descA); - CHAMELEON_dLap2Desc(ChamUpperLower, B, N, descB); - CHAMELEON_dLap2Desc(ChamUpperLower, X, N, descX); - CHAMELEON_dLap2Desc(UPLO, Acpy, N, descAC); - /* You could alternatively create descriptors wrapping your allocated * matrices to avoid copies Lapack_to_Tile with the following */ //CHAMELEON_Desc_Create(&descA, A, ChamRealDouble, @@ -210,12 +203,6 @@ int main(int argc, char *argv[]) { res / N / eps / (anorm * xnorm + bnorm )); } - /* get back results in LAPACK format if needed */ - CHAMELEON_dDesc2Lap(UPLO, descA, A, N); - CHAMELEON_dDesc2Lap(ChamUpperLower, descB, B, N); - CHAMELEON_dDesc2Lap(ChamUpperLower, descX, X, N); - CHAMELEON_dDesc2Lap(UPLO, descAC, Acpy, N); - /* deallocate A, B, X, Acpy and associated descriptors descA, ... */ CHAMELEON_Desc_Destroy( &descA ); CHAMELEON_Desc_Destroy( &descB ); -- GitLab