{ "cells": [ { "cell_type": "markdown", "id": "b7e36cf1", "metadata": {}, "source": [ "# Performance study" ] }, { "cell_type": "markdown", "id": "3f0951c3", "metadata": {}, "source": [ "We evaluate the performance of the different implementations of the simulator that are proposed in the package." ] }, { "cell_type": "markdown", "id": "fd0d9ec2", "metadata": {}, "source": [ "## Preparation" ] }, { "cell_type": "markdown", "id": "2fc49ace", "metadata": {}, "source": [ "We load a few packages." ] }, { "cell_type": "code", "execution_count": 1, "id": "54a7c5b2", "metadata": {}, "outputs": [], "source": [ "from kleinberg_grid_simulator import parallelize, compute_edt\n", "from collections import defaultdict\n", "from matplotlib import pyplot as plt\n", "from tqdm import tqdm" ] }, { "cell_type": "markdown", "id": "6aa755f6", "metadata": {}, "source": [ "We make a test function with a dry run to trigger JiT compilation." ] }, { "cell_type": "code", "execution_count": 2, "id": "e04d2dbe", "metadata": {}, "outputs": [], "source": [ "def test(**kwargs):\n", " compute_edt(**{**kwargs, 'n_runs': 1})\n", " return compute_edt(**kwargs)" ] }, { "cell_type": "markdown", "id": "4d0d5153", "metadata": {}, "source": [ "Evaluation function:" ] }, { "cell_type": "code", "execution_count": 3, "id": "f8f1e2ee", "metadata": {}, "outputs": [], "source": [ "def performance_study(r=2, min_n=7, max_n=20, with_pure=False, with_para=True):\n", " numb = [{'n': 2**i, 'r': r, 'julia': False} for i in range(min_n, max_n)]\n", " juli = [{'n': 2**i, 'r': r} for i in range(min_n, max_n)]\n", "\n", " job_list = numb+juli\n", " if with_pure:\n", " pure = [{'n': 2**i, 'r': r, 'julia': False, 'numba': False} for i in range(min_n, max_n)]\n", " job_list = pure + job_list\n", " res = parallelize(job_list, function=test, n_jobs=29)\n", " if with_para:\n", " para = [{'n': 2**i, 'r': r, 'julia': False, 'parallel': True} for i in range(min_n, max_n)]\n", " res += [test(**kwargs) for kwargs in tqdm(para)]\n", " return res" ] }, { "cell_type": "markdown", "id": "3cd88283", "metadata": {}, "source": [ "Display function:" ] }, { "cell_type": "code", "execution_count": 4, "id": "ea26ab34", "metadata": {}, "outputs": [], "source": [ "def performance_display(res, vf=None, ylabel='Time per step', f=None, flabel=\"fit\"):\n", " values = defaultdict(dict)\n", " if vf is None:\n", " vf = lambda x: x.process_time/x.edt/x.n_runs\n", " for re in res:\n", " values[(f'r={re.r}, {\"Julia\" if re.julia else \"Python\"}'\n", " f'{\" Numba\" if (not re.julia) and re.numba else \"\"}'\n", " f'{\" //\" if re.parallel else \"\"}')][re.n] = vf(re)\n", "\n", " for r, v in values.items():\n", " n_s = sorted([n for n in v])\n", " t_s = [v[n] for n in n_s]\n", " plt.loglog(n_s, t_s, label=r)\n", " plt.xlabel('$n$')\n", " plt.ylabel(ylabel)\n", " if f is not None:\n", " plt.loglog(n_s, [f(x) for x in n_s], label=flabel)\n", " plt.legend()\n", " plt.show()\n" ] }, { "cell_type": "markdown", "id": "20f92818", "metadata": {}, "source": [ "## Case $r=2$" ] }, { "cell_type": "markdown", "id": "e0e3a2ef", "metadata": {}, "source": [ "### Pure Python performance" ] }, { "cell_type": "code", "execution_count": 5, "id": "a6c8fbf7", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████████████████████████████████████████████████████████████████████████████| 54/54 [00:00<00:00, 130.20it/s]\n", "100%|███████████████████████████████████████████████████████████████████████████████████| 18/18 [00:40<00:00, 2.25s/it]\n" ] } ], "source": [ "res = performance_study(max_n=25, with_pure=True)" ] }, { "cell_type": "code", "execution_count": 6, "id": "5ec2eb8b", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "performance_display(res)" ] }, { "cell_type": "markdown", "id": "15ed13ad", "metadata": {}, "source": [ "We see that the pure Python implemantation is much slower than the other options, so we will discard it from now on.\n", "\n", "Note that all implementations yield the same results:" ] }, { "cell_type": "code", "execution_count": 7, "id": "9d6cacee", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "performance_display(res, vf=lambda x: x.edt, ylabel='EDT')" ] }, { "cell_type": "markdown", "id": "dda9c392", "metadata": {}, "source": [ "### Numba vs Julia" ] }, { "cell_type": "markdown", "id": "47f2c174", "metadata": {}, "source": [ "If we focus on fast implementations we can increase the scope a bit." ] }, { "cell_type": "code", "execution_count": 8, "id": "bc7158bd", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|█████████████████████████████████████████████████████████████████████████████████| 108/108 [00:04<00:00, 24.11it/s]\n", "100%|███████████████████████████████████████████████████████████████████████████████████| 54/54 [02:03<00:00, 2.29s/it]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "res = performance_study(max_n=61)\n", "performance_display(res)" ] }, { "cell_type": "markdown", "id": "9f53a388", "metadata": {}, "source": [ "As always, we can check the consistency of the results." ] }, { "cell_type": "code", "execution_count": 9, "id": "cf9e1f7c", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "performance_display(res, vf=lambda x: x.edt, ylabel='EDT')" ] }, { "cell_type": "markdown", "id": "2dad7b6b", "metadata": {}, "source": [ "### Julia vs the Universe" ] }, { "cell_type": "markdown", "id": "df48ec8e", "metadata": {}, "source": [ "The first version of the simulator, from [Kleinberg's Grid Reloaded](https://inria.hal.science/hal-01417096/file/OPODIS2016-camera-ready-paper90.pdf), could go up to $n=10^{20}$.\n", "\n", "The second version of the simulator, from [Kleinberg's Grid Unchained](https://inria.hal.science/hal-02052607/document), could go up to $n=10^{41}$.\n", "\n", "The current version uses new fixed-length integers up to 1024 bits. What does that mean about performance?" ] }, { "cell_type": "code", "execution_count": 10, "id": "f69d39ef", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████████████████████████████████████████████████████████████████████████████| 73/73 [00:00<00:00, 523.63it/s]\n" ] } ], "source": [ "res = parallelize(function=test, values=[{'n': 2**(4*i)} for i in range(2, 75)])" ] }, { "cell_type": "code", "execution_count": 11, "id": "23010f34", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "performance_display(res)" ] }, { "cell_type": "markdown", "id": "13942dbe", "metadata": {}, "source": [ "In other words: it's much faster!" ] }, { "cell_type": "markdown", "id": "2699bf62", "metadata": {}, "source": [ "There is however one issue that needs to be mentionned:" ] }, { "cell_type": "code", "execution_count": 12, "id": "1874c6fe", "metadata": {}, "outputs": [], "source": [ "from juliacall import Main as jl\n", "f=lambda e: int(2*jl.log(e)**2-20)" ] }, { "cell_type": "code", "execution_count": 13, "id": "9ae7fcad", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAG1CAYAAADwRl5QAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABWUElEQVR4nO3dd3yV9d3/8dfJJmSRkASyIGzCCgSQLaCCYFGwWmsVUdGWirUWva1W67qr3PXnwNZg1bbuKk7cWlQUBBUIEEaYEkhCEgLZg8xz/f64IBASICHjOuP9fDzywHOdk3M+314pefOdNsMwDERERERckIfVBYiIiIi0FwUdERERcVkKOiIiIuKyFHRERETEZSnoiIiIiMtS0BERERGXpaAjIiIiLktBR0RERFyWl9UFWM1ut5OdnU1gYCA2m83qckRERKQZDMOgtLSUqKgoPDxO32/j9kEnOzub2NhYq8sQERGRc5CZmUlMTMxpn3f7oBMYGAiY/0MFBQVZXI2IiIg0R0lJCbGxsfW/x0/H7YPO8eGqoKAgBR0REREnc7ZpJ5qMLCIiIi5LQUdERERcltsPXTWH3W6nurra6jLkHHh7e+Pp6Wl1GSIiYhEFnbOorq4mPT0du91udSlyjkJCQujWrZu2DxARcUMKOmdgGAY5OTl4enoSGxt7xnX64ngMw6CiooK8vDwAunfvbnFFIiLS0RR0zqC2tpaKigqioqLw9/e3uhw5B506dQIgLy+PiIgIDWOJiLgZdVGcQV1dHQA+Pj4WVyKtcTyk1tTUWFyJiIh0NAWdZtDcDuem+yci4r4UdERERMRluUTQ8fLyIjExkcTERG666SaryxEREREH4RJBJyQkhM2bN7N582b++c9/Wl2OtFLPnj1ZsmRJ/WObzcby5cstq0dERJyXSwQdaXupqalcffXVxMbG0qlTJwYOHMjTTz/d4vd58MEHSUxMbFUtOTk5zJgxo1XvISIi7snyoLNq1SpmzZpFVFTUaf/lvnTpUuLj4/Hz8yMpKYnVq1c3eL6kpISkpCQmTJjAt99+20GVO49z2dU5JSWF8PBwXnvtNbZv3869997LPffcwzPPPNMOFZ5Zt27d8PX17fDPFRGRlqusqWNTRiGvfL+fO99OZebTq6msqbOsHsv30SkvL2fYsGHccMMN/PznP2/0/LJly7j99ttZunQp48eP57nnnmPGjBmkpaURFxcHwP79+4mKimLbtm1ccsklbN26tV1OIjcMg6MW3axO3p7NXj00efJkBg8ejI+PD6+88gqDBg1qcQC88cYbGzzu1asX33//Pe+99x633npri97r1NoSExMbDE3Nnj2bkJAQXnrppSa/x2az8f777zN79mwA/vjHP/L++++TlZVFt27duOaaa7j//vvx9vY+57pERKTlKqpr2ZlbSlp2CdsOFrMlq5jdh0qptRsNXrcrt5RhsSGW1Gh50JkxY8YZhyWefPJJ5s+fXz/JeMmSJXzxxRc8++yzLF68GICoqCgABg8eTEJCArt372bkyJFNvl9VVRVVVVX1j0tKSppd69GaOhLu/6LZr29LaQ9Px9+n+bfr5Zdf5re//S1r1qzBMMwfuBkzZjTqDTtVWVnZaZ8rLi4mNDS02TW0l8DAQF566SWioqLYunUrN998M4GBgdx1111WlyYi4pIMwyCvtIrt2cXsyDGDzY6cEtLzyzGMxq8P6+zDkJhghkYHMyQmhPjwzh1f9DGWB50zqa6uJiUlhbvvvrvB9WnTprF27VoACgsL8ff3x9fXl6ysLNLS0ujVq9dp33Px4sU89NBD7Vq3I+jTpw+PPfZYg2v//Oc/OXr06Dm93/fff89bb73FJ5980hbltcp9991X/989e/bkjjvuYNmyZQo6IiJtwG43yCioYFt2MduzS9ieXUJadjFHypqeBhEe6MvA7kEMigpiWIwZbKKC/RxmDzOHDjpHjhyhrq6OyMjIBtcjIyPJzc0FYMeOHfzmN7/Bw8MDm83G008/fcZeh3vuuYdFixbVPy4pKSE2NrZZ9XTy9iTt4enn0JLW6+TdsqMLmurRio6OPqfP3r59O5dddhn3338/F1100Tm9R1t65513WLJkCXv37qWsrIza2tp2GaoUEXF1drvB/vxyth4sZtvBYrYeLGb7wRJKq2obvdbDBr3CAxgUFcTA7kEkdDf/DA907DmUDh10jjs1FRqGUX9t3LhxbN26tdnv5evre84TW202W4uGj6zUuXPjbsJzGbpKS0tj6tSp3HzzzQ16Us6Vh4dH/VDacS05muGHH37gl7/8JQ899BDTp08nODiYN998kyeeeKLVtYmIuDK73eBAQQVbDxazNauILVnFpGU3HWp8vDwY0C2QQVFBJEQFm+GmWxCdfJzvvECH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chsVdFyUj48PSUlJjWa+r1ixgnHjxllUVeu5artO5g5tBPdop9qoNjoLV26jhq6cWFlZGXv37q1/nJ6ezubNmwkNDSUuLo5FixYxd+5cRo4cydixY3n++efJyMhgwYIFFlZ9dq7arpO5QxvBPdqpNqqNzsId2tikjl/oJW1l5cqVBtDoa968efWvSU5ONnr06GH4+PgYI0aMML799lvrCm4mV23XydyhjYbhHu1UG01qo+NzhzY2xWYYTrqnuIiIiMhZaI6OiIiIuCwFHREREXFZCjoiIiLishR0RERExGUp6IiIiIjLUtARERERl6WgIyIiIi5LQUdERERcloKOiIiIuCwFHREREXFZCjoiIiLishR0RMTl7N27F5vNxieffMIFF1yAv78//fv358cff7S6NBHpYAo6IuJyUlNTsdlsPPHEE9x3332kpqYSFxfH3XffbXVpItLBFHRExOWkpqYSHBzMsmXLmDJlCn379mX27NkcPnzY6tJEpIMp6IiIy0lNTWXWrFmEh4fXX9u3bx99+vSxsCoRsYKCjoi4nNTUVMaOHdvg2qZNm0hMTLSmIBGxjIKOiLiU4uJiDhw4wPDhwxtc37x5s4KOiBtS0BERl5KamoqnpyfDhg2rv3bgwAEKCwsVdETckIKOiLiU1NRUBgwYQKdOneqvbdq0iZCQEHr27GldYSJiCZthGIbVRYiIiIi0B/XoiIiIiMtS0BERERGXpaAjIiIiLktBR0RERFyWgo6IiIi4LAUdERERcVkKOiIiIuKyFHRERETEZSnoiIiIiMtS0BERERGXpaAjIiIiLktBR0RERFzW/wf4CdtAupP5ngAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "performance_display(res, vf=lambda x: x.edt, ylabel='EDT', f=f, flabel='log2')" ] }, { "cell_type": "markdown", "id": "26cf9592", "metadata": {}, "source": [ "The curve above means that the EDT predicted by the simulator does not exactly behave in $\\log^2(n)$ as it should.\n", "\n", "We believe precision of the random generator is to blame here: it can only give $2^{64}$ distinct values, which is too low with respect to size involved above. In particular, a lot of ranges that are needed for greedy routing, e.g. during the final approach, are never drawed.\n", "\n", "To yield better precision, the random generators should be reworked altogether with bigger float precision. This is not in the current roadmap." ] }, { "cell_type": "markdown", "id": "fc0e177d", "metadata": {}, "source": [ "## Case $n=1000000$" ] }, { "cell_type": "markdown", "id": "5b20fa9d", "metadata": {}, "source": [ "A transverse study that plays with $r$." ] }, { "cell_type": "code", "execution_count": 14, "id": "92952677", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|███████████████████████████████████████████████████████████████████████████████████| 62/62 [00:09<00:00, 6.63it/s]\n" ] } ], "source": [ "n=1000000\n", "rr = [r/10 for r in range(0, 31)]\n", "numb = [{'n': n, 'r': r, 'julia': False} for r in rr]\n", "juli = [{'n': n, 'r': r} for r in rr]\n", "res = parallelize(numb+juli, function=test, n_jobs=29)" ] }, { "cell_type": "code", "execution_count": 15, "id": "3e6f303f", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAGwCAYAAAC0HlECAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACE70lEQVR4nO3dd3gUVffA8e/upvdGEkICoYfQCR1pIiD+ELABogiCCooKYnlt74sdKzYQC4gFFAUEO0U60iGB0HsCISGE9J7szu+PSRZCErKb7GZTzud59slk987MyTiSk3vvnKtRFEVBCCGEEELckNbWAQghhBBC1AaSNAkhhBBCmECSJiGEEEIIE0jSJIQQQghhAkmahBBCCCFMIEmTEEIIIYQJJGkSQgghhDCBna0DqOkMBgMXL17E3d0djUZj63CEEEIIYQJFUcjIyCAoKAit1jJ9RJI0VeDixYuEhITYOgwhhBBCVML58+cJDg62yLEkaaqAu7s7oF50Dw8PG0cjhBBCCFOkp6cTEhJi/D1uCZI0VaB4SM7Dw0OSJiGEEKKWseTUGpkILoQQQghhAkmahBBCCCFMIEmTEEIIIYQJZE6TEELUEXq9noKCAluHIUS1sLe3R6fTVes5JWkSQohaTlEUEhISSE1NtXUoQlQrLy8vAgMDq62OoiRNQghRyxUnTP7+/ri4uEghXlHnKYpCdnY2iYmJADRs2LBazitJkxBC1GJ6vd6YMPn6+to6HCGqjbOzMwCJiYn4+/tXy1CdTAQXQoharHgOk4uLi40jEaL6Fd/31TWXT5ImIYSoA2RITtRH1X3fS9IkhBBCCGECSZqEEEIIIUwgSZMQQgghrG7AgAHMmDHD1mFUiSRNVmYwKOQXGmwdhhBC1AvTp08nIiICR0dHOnXqVGab6Oho+vfvj7OzM40aNeK1115DUZQSbTZv3kxERAROTk40a9aMzz//vNRxVqxYQXh4OI6OjoSHh7Ny5cpSbT777DOaNm2Kk5MTERERbN26tcTniqLwyiuvEBQUhLOzMwMGDODw4cMl2uTl5fHEE0/g5+eHq6srI0aM4MKFC2Zdl02bNqHRaGjXrh16vb7EZ15eXnzzzTdmHa++kqTJyl5adYiw//7NUz9FcSox09bhCCFEnaYoCpMmTWLMmDFlfp6ens7gwYMJCgpiz549fPrpp7z//vvMmTPH2Obs2bPcdttt9O3bl8jISF588UWefPJJVqxYYWyzY8cOxowZw/jx4zlw4ADjx49n9OjR7Nq1y9jmp59+YsaMGbz00ktERkbSt29fhg0bRmxsrLHNu+++y5w5c5g7dy579uwhMDCQwYMHk5GRYWwzY8YMVq5cydKlS9m2bRuZmZkMHz68VPJjitOnT/Pdd9+ZvZ8ooogbSktLUwAlLS3N7H0vpmYrzV74U2nynz+UJv/5Qwl9/g/lsSX7lKPx5h9LCCHKkpOToxw5ckTJyckxvmcwGJSsvAKbvAwGg8mx9+/fX3niiSeUZ599VvH29lYCAgKUWbNmWeS6zJo1S+nYsWOp9z/77DPF09NTyc3NNb43e/ZsJSgoyBj7c889p4SFhZXYb8qUKUrPnj2N348ePVq59dZbS7QZOnSoMnbsWOP33bt3V6ZOnVqiTVhYmPL8888riqL+dwoMDFTefvtt4+e5ubmKp6en8vnnnyuKoiipqamKvb29snTpUmObuLg4RavVKqtXrzbpWiiKomzcuFEBlGeffVYJCQkpcb94enoqixYtUhRFUc6ePasASmRkpPHzlJQUBVA2btxY4lirV69WOnXqpDg5OSkDBw5ULl26pPz1119KWFiY4u7urowdO1bJysoyHqd///7KtGnTlGnTpimenp6Kj4+P8tJLL5W4Z77//nslIiJCcXNzUwICApR7771XuXTpUrk/V1n3f7Gq/P4ujxS3tKKf9pxHb1BoG+RBIy9n1h65xJ8H4/nzYDxD2wbwxM0tadfI09ZhCiHqmJwCPeH/W2OTcx95bSguDqb/avn222+ZOXMmu3btYseOHUycOJE+ffowePBgAIYNG1ZqSOt6mZmm9+Lv2LGD/v374+joaHxv6NChvPDCC5w7d46mTZuyY8cOhgwZUmK/oUOHsnDhQgoKCrC3t2fHjh089dRTpdp89NFHAOTn57Nv3z6ef/75Em2GDBnC9u3bAbVHKyEhocS5HB0d6d+/P9u3b2fKlCns27ePgoKCEm2CgoJo164d27dvZ+jQoSb/7KD2Wi1evJi5c+fyzDPPmLXv9V555RXmzp2Li4sLo0ePZvTo0Tg6OvLDDz+QmZnJHXfcwaeffsp//vMf4z7ffvstkydPZteuXezdu5dHHnmEJk2a8PDDDwPqdXv99ddp3bo1iYmJPPXUU0ycOJG//vqrSrFaiiRNVlKoN/DTnvMAPNKvGSM7NeJofDpzN57ir+h41hy+xJrDl7g5zJ8nbm5B58beNo5YCCGqX4cOHZg1axYALVu2ZO7cuaxfv96YNC1YsICcnByLnS8hIYHQ0NAS7wUEBBg/a9q0KQkJCcb3rm1TWFhIUlISDRs2LLdNQkICAElJSej1+hu2Kf5aVpuYmBhjGwcHB7y9vcs9jjlcXFyYNWsWL774Ig8//DCenpX/w/2NN96gT58+AEyePJkXXniB06dP06xZMwDuvvtuNm7cWCJpCgkJ4cMPP0Sj0dC6dWuio6P58MMPjUnTpEmTjG2bNWvGJ598Qvfu3cnMzMTNza3SsVqKJE1WsvH4ZeLTcvFxdeDWdoEAtGnowbxxXTiVmMHcDaf47cBFNhxLZMOxRPq29OOJm1vSvamPjSMXQtR2zvY6jrxmXg+EJc9tjg4dOpT4vmHDhsb1xAAaNWpkkbiudX1BRKVoEvi171e2zfXvWarN9UxpU57JkyczZ84c3nnnHd56661KHQNK/rcLCAjAxcXFmDAVv7d79+4S+/Ts2bNE3L169eKDDz5Ar9ej0+mIjIzklVdeISoqiuTkZAwG9UGq2NhYwsPDKx2rpchEcCtZskv9K+GeiGAc7Ur+I9LC352PxnZm/dMDuCciGDuthq0nkxj9xQ7GfrmD7aeSSj3JIYQQptJoNLg42NnkZe4vcnt7+1KxF/+iBHV4zs3N7YYvcwQGBpbqoSlO0op7fMprY2dnZ1zfr7w2xcfw8/NDp9PdsE1goPoHdUVt8vPzSUlJKbeNuezs7HjjjTf4+OOPuXjxYonPtFo1Lbj2d1B5S5Rc+99Oo9FU+N+yIllZWQwZMgQ3NzcWL17Mnj17jE8k5ufnm3wca5KkyQrOJ2ez+cRlAO7t3rjcdk39XHnvno5sfGYA43o0xl6nYeeZZMYt2MXdn+9g0/FESZ6EEPXaggULiIqKuuHLHL169WLLli0lfgmvXbuWoKAg47Bdr169WLduXYn91q5dS9euXY2JQXltevfuDYCDgwMRERGl2qxbt87YpmnTpgQGBpZok5+fz+bNm41tIiIisLe3L9EmPj6eQ4cOGdtUxj333EPbtm159dVXS7zfoEED4zmKmXuNb2Tnzp2lvm/ZsiU6nY5jx46RlJTE22+/Td++fQkLCyvR61gT1IvhubNnzzJp0iQuXbqETqdj586duLq6Wu18S/fEoihwUws/Qv0qPk+Ijwtv3dGexwe24IvNp/lxz3n2xaQwcdEeOgR78sTNLbmljb+sLSWEqHfMHZ47deoUmZmZJCQkkJOTY/yFHx4ejoODA+PGjePVV19l4sSJvPjii5w8eZK33nqL//3vf8Z/Y6dOncrcuXOZOXMmDz/8MDt27GDhwoX8+OOPxvNMnz6dfv368c477zBy5Eh+/fVX/vnnH7Zt22ZsM3PmTMaPH0/Xrl3p1asXX375JbGxsUydOhVQe2JmzJjBW2+9RcuWLWnZsiVvvfUWLi4ujBs3DgBPT08mT57M008/ja+vLz4+PjzzzDO0b9+eW265pSqXlrfffrvURHJnZ2d69uzJ22+/TWhoKElJSbz88stVOs+1zp8/z8yZM5kyZQr79+/n008/5YMPPgCgcePGODg48OmnnzJ16lQOHTrE66+/brFzW4TFnsOrwfr166ds2bJFURRFuXLlilJQUGDyvuY+sphfqFciXl+nNPnPH8pfBy9WKt5LaTnK678fVlq//JexXMGYL7YrSRm5Fe8shKhXbvTIdU3Xv39/Zfr06SXeGzlypDJhwoQqHRMo9Tp79qyxzcGDB5W+ffsqjo6OSmBgoPLKK6+UKpWwadMmpXPnzoqDg4MSGhqqzJ8/v9S5li1bprRu3Vqxt7dXwsLClBUrVpRqM2/ePKVJkyaKg4OD0qVLF2Xz5s0lPjcYDMqsWbOUwMBAxdHRUenXr58SHR1dok1OTo7y+OOPKz4+Poqzs7MyfPhwJTY2ttTPfaPrVlwmICUlpcT7Q4YMUQBjyQFFUZQjR44oPXv2VJydnZVOnTopa9euLbPkwLXHWrRokeLp6Vni2NeXfejfv7/y2GOPKVOnTlU8PDwUb29v5fnnny9x7X/44QclNDRUcXR0VHr16qX89ttvpUogXH9tqrPkgEZR6vb4z+HDh5k+fTr//PNPpfZPT0/H09OTtLQ0PDw8Kmz/V3Q8jy3ZTwN3R7Y/fzP2usqPgCZl5rFg61m+23GO7Hw9jbyc+eqBroQHVRyHEKJ+yM3N5ezZs8aq06J+Cg0N5ZVXXmHixIm2DqVa3ej+N/f3tylsPqdpy5Yt3H777QQFBaHRaFi1alWpNhWVob+RkydP4ubmxogRI+jSpUuVnhQwRfEE8DFdQ6qUMAH4uTny/LAwfp3Wh1BfF+JSc7hr/nb+jo6veGchhBD1wrFjx3B3d+eBBx6wdSh1ns2TpqysLDp27MjcuXPL/NyUMvQRERG0a9eu1OvixYsUFBSwdetW5s2bx44dO1i3bl2piXmWcjYpi39PXUGjgbHdQyx23JYB7qya1oe+Lf3IKdDz6JL9zFl7HIOhTncSCiGEMEFYWBjR0dHGJ9+E9dh8IviwYcMYNmxYuZ/PmTOHyZMn89BDDwHw0UcfsWbNGubPn8/s2bMB2LdvX7n7BwcH061bN0JC1CTmtttuIyoqylg47Xp5eXnk5eUZv09PTzf5Z/lxt5rIDWjVgGBvF5P3M4WXiwOLJnZj9t/HWLjtLJ9sOMWxhAzmjOmEm6PN/zMKIYQQdV6NTkuLy9BfX87+2jL0FenWrRuXLl0iJSUFg8HAli1baNOmTbntZ8+ejaenp/FVnGxVJLdAz7K9agXw+3o0MWkfc9nptPx3eDjv39MRB52WtUcucddn24m9km2V8wkhhBDiqhqdNJlShr4idnZ2vPXWW/Tr148OHTrQsmVLhg8fXm77F154gbS0NOPr/PnzJp1nzeEEUrILCPJ0YmCYv0n7VNbdEcEsndKTBu6OHL+UwYh529h+Ksmq5xRCCCHqu1oxrlOZEvPXqmgI8FqOjo4lFnI01ZKd6tDcmG6N0WmtX0+pS2Nvfn/8JqZ8v5cDF9IY//Vu/jc8nAd6NZF6TkIIIYQV1OieJlPK0NcEJy5lsPtcMjqthjHdLDcBvCKBnk78NKUXd3RuhN6gMOu3wzy/Ipq8Qn21xSCEEELUFzU6aTKlDH1N8MMutZdpUJg/gZ7VWyfFyV7HnNEdefG2MLQa+GnvecZ9tYvLGXkV7yyEEEIIk9k8acrMzCyxftDZs2eJiooylhSYOXMmCxYs4Ouvv+bo0aM89dRTJcrQ21pOvp4V+y8AcF9P60wAr4hGo+GRfs35emI33J3s2BeTwoi524i+kGaTeIQQQtR+EydOZNSoUcbvBwwYwIwZM2wWT01g86Rp7969dO7cmc6dOwNqktS5c2f+97//ATBmzBg++ugjXnvtNTp16sSWLVv466+/aNLENgnK9X4/eJGM3EJCfJzp28LPprEMaO3Pqml9aNbAlfi0XO7+fDu/RsXZNCYhhKhO06dPJyIiAkdHRzp16lRmm+joaPr374+zszONGjXitddeK7U4+ubNm4mIiMDJyYlmzZrx+eeflzrOihUrCA8Px9HRkfDwcFauXFmqTUXFmRVF4ZVXXiEoKAhnZ2cGDBjA4cOHS7TJy8vjiSeewM/PD1dXV0aMGMGFCxfMui6bNm1Co9GQmppq1n7X+uWXX2reWnDVzOZJ04ABA1AUpdTrm2++MbZ57LHHOHfuHHl5eezbt49+/frZLuDrFA/N3du9MdpqmABekeYN3Fg1rQ8DWjcgr9DA9KVRvLP6GHophCmEqAcURWHSpEmMGTOmzM/T09MZPHgwQUFB7Nmzh08//ZT333+fOXPmGNucPXuW2267jb59+xIZGcmLL77Ik08+yYoVK4xtduzYwZgxYxg/fjwHDhxg/PjxjB49ml27dhnbmFKc+d1332XOnDnMnTuXPXv2EBgYyODBg8nIyDC2mTFjBitXrmTp0qVs27aNzMxMhg8fjl5fvfNXfXx8cHd3r9Zz1jgWW8WujrrRgn+H4lKVJv/5Q2nx4p9KYnoZi+kW5ivKhrcU5YsBivLjOEVZ85Ki7FmoKKc3KkpKjKLoC60Wd6HeoLz11xHjgr8Tvt6lrDucoCRn5lntnEKI6lfbF+x94oknlGeffVbx9vZWAgIClFmzZlnk2NcvFlvss88+Uzw9PZXc3Kv/Zs+ePVsJCgoyLhz73HPPKWFhYSX2mzJlitKzZ0/j96NHj1ZuvfXWEm2GDh2qjB071vh99+7dlalTp5ZoExYWpjz//POKoqiL9QYGBipvv/228fPc3FzF09NT+fzzzxVFUZTU1FTF3t5eWbp0qbFNXFycotVqldWrV5t0LRSl9CK7ZV2fDz/8UGnSpInx+wkTJigjR440fn/9Asvff/+9EhERobi5uSkBAQHKvffeq1y6dMnkmCyhuhfsrRUlB2qq4l6moW0DaeB+XZmC1POwfBJc2K1+f3F/6QPoHMCrCfg0u+7VFLwag86+0rHptBpeGNaGNoEe/GfFQTYdv8ym45cBaN7Ala5NfIgI9aZrE2+a+rlKmQIh6hJFgQIbFb21dwEz/j359ttvmTlzJrt27WLHjh1MnDiRPn36GFdtGDZsWIXrjWZmZpp8vh07dtC/f/8SpWWGDh3KCy+8wLlz52jatCk7duwoVVR56NChLFy4kIKCAuzt7dmxYwdPPfVUqTYfffQRcLU48/PPP1+izbXFmc+ePUtCQkKJczk6OtK/f3+2b9/OlClT2LdvHwUFBSXaBAUF0a5dO7Zv387QoUNN/tktLT8/n9dff53WrVuTmJjIU089xcSJE/nrr79sFpO1SdJUSZl5hayKVOcLjevRuOSHx/6EVY9Bbio4esCg/4FigOQzkHxW/ZpyDvT5cOWk+rqeRgdeIVcTKb9W4N8G/NuCq6/JcY7q3IiWAW58tz2GvTHJnL6cZXz9VFTB3MfVgS6NvelalES1D/bE0U5XySsjhLC5gmx4K8g2537xIji4mty8Q4cOzJo1C4CWLVsyd+5c1q9fb0yaFixYQE5OjsXCS0hIIDQ0tMR7xSVsEhISaNq0KQkJCWUWVS4sLCQpKYmGDRuW26a4RI4pxZmLv5bVJiYmxtjGwcEBb2/vco9jK5MmTTJuN2vWjE8++YTu3buTmZmJm5ubDSOzHkmaKunXqDiy8vU083OlV7OiJKYwD9bNgl3z1e+DusDdX6s9R9cz6CHtQlECdbZkQpV8Fgpz1MQq5Ryc3lByX1d/CAgH//CriVSD1uBY9k3aNsiTd+7uAEByVj77Y1LYG5PCvphkDlxIIzkrn3+OXuKfo5cAcNBpaR/sSdcm3kQUvXzdzC/4KYQQFenQoUOJ7xs2bEhiYqLx+0aNGln8nGUVTL7+/cq2uf49S7W5niltrC0yMpJXXnmFqKgokpOTMRgMAMTGxhIeHm7T2KxFkqZyzJs3j3nz5pU50U5RFOPQ3LgejdUbN/kMLHsQ4qPURr0eh0GzwM6h7BNodeDdRH0x8PoTQEZCUQJ1BpJPw+XjkHhETaKyEuFMIpzZVHI/ryYQ0LYokSpKqnxblIjBx9WBW8IDuCVc/csmr1DPobh09sUks/dcCvtiUriSlc++GHW7WDM/V7o08aZLYzWJaunvViMmvgshymDvovb42Orc5jS3LzkNQaPRGH/5guWH5wIDA8ssmAxXe3zKa2NnZ4evr+8N2xQfw5TizIGBgYDam9SwYcNy2+Tn55OSklKitykxMbFK9Qq1Wm2pJwYLCgpM3j8rK4shQ4YwZMgQFi9eTIMGDYiNjWXo0KHk5+dXOq6aTpKmckybNo1p06aRnp6Op6dnic8OXEjj8MV0HOy03NUlGA79Ar89CfkZ4OwNo+ZDa9OWbSmTRgMeDdVXaJ+Sn+VlXk2gjK+jkHkJUmPU1/FrxpO19uDXUk2ggjqpvV8NOxp7pRztdMbepEf6qQnhuSvZ7D2XzL6iHqlTiZmcScriTFIWy/epj7m6O9rRqbEXXRp706WJN51CvPB0rvwcLCGEBWk0Zg2R1WSWHp7r1asXL774Ivn5+Tg4qH9Qrl27lqCgIOOwXa9evfj9999L7Ld27Vq6du1qTPJ69erFunXrSsxrWrt2rTGRubY48x133GFss27dOkaOHAlA06ZNCQwMZN26dcayO/n5+WzevJl33nkHgIiICOzt7Vm3bh2jR48GID4+nkOHDvHuu+9W+jo0aNCAhISEEj1WxfUSTXHs2DGSkpJ4++23jQvb7927t9Lx1BaSNFXCkp3qWPMdbX3w3vAc7FukftC4F9y1ADyDrXdyRzcIjlBf18pKUpOnaxOpxKOQl371vUPL1bYaLfi1hkZdIKiz+jWgHdg5otFoaOrnSlM/V+7pqv6PkJKVz/7YFPUVk0rU+VQy8grZejKJrSfVhYI1GmjRwI2Iot6oLk28aOYnvVFCiKoxd3ju1KlTZGZmkpCQQE5OjjERCA8Px8HBgXHjxvHqq68yceJEXnzxRU6ePMlbb73F//73P2PyMHXqVObOncvMmTN5+OGH2bFjBwsXLuTHH380nmf69On069ePd955h5EjR/Lrr7/yzz//sG3bNmObmTNnMn78eLp27UqvXr348ssvSxRn1mg0zJgxg7feeouWLVvSsmVL3nrrLVxcXBg3bhwAnp6eTJ48maeffhpfX198fHx45plnaN++Pbfcckulr+uAAQO4fPky7777LnfffTerV6/m77//xsPDw6T9GzdujIODA59++ilTp07l0KFD9aKGkyRNZkrLKeD3gxdproljVuKrcPw4oIG+T8OAF0Bno0vq6gdN+6qvYoqizptKPAoJB+FiJMTth4yLcPmo+opaorbV2qtDe426qL1RjbqoiZXODm9XBwa1CWBQG7W7uFBv4FhCBpGx6hDe/thUYpOzOZmYycnETJbuUSeYezrb07m4N6qxN50ae+HmKLecEMJ6HnroITZv3mz8vrgH5+zZs4SGhuLp6cm6deuYNm0aXbt2xdvbm5kzZzJz5kzjPk2bNuWvv/7iqaeeYt68eQQFBfHJJ59w1113Gdv07t2bpUuX8vLLL/Pf//6X5s2b89NPP9GjRw9jmzFjxnDlyhVee+014uPjadeuXanizM89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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "times = defaultdict(list)\n", "for re in res:\n", " label = f'n={n}, '\n", " label += \"Julia\" if re.julia else \"Numba\"\n", " times[label].append(re.process_time/re.edt/re.n_runs)\n", " \n", "for r, v in times.items():\n", " plt.semilogy(rr, v, label=r)\n", " plt.xlabel('$r$')\n", " plt.ylabel('Time per step')\n", "plt.xlim([0, 3])\n", "plt.legend()\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" } }, "nbformat": 4, "nbformat_minor": 5 }