{ "metadata": { "name": "", "signature": "sha256:3e794c9c65f63b877ac0eefd7bb33b9a25a07b39929f8c79292eb118718d9822" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "[Sebastian Raschka](http://sebastianraschka.com) \n", "last updated: 06/09/2014\n", "\n", "- [Open in IPython nbviewer](http://nbviewer.ipython.org/github/rasbt/One-Python-benchmark-per-day/blob/master/ipython_nbs/day10_fortran_lstsqr.ipynb?create=1) \n", "\n", "- [Link to this IPython notebook on Github](https://github.com/rasbt/One-Python-benchmark-per-day/blob/master/ipython_nbs/day10_fortran_lstsqr.ipynb) \n", "\n", "- [Link to the GitHub Repository One-Python-benchmark-per-day](https://github.com/rasbt/One-Python-benchmark-per-day)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "I am really looking forward to your comments and suggestions to improve and \n", "extend this little collection! Just send me a quick note \n", "via Twitter: [@rasbt](https://twitter.com/rasbt) \n", "or Email: [bluewoodtree@gmail.com](mailto:bluewoodtree@gmail.com)\n", "
" ] }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Day 10 - One Python Benchmark per Day" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Cython - Bridging the gap between Python and Fortran" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
\n" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Sections" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- [Linear regression via the least squares method](#Linear-regression-via-the-least-squares-method) \n", " \n", "- [Least squares fit implementations](#Least-squares-fit-implementations)\n", " \n", " - [Implementation in (C)Python](#Implementation-in-Python)\n", " \n", " - [Implementation in Cython](#Implementation-in-Cython)\n", " \n", " - [Implementation in Fortran](#Implementation-in-Fortran)\n", "\n", "- [Generating sample data and benchmarking](#Generating-sample-data-and-benchmarking)\n", "\n", " - [Verification that all implementations yield similar results](#Verification-that-all-implementations-yield-similar-results)\n", " \n", " - [Visualization](#Visualization)\n", " \n", " - [Benchmarking via timeit](#Benchmarking-via-timeit)\n", " \n", "- ###[Results](#Results)\n", "\n", "- [Conclusion](#Conclusion)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![Performance vs. Productivity for different programming languages](https://raw.githubusercontent.com/rasbt/One-Python-benchmark-per-day/master/images/cython_vs_chart.png) \n", "(Note that this chart just reflects my rather objective thoughts after experimenting with Cython, and it is not based on real numbers or benchmarks.)\n", "
\n", "
\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Linear regression via the least squares method" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For this benchmark, we will implement a naive least squares method for linear regression, which is the simplest approach to performing a regression analysis of a dependent and a explanatory variable. \n", "\n", "The objective is to find the best-fitting straight line through a set of points that minimizes the sum of the squared offsets from the line. \n", "The offsets come in 2 different flavors: perpendicular and vertical - with respect to the line. \n", "![](https://raw.githubusercontent.com/rasbt/One-Python-benchmark-per-day/master/images/least_squares_vertical.png) \n", "![](https://raw.githubusercontent.com/rasbt/One-Python-benchmark-per-day/master/images/least_squares_perpendicular.png) \n", "\n", "As Michael Burger summarizes it nicely in his article \"[Problems of Linear Least Square Regression - And Approaches to Handle Them](http://www.arsa-conf.com/archive/?vid=1&aid=2&kid=60101-220)\": \"the perpendicular offset method delivers a more precise result but is are more complicated to handle. Therefore normally the vertical offsets are used.\" \n", "Here, we will also use the method of computing the vertical offsets.\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In more mathematical terms, our goal is to compute the best fit to *n* points $(x_i, y_i)$ with $i=1,2,...n,$ via linear equation of the form \n", "$f(x) = a\\cdot x + b$. \n", "We further have to assume that the y-component is functionally dependent on the x-component. \n", "In a cartesian coordinate system, $b$ is the intercept of the straight line with the y-axis, and $a$ is the slope of this line." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$a = \\frac{S_{x,y}}{\\sigma_{x}^{2}}\\quad$ (slope)\n", "\n", "\n", "$b = \\bar{y} - a\\bar{x}\\quad$ (y-axis intercept)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "where \n", "\n", "\n", "$S_{xy} = \\sum_{i=1}^{n} (x_i - \\bar{x})(y_i - \\bar{y})\\quad$ (covariance)\n", "\n", "\n", "$\\sigma{_x}^{2} = \\sum_{i=1}^{n} (x_i - \\bar{x})^2\\quad$ (variance)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Least squares fit implementations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "After I experimented with different libraries, the numpy functions, and other tweaks, I decided to go back and implement the least squares fit method in (C)Python without any external libraries - using just the pure standard lib. Python.\n", "\n", "For Cython and Fortran, we will be using NumPy `arrays` for more efficient memory access." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Implementation in (C)Python" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def python_lstsqr(x_list, y_list):\n", " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", " N = len(x_list)\n", " x_avg = sum(x_list)/N\n", " y_avg = sum(y_list)/N\n", " var_x, cov_xy = 0, 0\n", " for x,y in zip(x_list, y_list):\n", " temp = x - x_avg\n", " var_x += temp**2\n", " cov_xy += temp * (y - y_avg)\n", " slope = cov_xy / var_x\n", " y_interc = y_avg - slope*x_avg\n", " return (slope, y_interc)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Implementation in Cython" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Cython (see [Cython's C-extensions for Python](http://cython.org)) is basically a hybrid between C and Python and can be pictured as compiled Python code with type declarations. \n", "Since we are working in an IPython notebook here, we can make use of the very convenient *IPython magic*: It will take care of the conversion to C code, the compilation, and eventually the loading of the function. \n", "Also, we are adding C type declarations; those type declarations are not necessary for using Cython, however, it will improve the performance of our code significantly." ] }, { "cell_type": "code", "collapsed": false, "input": [ "%load_ext cythonmagic" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "%%cython\n", "import numpy as np\n", "cimport numpy as np\n", "cimport cython\n", "@cython.boundscheck(False) \n", "@cython.wraparound(False)\n", "@cython.cdivision(True)\n", "cpdef cython_lstsqr(x_ary, y_ary):\n", " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", " cdef double x_avg, y_avg, var_x, cov_xy,\\\n", " slope, y_interc, temp\n", " cdef double[:] x = x_ary # memoryview\n", " cdef double[:] y = y_ary\n", " cdef unsigned long N, i\n", " \n", " N = x.shape[0]\n", " x_avg = 0\n", " y_avg = 0\n", " for i in range(N):\n", " x_avg += x[i]\n", " y_avg += y[i]\n", " x_avg = x_avg/N\n", " y_avg = y_avg/N\n", " var_x = 0\n", " cov_xy = 0\n", " for i in range(N):\n", " temp = (x[i] - x_avg)\n", " var_x += temp**2\n", " cov_xy += temp*(y[i] - y_avg)\n", " slope = cov_xy / var_x\n", " y_interc = y_avg - slope*x_avg\n", " return (slope, y_interc)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Thanks to Joshua Adelman and Andreas Mayer for pointing out some flaws in the initial version of the Cython implementation." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Upon request I added the untyped version (identical to the (C)Python implementation) for comparison below:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%cython\n", "cimport cython\n", "cpdef cython_lstsqr_untyped(x_list, y_list):\n", " \"\"\" Computes the least-squares solution to a linear matrix equation. \"\"\"\n", " N = len(x_list)\n", " x_avg = sum(x_list)/N\n", " y_avg = sum(y_list)/N\n", " var_x, cov_xy = 0, 0\n", " for x,y in zip(x_list, y_list):\n", " temp = x - x_avg\n", " var_x += temp**2\n", " cov_xy += temp * (y - y_avg)\n", " slope = cov_xy / var_x\n", " y_interc = y_avg - slope*x_avg\n", " return (slope, y_interc)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Implementation in Fortran" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There is also a convenient IPython magic command for compiling Fortran code. The Fortran magic uses NumPy's [`F2PY`](http://wiki.scipy.org/F2py) module for compiling and running the Fortran code. For more information, please see the ['Fortran magic's documentation'](http://nbviewer.ipython.org/github/mgaitan/fortran_magic/blob/master/documentation.ipynb).\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%install_ext https://raw.github.com/mgaitan/fortran_magic/master/fortranmagic.py" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Installed fortranmagic.py. To use it, type:\n", " %load_ext fortranmagic\n" ] } ], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "%load_ext fortranmagic" ], "language": "python", "metadata": {}, "outputs": [ { "javascript": [ "$.getScript(\"https://raw.github.com/marijnh/CodeMirror/master/mode/fortran/fortran.js\", function () {\n", "IPython.config.cell_magic_highlight['magic_fortran'] = {'reg':[/^%%fortran/]};});\n" ], "metadata": {}, "output_type": "display_data" } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "%%fortran\n", "SUBROUTINE fortran_lstsqr(ary_x, ary_y, slope, y_interc)\n", " ! Computes the least-squares solution to a linear matrix equation. \"\"\"\n", " IMPLICIT NONE\n", " REAL(8), INTENT(in), DIMENSION(:) :: ary_x, ary_y\n", " REAL(8), INTENT(out) :: slope, y_interc\n", " REAL(8) :: x_avg, y_avg, var_x, cov_xy, temp\n", " INTEGER(8) :: N, i\n", " \n", " N = SIZE(ary_x)\n", "\n", " x_avg = SUM(ary_x) / N\n", " y_avg = SUM(ary_y) / N\n", " var_x = 0\n", " cov_xy = 0\n", " \n", " DO i = 1, N\n", " temp = ary_x(i) - x_avg\n", " var_x = var_x + temp**2\n", " cov_xy = cov_xy + (temp*(ary_y(i) - y_avg))\n", " END DO\n", " \n", " slope = cov_xy / var_x\n", " y_interc = y_avg - slope*x_avg\n", "\n", "END SUBROUTINE fortran_lstsqr" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\tBuilding module \"_fortran_magic_a044885f2b0c0feac78a230b6b714e2b\"...\n", "\t\tConstructing wrapper function \"fortran_lstsqr\"...\n", "\t\t slope,y_interc = fortran_lstsqr(ary_x,ary_y)\n", "\tWrote C/API module \"_fortran_magic_a044885f2b0c0feac78a230b6b714e2b\" to file \"/var/folders/5k/0pmyxbls5tg39vdv6vl3pnvh0000gn/T/tmp5i8i3zxx/src.macosx-10.5-x86_64-3.4/_fortran_magic_a044885f2b0c0feac78a230b6b714e2bmodule.c\"\n", "\tFortran 77 wrappers are saved to \"/var/folders/5k/0pmyxbls5tg39vdv6vl3pnvh0000gn/T/tmp5i8i3zxx/src.macosx-10.5-x86_64-3.4/_fortran_magic_a044885f2b0c0feac78a230b6b714e2b-f2pywrappers.f\"\n" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Generating sample data and benchmarking" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "
" ] }, { "cell_type": "heading", "level": 3, "metadata": {}, "source": [ "Verification that all implementations yield same results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import random\n", "import numpy as np\n", "\n", "random.seed(12345)\n", "\n", "x = [x_i*random.randrange(8,12)/10 for x_i in range(500)]\n", "y = [y_i*random.randrange(8,12)/10 for y_i in range(100,600)]\n", "x_ary = np.asarray(x)\n", "y_ary = np.asarray(y)\n", "\n", "reference = python_lstsqr(x_ary, y_ary)\n", "funcs = [python_lstsqr, cython_lstsqr, \n", " cython_lstsqr_untyped,fortran_lstsqr]\n", "\n", "for f in funcs:\n", " assert(reference == f(x_ary, y_ary)) \n", "print('ok')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ok\n" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Visualization" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Just for a visual cheeck for how our dataset is distributed, and how the least squares regression line looks like, we will plot the results in a scatter plot below.\n", "\n", "Note that we are only using our \"matrix approach\" to visualize the results - for simplicity. We expect all 3 approaches to produce similar results, which we confirmed in via the `np.testing.assert_array_almost_equal` function above." ] }, { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "from matplotlib import pyplot as plt\n", "import random\n", "\n", "random.seed(12345)\n", "\n", "x = [x_i*random.randrange(8,12)/10 for x_i in range(500)]\n", "y = [y_i*random.randrange(8,12)/10 for y_i in range(100,600)]\n", "\n", "slope, intercept = python_lstsqr(x, y)\n", "\n", "line_x = [round(min(x)) - 1, round(max(x)) + 1]\n", "line_y = [slope*x_i + intercept for x_i in line_x]\n", "\n", "plt.figure(figsize=(8,8))\n", "plt.scatter(x,y)\n", "plt.plot(line_x, line_y, color='red', lw='2')\n", "\n", "plt.ylabel('y')\n", "plt.xlabel('x')\n", "plt.title('Linear regression via least squares fit')\n", "\n", "ftext = 'y = ax + b = {:.3f} + {:.3f}x'\\\n", " .format(slope, intercept)\n", "plt.figtext(.15,.8, ftext, fontsize=11, ha='left')\n", "\n", "plt.show()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "
" ] }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Benchmarking via timeit" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, finally let us take a look at the effect of different sample sizes on the relative performances for each approach." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import timeit\n", "import random\n", "random.seed(12345)\n", "\n", "orders_n = [10**n for n in range(1, 6)]\n", "timings = {f.__name__:[] for f in funcs}\n", "\n", "for n in orders_n:\n", " x = ([x_i*np.random.randint(8,12)/10 for x_i in range(n)])\n", " y = ([y_i*np.random.randint(10,14)/10 for y_i in range(n)])\n", " x_ary = np.asarray(x)\n", " y_ary = np.asarray(y)\n", " x_fary = np.asfortranarray(x)\n", " y_fary = np.asfortranarray(y)\n", " timings['python_lstsqr'].append(min(timeit.Timer('python_lstsqr(x, y)', \n", " 'from __main__ import python_lstsqr, x, y')\\\n", " .repeat(repeat=3, number=1000)))\n", " timings['cython_lstsqr'].append(min(timeit.Timer('cython_lstsqr(x_ary, y_ary)', \n", " 'from __main__ import cython_lstsqr, x_ary, y_ary')\\\n", " .repeat(repeat=3, number=1000)))\n", " timings['cython_lstsqr_untyped'].append(min(timeit.Timer('cython_lstsqr_untyped(x, y)', \n", " 'from __main__ import cython_lstsqr_untyped, x, y')\\\n", " .repeat(repeat=3, number=1000)))\n", " timings['fortran_lstsqr'].append(min(timeit.Timer('fortran_lstsqr(x_fary, y_fary)', \n", " 'from __main__ import fortran_lstsqr, x_fary, y_fary')\\\n", " .repeat(repeat=3, number=1000)))" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 11 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Preparing to plot the results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import platform\n", "import multiprocessing\n", "from cython import __version__ as cython__version__\n", "\n", "def print_sysinfo():\n", " \n", " print('\\nPython version :', platform.python_version())\n", " print('compiler :', platform.python_compiler())\n", " print('Cython version :', cython__version__)\n", " print('NumPy version :', np.__version__)\n", " \n", " print('\\nsystem :', platform.system())\n", " print('release :', platform.release())\n", " print('machine :', platform.machine())\n", " print('processor :', platform.processor())\n", " print('CPU count :', multiprocessing.cpu_count())\n", " print('interpreter:', platform.architecture()[0])\n", " print('\\n\\n')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "import matplotlib.pyplot as plt\n", "\n", "def plot(timings, title, labels, orders_n):\n", " plt.rcParams.update({'font.size': 12})\n", "\n", " fig = plt.figure(figsize=(11,10))\n", " for lb in labels:\n", " plt.plot(orders_n, timings[lb], alpha=0.5, label=labels[lb], \n", " marker='o', lw=3)\n", " plt.xlabel('sample size n')\n", " plt.ylabel('time per computation in milliseconds')\n", " plt.xlim([min(orders_n) / 10, max(orders_n)* 10])\n", " plt.legend(loc=2)\n", " plt.grid()\n", " plt.xscale('log')\n", " plt.yscale('log')\n", " plt.title(title)\n", " plt.show()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "import prettytable\n", "\n", "labels = {'python_lstsqr':'Python (Standard Library func.)', \n", " 'cython_lstsqr':'Cython (NumPy arrays)', \n", " 'cython_lstsqr_untyped':'Cython untyped (equiv. to Python impl.)', \n", " 'fortran_lstsqr': 'Fortran (NumPy arrays)',\n", " }\n", "\n", "def summary_table(funcs):\n", " fit_table = prettytable.PrettyTable(['n=%s' %orders_n[-1], \n", " 'Implementation' ,\n", " 'time in msec'])\n", " fit_table.align['Implementation'] = 'l'\n", " for l in ['python_lstsqr', 'cython_lstsqr_untyped', \n", " 'cython_lstsqr', 'fortran_lstsqr']:\n", " fit_table.add_row(['', labels[l], '{:.3f}'.format(timings[l][-1])])\n", " print(fit_table)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 32 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 1, "metadata": {}, "source": [ "Results" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "title = 'Performance of Linear Regression Least Squares Fits in Python, Cython, and Fortran'\n", "\n", "print_sysinfo()\n", "plot(timings, title, labels, orders_n)\n", "summary_table(funcs)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "Python version : 3.4.1\n", "compiler : GCC 4.2.1 (Apple Inc. build 5577)\n", "Cython version : 0.20.1\n", "NumPy version : 1.8.1\n", "\n", "system : Darwin\n", "release : 13.2.0\n", "machine : x86_64\n", "processor : i386\n", "CPU count : 2\n", "interpreter: 64bit\n", "\n", "\n", "\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nHMiSJUu0Y5YsWUJycjLDhw8nICCA4OBgDAaD1p/6tcTXe12VlZXx2muv8dxzz3H//ffTu3dvnnrq\nKaZMmXLFRV2zZ89m0aJF9OzZk5/97Gf079/fpdf+L37xCyZPnkyfPn343e9+xw8//MDkyZOZMmUK\nffr04fe//z0XLlzg+PHjTvd76qmnmDhxIv369eOf//wnMTExTfp/BYiKiiI0NPSKtoVnySnNYcn3\nS8gtywUcu2FN7DORH/X8kctbuH5eUMDWvDzt8yPG15dF8fHE+Pm5te9CNJUkrlfhe424wcUEQH+N\n+7ny9m9KEvLoo4+ye/duMjMzAXjzzTeZMmUKMTExN7xv//79nU4px8fHYzabtdtHjhzRSg1q3XHH\nHVRUVHDq1CktNnjwYKdjGrbjKp1Ox5AhQ5rctr+/PwsWLNAS+ry8PDZv3swjjzzidFxiYiKh9S46\nGDVqFOB43jk5OZw7d45f/vKXhIaGal8TJ05Ep9Nx8uRJTp06RWVlpXa/WqNHj77hGBYWFjo9NsA3\n33zDO++84/R4MTExVFZWcuLECQCOHj161cdrroiICCZPnkx6ejrgOFW+bt065s+f36x2Dx8+THR0\nNP3799difn5+jBw5ksOHD1/3vllZWYSGhhIcHEyPHj3Q6XS88847GGp263n00UdZtmwZSimsVivL\nly+/Yoyv5kavq5MnT1JVVXXV137DPjdsp1OnTleU2zRG/feQyWQCcKphr401bPvWW2/VvjcYDIwY\nMeKG/69XExYWRkG9PeiFg6fUUZ4vPM/S75dSVFkEOHbDmp44nRGdXbvITynFR/n5fFavNKqzvz8L\n4+MJ92kfl8V4ytiIltE+XoWt7K6kJJbv3UvKTTdpscq9e1lwxx30u8qVyDeSqRTLv/sO/wbtjR02\nrMlt9enTB71ez+HDh5k6dep1j01MTOS2227jjTfe4IknnuC9995j27ZtjXqchnWQriw0rtPp8Gvw\n17lOp8NeUyt1vfs1fKyr1di50jY4kpo//elPHDx4kE8//RSj0ciECROcjrnec619jL/+9a9XvVK+\nc+fO2h8LroiIiKC43haKtf2ZP38+Tz755BXHR0dHN7rtq124VF19rXMMdebPn8+0adPIzc1l165d\nlJaWMnv27EY/blMopW44S9S1a1c+++wz9Ho98fHx+Pv7O/08NTWVJ554gq1bt2Kz2SgqKiI1NbVR\n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\n", "text": [ "" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "+----------+-----------------------------------------+--------------+\n", "| n=100000 | Implementation | time in msec |\n", "+----------+-----------------------------------------+--------------+\n", "| | Python (Standard Library func.) | 55.369 |\n", "| | Cython untyped (equiv. to Python impl.) | 35.196 |\n", "| | Cython (NumPy arrays) | 0.527 |\n", "| | Fortran (NumPy arrays) | 0.436 |\n", "+----------+-----------------------------------------+--------------+\n" ] } ], "prompt_number": 33 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "heading", "level": 2, "metadata": {}, "source": [ "Conclusion" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[[back to top]](#Sections)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Of course it is not fair to compare the interpreted Python language to compiled C and Fortran code that have static types at compile time. \n", "Here, I was mostly interested to see how the code compiled code via Cython stacks against Fortran via F2PY (of course different compiler version can also cause significant differences). And one can say that both are about equal in terms of performance (at least for this simple benchmark). \n", "\n", "It is nice to see that Cython and Fortran code can be used quite conveniently in IPython notebooks, which make them a even more valuable tool for data analyses and algorithm development: Code can be prototyped in Python, and step by step rewritten in context of the original documentation. \n", "In the case of Cython, it is especially nice that Python and C functions can be mixed and matched to get the best out of both: Productivity and code efficiency.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "
\n", "
" ] } ], "metadata": {} } ] }