From d2af3894cf277deda2f1913ae390f94c1337d38c Mon Sep 17 00:00:00 2001 From: Francesc Verdugo Date: Mon, 14 Aug 2023 18:33:06 +0200 Subject: [PATCH] Saving figures --- notebooks/figures/fig_jacobi.svg | 45362 +++++++++++++++++++++++++++ notebooks/figures/fig_jacobi_1.png | Bin 0 -> 10433 bytes 2 files changed, 45362 insertions(+) create mode 100644 notebooks/figures/fig_jacobi.svg create mode 100644 notebooks/figures/fig_jacobi_1.png diff --git a/notebooks/figures/fig_jacobi.svg b/notebooks/figures/fig_jacobi.svg new file mode 100644 index 0000000..c6f5f31 --- /dev/null +++ b/notebooks/figures/fig_jacobi.svg @@ -0,0 +1,45362 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + u_new[i] = u[i-1]+u[i]+u[1+1] + i + i + i+1 + i-1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + i+1 + i-1 + i + + + + + + + + + + + + + + + + + + + + + + + i + i+1 + i-1 + i + + + u + u_new + u + u_new + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + i + i-1 + i+1 + i + + + + + + + + + + + chnl_next_snd + chnl_next_rcv + chnl_prev_rcv + chnl_prev_snd + + + + + + + + x + u + + + + + + 0 + L + -1 + 1 + + + + + 0 + L + + + + + + + + + + n+2 points + + + + + + + + + + + + + u + + + + ? + -1 + ? + ? + ? + ? + ? + ? + ? + ? + ? + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + i + i-1 + i+1 + i + + + + + + + + + + + + + + + + + + + + + + + + + i + i+1 + i-1 + i + u + u_new + + + + k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + j + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + i + i-1 + i+1 + i + k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + j + x x x x x x x x x x x x x x x x x x x x x x x x x x x x ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + i + j + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1D block 2D block 2D cyclic + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + x + + + + + + + + + + x x x x x x x x x + + + + + + + + + x x x x x x x x x + + + + + + + + + x x x x x x x x x + + + + + + + + x x x x x x x x + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + ? + -1 + ? + ? + ? + ? + ? + ? + ? + ? + ? + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + + + + + + + + + + + + ? + -1 + ? + ? + ? + ? + ? + ? + ? + ? + ? + 1 + -1 + -1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + s + r + s + u + u_new + + r + + + + + + + + + + + + + + + + + + + + + + + + + s + r + s + u + u_new + + r + r-1 + s+1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u + + + + + + + + + + + + + + + + + + + + + + + + + + u_new + + + + communication + computation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u_new + + + i-1 + i+1 + i + i+1 + -1 + -1 + -1 + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + u + u + + + + + + + + + + + + + + + + + + + + + + + + + + u_new + + + + communication + computation + -1 + -1 + -1 + 1 + 1 + 1 + + + + + + (i+1,j) + (i,j) + (i-1,j) + (i,j+1) + (i,j-1) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + x x x x x x x x x x x x x x x x x x x x x x x x x x x x ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Partition 2nd CPU Partition 2nd CPU + + + + + + CPU 1 CPU 2 CPU P N N + + + N/P + + CPU 1 CPU 2 CPU P N N + + + N/P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 1 CPU 2 CPU P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 1 CPU 2 CPU P + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 5 CPU 5 Data updated Data used + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 3 Data updated Data used + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 5 CPU 5 Data updated Data used + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Data updated Data used + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CPU 5 ? Data updated Data used + diff --git a/notebooks/figures/fig_jacobi_1.png b/notebooks/figures/fig_jacobi_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7d14857ac3b3056edc1e3bc797f966a5b3a4a227 GIT binary patch literal 10433 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 KTKz-&=l=oyAIg>h literal 0 HcmV?d00001