- Commit
- 5dbee0ecb42c812b89bb8a3697de5e77c9f365a8
- Parent
- 6b443bd3d0dc759bc717df8f899c0b3af78baf47
- Author
- Pablo <pablo-pie@riseup.net>
- Date
Added a benchmark target
Added a benchmarked target for the unblocked version of dgetrf
Educational material on the SciPy implementation of numerical linear algebra algorithms
Added a benchmark target
Added a benchmarked target for the unblocked version of dgetrf
7 files changed, 90 insertions, 28 deletions
Status | File Name | N° Changes | Insertions | Deletions |
Modified | getrf/benchmark/benchmark.ipynb | 90 | 71 | 19 |
Modified | getrf/benchmark/config.h | 5 | 5 | 0 |
Modified | getrf/benchmark/main.c | 16 | 11 | 5 |
Modified | getrf/benchmark/output/histogram-dgetrf.bin | 0 | 0 | 0 |
Modified | getrf/benchmark/output/histogram-naive.bin | 0 | 0 | 0 |
Added | getrf/benchmark/output/histogram-unblocked.bin | 0 | 0 | 0 |
Modified | linear-solvers.ipynb | 7 | 3 | 4 |
diff --git a/getrf/benchmark/benchmark.ipynb b/getrf/benchmark/benchmark.ipynb @@ -5,18 +5,18 @@ "id": "9decf754-a174-4338-9c54-5eef69cc91bb", "metadata": {}, "source": [ - "To test the complexity of the `getrf` algorithm we plot the log of the excution time on progressively larger inputs: `getrf` is $O(n^d)$, where $d$ is the slope of the result line in the plot. We can thus confirm that `getrf` and its naive alternative (taking $n_1 = 1$) are both $O(n^3)$!" + "To test the complexity of the `getrf` algorithm we plot the log of the excution time on progressively larger inputs: `getrf` is $O(n^d)$, where $d$ is the slope of the result line in the plot. We can thus confirm that `getrf` is $O(n^3)$!" ] }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 1, "id": "30318f00-d2d5-444f-9e8a-abd78af4b74f", "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] @@ -29,6 +29,9 @@ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", + "BLUE, CYAN, GREEN = (0, 0.22265625, 0.8359375), (0, 0.640625, 0.8359375), (0, 0.8359375, 0.61328125)\n", + "YELLOW = (1, 0.703125, 0)\n", + "\n", "MAX_N = 5000\n", "STEP = 100\n", "\n", @@ -38,16 +41,14 @@ "x = np.arange(1, MAX_N, STEP)\n", "x_ref = np.arange(np.log(x[0]), np.log(x[-1]))\n", "\n", - "histogram_dgetrf = np.fromfile(\"histogram-dgetrf.bin\", dtype=np.uint32)\n", - "plt.plot(np.log(x), np.log(histogram_dgetrf + EPS), color=\"blue\")\n", - "\n", - "histogram_naive = np.fromfile(\"histogram-naive.bin\", dtype=np.uint32)\n", - "plt.plot(np.log(x), np.log(histogram_naive + EPS), color=\"green\")\n", - "\n", - "plt.plot(x_ref, 3 * x_ref, color=\"orange\")\n", + "histogram_dgetrf = np.fromfile(\"output/histogram-dgetrf.bin\", dtype=np.uint32)\n", + "plt.plot(np.log(x), np.log(histogram_dgetrf + EPS), color=BLUE)\n", + "plt.plot(x_ref, 3 * x_ref, color=YELLOW)\n", "\n", "plt.xticks(np.arange(0, 9, 2))\n", "plt.yticks(np.arange(-10, 30, 2))\n", + "plt.xlabel('n')\n", + "plt.ylabel('log(ms)')\n", "plt.grid(which='both', color='gray', linestyle='--', linewidth=0.5)" ] }, @@ -56,37 +57,88 @@ "id": "a1d02f49-35f3-4055-ac14-3bd39b9b9319", "metadata": {}, "source": [ - "In fact, the naive implementation even seems to be slightly faster on large enough inputs:" + "We can also compare the LAPACK implementation of `getrf` with variations of the same algorithm:" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 2, + "id": "2e55827d-1fa1-4c5a-a8f0-2a48f532ff56", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<matplotlib.legend.Legend at 0x7f2c40dbe660>" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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Pffcc873JfO289JLL6mBAweq4uJi56usrMy53dOylkKrnRs1apR64oknmr3Xv39/9fOf/9xNPWqfvlloORwOFRkZqd544w3ne42NjcpkMqk//elPSimlrl+/rgwGg1q7dq2zTWFhodLr9Wrnzp1KKaVycnIUoI4cOeJsk5aWpgB19uxZF39XnqusrEwB6sCBA0opyVsLISEh6v3335esXaimpkbdddddKiUlRU2aNMlZaEnmbeull15SQ4YMuek2T8xaLh22YxaLhZMnT5KYmNjs/cTERA4fPuymXnUMly9fpqSkpFm2RqORSZMmObM9efIkVqu1WZuoqCgSEhKcbdLS0jCZTIwePdrZ5t5778VkMnXqf6OqqioAQkNDAcnblex2O2vXrqWuro4xY8ZI1i701FNPMWfOHKZPn97sfcm87V24cIGoqCji4+N5+OGHuXTpEuCZWctDpdux8vJy7HY7ERERzd6PiIigpKTETb3qGG7kd7Nsc3NznW18fHwICQlp0ebG15eUlBAeHt5i/+Hh4Z3230gpxapVqxg/fjwJCQmA5O0KZ86cYcyYMTQ2NhIYGMimTZsYMGCA84eEZN221q5dS3p6OsePH2+xTcZ32xo9ejT/+7//S9++fSktLeW3v/0tY8eOJTs72yOzlkKrA9DpdM3+rpRq8Z5ondZk+802N2vfmf+Nnn76aU6fPs2hQ4dabJO8206/fv3IzMzk+vXrbNiwgccee4wDBw44t0vWbSc/P5/nnnuO5ORkfH19b9lOMm8bs2bNcv73oEGDGDNmDL179+Zvf/sb9957L+BZWculw3YsLCwMLy+vFtV1WVlZi2pe3Jkbd7B8W7aRkZFYLBYqKyu/tU1paWmL/V+9erVT/hs988wzbN26lX379hETE+N8X/Juez4+PvTp04cRI0awevVqhgwZwh/+8AfJ2gVOnjxJWVkZw4cPx9vbG29vbw4cOMAf//hHvL29nXlI5q4REBDAoEGDuHDhgkeObym02jEfHx+GDx9OSkpKs/dTUlIYO3asm3rVMcTHxxMZGdksW4vFwoEDB5zZDh8+HIPB0KxNcXExWVlZzjZjxoyhqqqKY8eOOdscPXqUqqqqTvVvpJTi6aefZuPGjezdu5f4+Phm2yVv11NKYTabJWsXmDZtGmfOnCEzM9P5GjFiBI8++iiZmZn06tVLMnchs9nM559/Tvfu3T1zfN/R1HnhcW4s7/CXv/xF5eTkqOeff14FBASoK1euuLtrHq+mpkZlZGSojIwMBai33npLZWRkOJfGeOONN5TJZFIbN25UZ86cUY888shNbxGOiYlRu3fvVunp6Wrq1Kk3vUV48ODBKi0tTaWlpalBgwZ1utuxn3zySWUymdT+/fub3ZJdX1/vbCN5t51f/OIXKjU1VV2+fFmdPn1a/fKXv1R6vV4lJycrpSRrLXz9rkOlJPO29MILL6j9+/erS5cuqSNHjqi5c+eqoKAg5889T8taCq0O4L/+679Ujx49lI+Pjxo2bJjzlnnx7fbt26eAFq/HHntMKdV0m/BLL72kIiMjldFoVBMnTlRnzpxpto+Ghgb19NNPq9DQUOXn56fmzp2r8vLymrW5du2aevTRR1VQUJAKCgpSjz76qKqsrNTou/QMN8sZUB988IGzjeTddn74wx86jwndunVT06ZNcxZZSknWWvhmoSWZt50b62IZDAYVFRWlFi5cqLKzs53bPS1rnVJK3eFZOiGEEEIIcRtkjpYQQgghhItIoSWEEEII4SJSaAkhhBBCuIgUWkIIIYQQLiKFlhBCCCGEi0ihJYQQQgjhIlJoCSGEEEK4iBRaQgghhBAuIoWWEEIIIYSLSKElhBBCCOEiUmgJIYQQQriIt7s7IIQQ7dnkyZMZPHgwvr6+vP/++/j4+PDEE0/w8ssvu7trQggPIGe0hBDie/rb3/5GQEAAR48e5c033+TVV18lJSXF3d0SQngAnVJKubsTQgjRXk2ePBm73c7Bgwed740aNYqpU6fyxhtvuLFnQghPIGe0hBDiexo8eHCzv3fv3p2ysjI39UYI4Umk0BJCiO/JYDA0+7tOp8PhcLipN0IITyKFlhBCCCGEi0ihJYQQQgjhIlJoCSGEEEK4iNx1KIQQQgjhInJGSwghhBDCRaTQEkIIIYRwESm0hBBCCCFcRAotIYQQQggXkUJLCCGEEMJFpNASQgghhHARKbSEEEIIIVxECi0hhBBCCBeRQksIIYQQwkWk0BJCCCGEcBEptIQQQgghXOT/ASSiVpPFImACAAAAAElFTkSuQmCC", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "histogram_naive = np.fromfile(\"output/histogram-naive.bin\", dtype=np.uint32)\n", + "plt.plot(x, histogram_naive, color=CYAN, label=\"Naive\")\n", + "\n", + "histogram_unblocked = np.fromfile(\"output/histogram-unblocked.bin\", dtype=np.uint32)\n", + "plt.plot(x, histogram_unblocked, color=GREEN, label=\"Unblocked\")\n", + "\n", + "# Referance plot\n", + "plt.plot(x, histogram_dgetrf, color=BLUE, label=\"LAPACK implementation\")\n", + "\n", + "plt.grid(which='both', color='gray', linestyle='--', linewidth=0.5)\n", + "plt.xlabel('n')\n", + "plt.ylabel('ms')\n", + "plt.legend()" + ] + }, + { + "cell_type": "markdown", + "id": "7a769706-fcd6-4d35-af85-a95fc76a990b", + "metadata": {}, + "source": [ + "In the last plot, the _Naive_ line represents the execution time of the same algorithm but taking $n_1 = 1$, while the _Unblocked_ line represents the unblocked version of `getrf`. We can thus see that the performance of the LAPACK implementation is roughtly equivalent to the naive implementation, while blocking affords us a $2 \\times$ speedup:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, "id": "c07627c1-55f5-4662-83ce-9e147533f949", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "(np.float64(0.5714285715051021),\n", - " np.float64(1.1698473282410335),\n", - " np.float64(0.9519558821710907))" + "(np.float64(1.0831686294692071), np.float64(1.816507135050564))" ] }, - "execution_count": 6, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "histogram_rel = ((histogram_naive + EPS)/(histogram_dgetrf + EPS))[2:]\n", - "np.min(histogram_rel), np.max(histogram_rel), np.mean(histogram_rel)" + "rel_naive = ((histogram_naive + EPS)/(histogram_dgetrf + EPS))\n", + "rel_unblocked = ((histogram_unblocked + EPS)/(histogram_dgetrf + EPS))\n", + "\n", + "np.mean(rel_naive), np.mean(rel_unblocked)" ] }, { "cell_type": "code", "execution_count": null, - "id": "2e55827d-1fa1-4c5a-a8f0-2a48f532ff56", + "id": "977f63f0-ab58-4d5e-be20-6ba81044be2a", "metadata": {}, "outputs": [], "source": []
diff --git a/getrf/benchmark/config.h b/getrf/benchmark/config.h @@ -17,3 +17,8 @@ * The interval between successive terms in the histogram */ #define STEP 100 + +/* + * Directory where the histograms will be stored at + */ +#define OUTPUT_DIR "output/"
diff --git a/getrf/benchmark/main.c b/getrf/benchmark/main.c @@ -38,6 +38,7 @@ typedef struct { * LAPACK functions */ extern void dgetrf_(int *m, int *n, double *A, int *lda, int *ipiv, int *info); +extern void dgetrf2_(int *m, int *n, double *A, int *lda, int *ipiv, int *info); extern void dgetrfnaive_(int *m, int *n, double *A, int *lda, int *ipiv, int *info); uint32_t thread_run_benchmark(Thread *thread, size_t n) @@ -81,8 +82,8 @@ Benchmarker benchmarker_new(double *ref_data) { Benchmarker bench = {0}; - // These arrays will live for the entire duration of the program, - // so we just leak them 🤡 + // This array will live for the entire duration of the program, + // so we might as well leack it 🤡 double *data = malloc(sizeof(double)*MAX_N*MAX_N*N_THREADS); if (data == NULL) { fprintf(stderr, "ERROR: Buy more RAM!\n"); @@ -121,19 +122,24 @@ int main(int argc, char **argv) if (argc < 2 || strcmp(argv[1], "standard") == 0) { getrf = dgetrf_; - output_path = "output/histogram-dgetrf.bin"; + output_path = OUTPUT_DIR "histogram-dgetrf.bin"; } else if (strcmp(argv[1], "naive") == 0) { getrf = dgetrfnaive_; - output_path = "output/histogram-naive.bin"; + output_path = OUTPUT_DIR "histogram-naive.bin"; + } else if (strcmp(argv[1], "unblocked") == 0) { + getrf = dgetrf2_; + output_path = OUTPUT_DIR "histogram-unblocked.bin"; } else { fprintf(stderr, "ERROR: unknown command \"%s\"\n", argv[1]); - fprintf(stderr, "USAGE: %s [standard|naive]\n", argv[0]); + fprintf(stderr, "USAGE: %s [standard|naive|unblocked]\n", argv[0]); exit(EXIT_FAILURE); } // ======================================================================== printf("INFO: Initializing random input data... "); + // This array will live for the entire duration of the program, + // so we might as well leack it 🤡 double *ref_data = malloc(sizeof(double)*MAX_N*MAX_N); if (ref_data == NULL) { fprintf(stderr, "ERROR: Buy more RAM!\n");
diff --git a/getrf/benchmark/output/histogram-dgetrf.bin b/getrf/benchmark/output/histogram-dgetrf.bin Binary files differ.
diff --git a/getrf/benchmark/output/histogram-naive.bin b/getrf/benchmark/output/histogram-naive.bin Binary files differ.
diff --git a/getrf/benchmark/output/histogram-unblocked.bin b/getrf/benchmark/output/histogram-unblocked.bin Binary files differ.
diff --git a/linear-solvers.ipynb b/linear-solvers.ipynb @@ -114,7 +114,7 @@ "id": "7c6678f2-9ae6-4daa-922c-828771c1a796", "metadata": {}, "source": [ - "The actual LAPACK algorithm for factorizing $A$ is a slight variation of this simple concept: we instead take the decomposition\n", + "The actual LAPACK algorithm for factorizing $A$ is a slight variation of this concept, where we instead take the decomposition\n", "$$\n", "A =\n", "\\left(\n", @@ -122,10 +122,9 @@ " A_{11} & A_{12} \\\\ \\hline\n", " A_{21} & A_{22}\n", "\\end{array}\n", - "\\right),\n", + "\\right)\n", "$$\n", - "where $A_{11}$ is a $\\left\\lfloor \\frac{\\min \\{m, n\\}}{2} \\right\\rfloor \\times \\left\\lfloor \\frac{\\min \\{m, n\\}}{2} \\right\\rfloor$ matrix.\n", - "This is implemented in the `GETRF` family of subroutines." + "with $A_{11}$ is a $\\left\\lfloor \\frac{\\min \\{m, n\\}}{2} \\right\\rfloor \\times \\left\\lfloor \\frac{\\min \\{m, n\\}}{2} \\right\\rfloor$ matrix. This is implemented in the `GETRF` family of subroutines." ] }, {