{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from __future__ import division\n", "\n", "import numpy as np\n", "import numpy.linalg as la\n", "import matplotlib.pyplot as pt\n", "\n", "from time import time" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "# vector-vector\n", "nlist1 = np.linspace(1e3,1e5,1e3).astype(np.int32)\n", "ntests = 5\n", "\n", "time1 = []\n", "for n in nlist1:\n", " u = np.random.rand(n)\n", " v = np.random.rand(n)\n", "\n", " t_start = time()\n", " for test in range(ntests):\n", " u.dot(v) \n", " time1.append((time() - t_start)/ntests)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "# matrix-vector\n", "nlist2 = np.linspace(1e2, 6e3, 20).astype(np.int32)\n", "ntests = 5\n", "\n", "time2 = []\n", "\n", "for n in nlist2:\n", " print n,\n", " A = np.random.rand(n,n)\n", " u = np.random.rand(n)\n", "\n", " t_start = time()\n", " for test in range(ntests):\n", " np.dot(A, u) \n", " time2.append((time() - t_start)/ntests)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 410 721 1031 1342 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1652 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1963 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2273 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2584 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2894 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "3205 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "3515 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "3826 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "4136 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "4447 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "4757 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "5068 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "5378 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "5689 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "6000\n" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "# matrix-matrix\n", "nlist3 = np.linspace(1e2, 2e3, 20).astype(np.int32)\n", "\n", "time3 = []\n", "for n in nlist3:\n", " print n,\n", " A = np.random.rand(n,n)\n", " B = np.random.rand(n,n)\n", "\n", " t_start = time()\n", " np.dot(A, B) \n", " time3.append(time() - t_start)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 200 300 400 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "500 600 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "700 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "800 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "900 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1000 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1100 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1200 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1300 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1400 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1500 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1600 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1700 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1800 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1900 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2000\n" ] } ], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "# solve\n", "nlist4 = np.linspace(1e2, 2e3, 20).astype(np.int32)\n", "\n", "time4 = []\n", "for n in nlist4:\n", " print n,\n", " A = np.random.rand(n,n)\n", " b = np.random.rand(n)\n", "\n", " t_start = time()\n", " la.solve(A,b)\n", " time4.append(time() - t_start)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 200 300 400 500 600 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "700 800 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "900 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1000 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1100 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1200 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1300 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1400 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1500 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1600 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1700 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1800 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1900 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2000\n" ] } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "# inverse\n", "nlist5 = np.linspace(1e2, 2e3, 12).astype(np.int32)\n", "ntests = 1\n", "\n", "time5 = []\n", "for n in nlist5:\n", " print n,\n", " A = np.random.rand(n,n)\n", "\n", " t_start = time()\n", " la.inv(A)\n", " time5.append(time() - t_start)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 272 445 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "618 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "790 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "963 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1136 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1309 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1481 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1654 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1827 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "2000\n" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "pt.figure(figsize=(9, 5))\n", "\n", "pt.loglog(nlist1, np.array(time1), linewidth=3, label='dot product')\n", "pt.loglog(nlist2, np.array(time2), linewidth=3, label='matrix-vector product')\n", "pt.loglog(nlist3, np.array(time3), linewidth=3, label='matrix-matrix product')\n", "pt.loglog(nlist4, np.array(time4), linewidth=3, label='solve')\n", "pt.loglog(nlist5, np.array(time5), linewidth=3, label='inverse')\n", "pt.legend()\n", "pt.grid()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nMULcuHHH6y/prrk//yrmfwghxKhRo0R4eLjm9erVq8UjjzwihBBi1apVIjAwUNy4cUPk5uaKV155\nRSu/YdasWWLkyJE1Hv/Wst27dwt7e3uRlpYm9u7dK+zt7UVqamq19Y2JiRHt2rUTAQEB4ueff9aU\nHzx4ULi5uYmYmBhRWloqcnNzxY4dO0ROTo5QqVSiW7duYvr06SIvL08UFBRock5+++03TW5Kxc/g\nmWeeETk5OSIxMVH4+flp5ZzcmuNxq7Kck23btomSkhKxfPlyrZyTWz+TspyTqKgoUVxcLD744APh\n5eWllXPyySefiOLiYrF161atnJOzZ88KIyMjcfToUVFQUCAmTJig9X/y2muviYcfflikpaUJpVIp\n/v77b1FUVCTy8vKEvr6+OHfuXI3XIkTj5ZzUueWkf//+2NjYaJXt378fb29vPD09MTAwIDg4mO3b\nt2Nqasp//vMfVq1aRUhISIMEU5LUmuWezOVwn8NcmHGB0sKbrY364D7LnZ5He2J9v7X2Dikp8NBD\nMG8elH3zs7SETZvgm2/gZl+/JDWUit+qK86pMWbMGDw8PHBxcSEgIIA+ffpovTcsLIzTp09jY2Oj\nybeoyY0bNxg7diyfffYZTk5O3H///YSFhWlyO6rSu3dvzM3NSU9PZ9CgQZrye+65h9WrV/P6669j\na2uLj48P395sYdTT0+OXX34hLi4Od3d33Nzc+P777wF4+OGH6dy5M+3atcPhZpfop59+ipmZGR06\ndKB///688MILjBs3rtLnUdPnN3ToUL777jtsbW3ZsGED27Ztqzb1oWPHjqxfv16T+/Pf//6XX375\nhTZt2mBoaMi2bduIjIzEzs6O77//nmeffVZr37fffptHHnkEX19f+vfvr1W/ZcuW0aVLF3r16oWd\nnR2zZ89GCIGpqSlz586lX79+2NjYsH///hqvqTHc1vT1iYmJDBkyRDMU64cffuD//u//WL16NQDr\n168nJiaGTz/9tPYKKBSMHTsWT09PQD10KTAwUNPXXzZDp3wtX7fm1w/c/wDJ7yfzU/hPoIJAAgGI\n9YrF/S13nnj5icr7b9lC9LhxkJeH+mgQHRAAc+cSFBzcrK5Pvq76tZy+/u4TERFBXFwc69ata+qq\nNIiyezg6OprIyEhAPRw6IiKiXvd2gwQnW7duZefOnbcdnMhfTuluVnChgDOjz3Dj7/KRNQpDBR7z\n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\nMC6+8IcAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }