From d9023333501440c6f2ffdb3bf6332b34d1bd31a2 Mon Sep 17 00:00:00 2001 From: Francesc Verdugo Date: Mon, 14 Aug 2023 18:32:38 +0200 Subject: [PATCH] More work with jacobi --- notebooks/jacobi_method.ipynb | 295 +++++++++++++++++++++++++--------- 1 file changed, 218 insertions(+), 77 deletions(-) diff --git a/notebooks/jacobi_method.ipynb b/notebooks/jacobi_method.ipynb index 019359c..16d48d5 100644 --- a/notebooks/jacobi_method.ipynb +++ b/notebooks/jacobi_method.ipynb @@ -73,7 +73,7 @@ "## The Jacobi method for the Laplace equation\n", "\n", "\n", - "The [Jacobi method](https://en.wikipedia.org/wiki/Jacobi_method) is a numerical tool to solve systems of linear algebraic equations. One of the main applications of the Jacobi method is to solve boundary value problems (BVPs). I.e., given the values at the boundary (of a grid), the Jacoby method will find the interior values that fulfill a certain equation.\n", + "The [Jacobi method](https://en.wikipedia.org/wiki/Jacobi_method) is a numerical tool to solve systems of linear algebraic equations. One of the main applications of the Jacobi method is to solve the equations resulting from boundary value problems (BVPs). I.e., given the values at the boundary (of a grid), we are interested in finding the interior values that fulfill a certain equation.\n", "\n" ] }, @@ -92,7 +92,7 @@ "id": "93e84ff8", "metadata": {}, "source": [ - "When solving a Laplace equation in 1D, the Jacobi method leads to this iterative scheme. The entry $i$ of vector $u$ at iteration $t+1$ is computed as:\n", + "When solving a Laplace equation in 1D, the Jacobi method leads to the following iterative scheme: The entry $i$ of vector $u$ at iteration $t+1$ is computed as:\n", "\n", "$u^{t+1}_i = \\dfrac{u^t_{i-1}+u^t_{i+1}}{2}$" ] @@ -104,7 +104,7 @@ "source": [ "### Serial implementation\n", "\n", - "The following code implements the iterative scheme above for boundary conditions -1 and 1." + "The following code implements the iterative scheme above for boundary conditions -1 and 1 on a grid with $n$ interior points." ] }, { @@ -184,7 +184,7 @@ "metadata": {}, "source": [ "\n", - "### Where do we can exploit parallelism?\n", + "### Where can we exploit parallelism?\n", "\n", "Look at the two nested loops in the sequential implementation:\n", "\n", @@ -301,7 +301,8 @@ "metadata": {}, "source": [ "## Parallelization of the Jacobi method\n", - "\n" + "\n", + "Now, let us parallelize the Jacobi method." ] }, { @@ -311,8 +312,53 @@ "source": [ "### Parallelization strategy\n", "\n", + "We saw in the previous notebook that a sufficiently large grain size is needed to achieve performance in a distributed algorithm. For Jacobi, one could update each entry of vector `u_new` in a different worker, but this would not be efficient. Instead, we use a parallelization strategy with a larger grain size that is analogous to the algorithm 3 we studied for the matrix-matrix multiplication:\n", + "\n", "- Each worker updates a consecutive section of the array `u_new` \n", - "\n" + "\n", + "The following figure displays the data distribution over 3 processes." + ] + }, + { + "attachments": { + "fig09.png": { + "image/png": "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" + } + }, + "cell_type": "markdown", + "id": "60d64ef2", + "metadata": {}, + "source": [ + "
\n", + "\n", + "
" + ] + }, + { + "cell_type": "markdown", + "id": "a4b9af33", + "metadata": {}, + "source": [ + "### Data dependencies\n", + "\n", + "Recall the Jacobi update:\n", + "\n", + "`u_new[i] = 0.5*(u[i-1]+u[i+1])`" + ] + }, + { + "attachments": { + "fg10.png": { + "image/png": "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" + } + }, + "cell_type": "markdown", + "id": "b9656556", + "metadata": {}, + "source": [ + "
\n", + "\n", + "
" ] }, { @@ -320,24 +366,21 @@ "id": "c4e2d000", "metadata": {}, "source": [ - "### Data dependencies\n", + "
\n", + "Question: In order to update the entries u_new[r:s], which data from other process will be needed by the process that owns the entries u[r:s]? Note: r and s are integers indicating the first and last index owned by this process (see picture above). \n", + "
\n", "\n", - "Recall:\n", - "\n", - "`u_new[i] = 0.5*(u[i-1]+u[i+1])`\n", - "\n", - "\n", - "Thus, each process will need values from the neighboring processes to perform the update of its boundary values." + " b) Data at positions r-1 and s+1 " ] }, { - "cell_type": "markdown", - "id": "428bce86", + "cell_type": "code", + "execution_count": null, + "id": "ab1d263d", "metadata": {}, + "outputs": [], "source": [ - "
\n", - "\n", - "
" + "# TODO" ] }, { @@ -347,19 +390,58 @@ "source": [ "### Ghost (aka halo) cells\n", "\n", - "A usual way of handling this type of data dependencies is using so-called ghost cells. Ghost cells represent the missing data dependencies in the data owned by each process. After importing the appropriate values from the neighbor processes one can perform the usual sequential Jacobi update locally in the processes." + "A usual way of implementing the Jacobi method and related algorithms is using so-called ghost cells. Ghost cells represent the missing data dependencies in the data owned by each process. After importing the appropriate values from the neighbor processes one can perform the usual sequential Jacobi update locally in the processes." + ] + }, + { + "attachments": { + "fig13.png": { + "image/png": "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" + } + }, + "cell_type": "markdown", + "id": "33aeb726", + "metadata": {}, + "source": [ + "
\n", + "\n", + "
" ] }, { "cell_type": "markdown", - "id": "cd1e3760", + "id": "06e45af2", + "metadata": {}, + "source": [ + "Thus, the algorithm is usually implemented following two main phases at each iteration Jacobi:\n", + "\n", + "1. Fill the ghost entries with communications\n", + "2. Do the Jacobi update sequentially at each process" + ] + }, + { + "attachments": { + "fig15.png": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6gAAAFACAYAAACxyVHuAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAewgAAHsIBbtB1PgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAACAASURBVHic7N15fFT19f/x12cmIQFkE1wANxBFrTu4b1itimQC2mKrtfrtRtXazbbWrmJba+1m7S5fv9Wqrbb5VWBugFatpe4buGvdFVcU2cISSOZ+fn+cO2QyTCAsmXszeT8fj/vIvXPv3Dm5M3PnnvvZ3DXXXOMRERERERERiVkq7gBEREREREREQAmqiIiIiIiIJERV0fLJzrlX4whEREREREREehbv/W7AP/PL7RJU59yrU6ZMeb7cQYmIiIiIiEjPM23aNLxv6xZJVXxFREREREQkEZSgioiIiIiISCIoQRUREREREZFEUIIqIiIiIiIiiaAEVURERERERBJBCaqIiIiIiIgkghJUERERERERSQQlqCIiIiIiIpIISlBFREREREQkEZSgioiIiIiISCIoQRUREREREZFEUIIqIiIiIiIiiaAEVURERERERBKhKu4ARDbGe+8aGxsvizuODbnuuusOWLhw4SCAhQsXvvbiiy++EndMRXYBRkbzy4H5McZSSn/g4ILlu4FcTLGUdPjhhx+dTqerAE455ZSnDjzwwEVxx9QR59yDdXV1s8rxWtls9nPOueHleK3NMXv27BFPPPHErgArV65c8thjjz0ed0xFBgEHFCzPjSmODRlXMP84sCSmODpyAHYcARYAL8cYy3pGjBixy7Bhw0YCbLvttsunTJmStPNvO+l0+vJTTz11TVe/ThAEewFndfXrbK7m5ub0L3/5y2Pyy88+++z8xYsXL48zphIOxn4/wT73C2KMpZQRwK7R/FLgsRhjWc/gwYMH7rXXXgfmly+55JK5MYazUWEY3jBx4sQX446jHJSgSuJddtllbsyYMd+NO44NeeGFF3jyySfzi8dsaNuEmBB3ABuRuGP4wAMPrJsfN25c4uIr5L3/LVCWBBX4DDC2TK+1yd577z3uvffewofq44qlkxL92SL58SXOK6+8wiuv2D3LUaNGQcLPv9XV1T8HujxB9d6Pds4l+re96NyR9M9+0uMDyMQdQKH333+/3XschuExqVRyK5em0+l7gR6RoCb3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" + } + }, + "cell_type": "markdown", + "id": "d4da41d9", "metadata": {}, "source": [ "
\n", - "\n", + "\n", "
" ] }, + { + "cell_type": "markdown", + "id": "486c46bf", + "metadata": {}, + "source": [ + "## Efficiency" + ] + }, { "cell_type": "markdown", "id": "5c397005", @@ -533,24 +615,24 @@ "source": [ "### Latency hiding\n", "\n", - "Note that we only need communications to update the values at the boundary of the portion owned by each process. The other values (the one in green in the figure below) can be updated without communications. This provides the opportunity of overlapping the computation of the interior values (green cells in the figure) with the communication of the ghost values. This technique is called latency hiding, since we are hiding communication latency by overlapping it with communications that we need to do anyway.\n", + "Can our implementation above be improved? Note that we only need communications to update the values at the boundary of the portion owned by each process. The other values (the one in green in the figure below) can be updated without communications. This provides the opportunity of overlapping the computation of the interior values (green cells in the figure) with the communication of the ghost values. This technique is called latency hiding, since we are hiding communication latency by overlapping it with communications that we need to do anyway.\n", "\n", "The modification of the implementation above to include latency hiding is leaved as an exercise (see below).\n" ] }, { "attachments": { - "fig.png": { - "image/png": "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" + "fig16.png": { + "image/png": "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" } }, "cell_type": "markdown", - "id": "5ae8701f", + "id": "d3c3a458", "metadata": {}, "source": [ "
\n", - "\n", - "
" + "\n", + "\n" ] }, { @@ -566,17 +648,17 @@ }, { "attachments": { - "fig_jacobi_07.png": { - "image/png": "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" + "fig17.png": { + "image/png": "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" } }, "cell_type": "markdown", - "id": "df867b3d", + "id": "43040f66", "metadata": {}, "source": [ "
\n", - "\n", - "
\n" + "\n", + "" ] }, { @@ -587,7 +669,9 @@ "For the Laplace equation in 2D, the interior values in the computational grid (represented by a matrix $u$) are computed with this iterative scheme. The entry $(i,j)$ of matrix $u$ at iteration $t+1$ is computed as:\n", "\n", "\n", - "$u^{t+1}_{(i,j)} = \\dfrac{u^t_{(i-1,j)}+u^t_{(i+1,j)}+u^t_{(i,j-1)}+u^t_{(i,j+1)}}{4}$" + "$u^{t+1}_{(i,j)} = \\dfrac{u^t_{(i-1,j)}+u^t_{(i+1,j)}+u^t_{(i,j-1)}+u^t_{(i,j+1)}}{4}$\n", + "\n", + "Note that each entry is updated as the average of the four neighbors (top,bottom,left,right) of that entry in the previous iteration. " ] }, { @@ -676,7 +760,7 @@ "id": "45d786dd", "metadata": {}, "source": [ - "### Where do we can exploit parallelism?\n", + "### Where can we exploit parallelism?\n", "\n", "```julia\n", "for t in 1:niters\n", @@ -702,68 +786,140 @@ "id": "267ecd2a", "metadata": {}, "source": [ - "### Parallelization strategies" + "### Parallelization strategies\n", + "\n", + "In 2d one has more flexibility in order to distribute the data over the processes. We consider these three alternatives:\n", + "\n", + "- 1D block partition (each worker handles a subset of consecutive rows and all columns)\n", + "- 2D block partition (each worker handles a subset of consecutive rows and columns)\n", + "- 2D cyclic partition (each workers handles a subset of alternating rows ans columns)\n", + "\n", + "The three partition types are depicted in the following figure for 4 processes.\n" ] }, { "attachments": { - "fig_jacobi_07.png": { - "image/png": "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" + "fig18.png": { + "image/png": "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" } }, "cell_type": "markdown", - "id": "7445dc4a", + "id": "dc342d8a", "metadata": {}, "source": [ "
\n", - "\n", + "\n", "
" ] }, + { + "cell_type": "markdown", + "id": "766bc1d4", + "metadata": {}, + "source": [ + "Which of the thee alternatives is more efficient? To answer this question we need to quantify how much data is processed and communicated in each case. The following analysis assumes that the grid is of $N$ by $N$ cells and that the number of processes is $P$." + ] + }, + { + "cell_type": "markdown", + "id": "2580b969", + "metadata": {}, + "source": [ + "### 1D block partition\n" + ] + }, + { + "attachments": { + "g26521.png": { + "image/png": "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" + } + }, + "cell_type": "markdown", + "id": "e51f4de6", + "metadata": {}, + "source": [ + "
\n", + "\n", + "
" + ] + }, + { + "cell_type": "markdown", + "id": "6a061b83", + "metadata": {}, + "source": [ + "- We update $N^2/P$ items per iteration\n", + "- We need data from 2 neighbors (2 messages per iteration)\n", + "- We communicate $N$ items per message\n", + "- Communication/computation ratio is $O(P/N)$" + ] + }, { "cell_type": "markdown", "id": "969c42ee", "metadata": {}, "source": [ - "### Data dependencies" + "### 2D block partition" ] }, { "attachments": { - "fig_jacobi_07.png": { - "image/png": "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" + "g26305.png": { + "image/png": "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" } }, "cell_type": "markdown", - "id": "b343f4c1", + "id": "d16e5534", "metadata": {}, "source": [ - "\n", "
\n", - "\n", + "\n", "
\n" ] }, { "cell_type": "markdown", - "id": "df861921", + "id": "3459d6bd", "metadata": {}, - "source": [] + "source": [ + "- We update $N^2/P$ items per iteration\n", + "- We need data from 4 neighbors (4 messages per iteration)\n", + "- We communicate $N/\\sqrt{P}$ items per message\n", + "- Communication/computation ratio is $O(\\sqrt{P}/N)$" + ] + }, + { + "cell_type": "markdown", + "id": "cac2194d", + "metadata": {}, + "source": [ + "### 2D Cyclic partition" + ] }, { "attachments": { - "fig_jacobi_07.png": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABJoAAAFICAYAAAAYp5QFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAewgAAHsIBbtB1PgAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAACAASURBVHic7d13lGRVoTbutycPDMMAQ44CEiUrIAh+fMDVK6LiVYyIAS4mMHsVAxjhKgYMfB+KiYyoiBe8SBBBEUEkShIkSRAYYGBy6v7+6J7qU6F75sr5sQ8/n2etM2vvWjVrvevU7qrqt2qf7ksyEACWenmS80uHoM1jSVYtHQKgIQ5OcnLpEAAwkjGlAwAAAADw/w/jSgcAAAB4FlspyXNKhxhFX5LnVub3JZlfKMtINkgyaWg8I8njBbP0Mj3D366ek+SBgll6WSHJekPjgSR3FMzSS+ca/FuSeYWyjGT9JJOHxk1cg6sNHUkyN8n9BbMsU2fR9NEk15UIMopzkkwZGt+c5P0Fs/RyXJLthsZzk7yyYJZeXpXkPZX5/mneC8tFlfEPkpxeKsgIfpbBNxBJcmuSIwpm6eU/k+w4NJ6fwce4SfZL+8/tvyV5qlCWkfwyyfjSIVgun09yWekQHc7I4BvQJLk3ySEFs/TyySQvHhovTvKvBbP0smuSz1Xm70pyZ6EsI7kwg2+S84YPfTw77Pm/C8dp98VD3pSZjz6SJNl533/Na977wcKJ2p3x1WNz3WWXJElWXWvtfOzEZu36+sv1f8pJR32sNT/ye6dl2vQ1Cibq9vm3vT5PPf5Y6RiMbM8k55UOAdAUnUXTdUkuLhFkFIsr4yfTvHxPVMZL0rx8W3bMf5NkdoEcy+vONO8cLqqMm7gGq217E9fgJh3zyzP4KUGTuFbds8ef07w1vqAynpPm5Tu0Mu5P8/JN7phfleZ96DWQoaJpoy23zo577VM4TrsJEye1xqutvU7j8v3qtB+2xhMnTW5cvv7+/rb58174oqyx3gaF0vQ2bsKE0hEAYLm5RhMAAAAAtXCNJgAAgHoszOC1Xppk1Qxe/iFJ8oWzz8vmO76gYJxub95m48yfO2fp9LIkBxaM08svk+yUJNvuvmc+ffLZheO0+9kJx+f0r3yxetOapbKMYIUkdy+dfPbMc7PVC3YtGKfbQdtuknlzWht/rkjy6oJxevlFkl2SZOtddstnTj+ncJx2N15xeT77lte25oomAACA+jxSOkCHtv2hU6atkmmrN+s6ZIObk1sWpXnnsHUpjbHjxzfu/E1accXOm5p2/qa0TVae1rhz2DembRE2cQ22LinUxDU4ZeVpbXNb5wAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFoomgAAAACohaIJAAAAgFqM65ifm2RxiSCjmFoZ75rkyVJBRjClMl4pzcs3sWP+YJKBEkGW01FJ/qN0iA7VNbhzmvcYr9gxblq+zjV4V5q3BidUxlskOb9UEHpaqTL+QZLvlAoygmq+LdO8n8Hqc8SENC/f+I7579K89yKtD+aOe/c7cvwH3l0yS5e5s2a1xr867Ye57Jyzy4XpYcHcOa3x3++7J69Yd+WCabotWbSobf6OnbdOX1+zPoudN3tWdbpNqRwAsDw6i6YViqRYfmPS/kt/EzU930rLvktRE9L+S3/TWINPX9PXYNPz/TOqvlZNHjqaqi/N/xlser5GvxdZtHBBFi1cUDrGiPqXLMncWU+VjjGigf7+RudLknmzZ5eOsCxN/xkG4J9csz6uAQAAAOBZqy/tW1huTDKzUJaR7J5kbJLsseOO2ev5zy8cp93J552Xex58MEmy/lpr5W2veEXhRO3+ePPN+e8rrmjNP3nooRnT11cwUbfPfmd4F8ybXvaybLLeegXTdPvyj36UeQsGP73effvts/fOOxdO1O6755yThx59NEmy7hpr5B2velXhRO2uuOGGXHLVVdWbrkyyaIS7l7JHBp8Pk+Tfk3y3YBa6zcnwt1xuTfJowSy9vDDD278WJLlqlPuWsE2SVYbGA0l+WzBLL2tkcMtqkuSDBx2UKZOb9aW1z333uxkYGHy79KL9D8hztm7WzqWfnXB85jw1uCNy0213yAtftn/hRO0u+fHpefCuO5MkK01bJa965+GFE7W777Zb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" + "g26911.png": { + "image/png": "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" } }, "cell_type": "markdown", - "id": "6f97781b", + "id": "9c2d4518", "metadata": {}, "source": [ - "\n", "
\n", - "\n", - "
\n" + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "88c6c735", + "metadata": {}, + "source": [ + "- We update $N^2/P$ items\n", + "- We need data from 4 neighbors (4 messages per iteration)\n", + "- We communicate $N^2/P$ items per message (the full data owned by the neighbor)\n", + "- Communication/computation ratio is $O(1)$" ] }, { @@ -771,9 +927,14 @@ "id": "850b1848", "metadata": {}, "source": [ - "### Complexity analysis\n", + "### Which partition is the best one?\n", "\n", - "The complexity analysis is let as an exercise (see below).\n" + "- Both 1d and 2d block partitions are potentially scalable if $P<