{ "cells": [ { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "used_page = np.array([92.43, 90.9, 88.82, 86.04, 82.66, 78.85, 73.23]) # Taux de page utilisé\n", "miss_rate = np.array([23.86, 8.66, 4.86, 2.55, 1.38, 0.8, 0.5]) # Taux de miss\n", "\n", "reuse_distance = np.array([11, 12, 13, 14, 15, 16, 17]) # Reuse distance" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGoCAYAAABL+58oAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzs3Xl8FdX9//HXSRMEBdkMSAgICkrIHsJi1aLlS0BQURYVQbFC6delRWlErNKKqICILNpKEcUACvVXRKggggGUskcICCqrfCEJBUTW3CAEP78/CLfEBBNyEwjD+/l43Me9s5yZc4a5+s7cM3OcmSEiIiLiJUHnuwIiIiIipU0BR0RERDxHAUdEREQ8RwFHREREPEcBR0RERDxHAUdEREQ8p8iA45x72zm3xzm3/rR5NZxz851zm/Peq5+27Gnn3Bbn3EbnXLuyqriIiIjImRTnCs47QPufzBsIpJpZYyA1bxrnXFPgXiAyr8zfnHO/KLXaioiIiBRDkQHHzD4Hvv/J7E5ASt7nFODO0+ZPM7MfzOxbYAvQopTqKiIiIlIswSUsV9vMdgGY2S7nXK28+XWB5aetl5E3rwDnXF+gL8Bll13WrEmTJiWsioiIiFwsvvjii+/MLLSo9UoacM7EFTKv0LEgzGw8MB4gMTHR0tLSSrkqIiIi4jXOuf8rznolvYtqt3OuTt6O6gB78uZnAPVOWy8cyCrhPkRERERKpKQBZxbQK+9zL2DmafPvdc5d4pxrCDQGVgZWRREREZGzU+RPVM65qcDNwBXOuQzgL8Aw4H3nXG9gB9ANwMw2OOfeB74CcoFHzexEGdVdREREpFBFBhwz636GRW3OsP6LwIuBVEpERLzv+PHjZGRkcPTo0fNdFSmHKlasSHh4OCEhISUqX9qdjEVERIolIyODKlWq0KBBA5wr7B4VuViZGfv27SMjI4OGDRuWaBsaqkFERM6Lo0ePUrNmTYUbKcA5R82aNQO6uqeAIyIi543CjZxJoOeGAo6IiIh4jgKOiIiInDc7d+7k3XffLfXtKuCIiEi54Fzpvoqyb98+4uLiiIuL48orr6Ru3br+6WPHjpVpW3Nzc6lWrVqZ7qOsfPDBB3zzzTf+6WeeeYaFCxcCcOONN5Keng5Au3btOHz48M9u6/vvvyc5OZk2bQq9MTsguotKREQuSjVr1vT/z/i5556jcuXKJCcnn+dalX8ffPABQUFBnBpD8sUXC38yzCeffFLktmrUqME//vGPUq3fKbqCIyIi8hO33347zZo1IzIykgkTJgAFr7pMmzaNPn36ANCxY0fee+89AP7617/Sq1evAtvcunUrLVu2pHnz5jz33HP5lg0bNowWLVoQExPD888/X6DsqX0/8cQTJCQk0LZtW/bt2wfAuHHjaN68ObGxsXTr1o2cnBwANm/eTMuWLWnRogWDBg3KV/fi7u+nbV28eDFz5szhiSeeIC4uju3bt9OzZ08+/PDDAtsIDw/nwIEDHD58mFtvvZXY2FiioqL45z//CcCqVato3bo1zZo149Zbb2X37t2F/EuUnAKOiIjIT6SkpPDFF1+watUqXn31Vfbv3/+z60+YMIE///nPLF68mLFjxzJmzJgC6/z+97+nX79+rFq1itDQ/w6GPWfOHHbs2MGKFStIT09n6dKlLF26tED5gwcP0qpVK1avXs3111/PkCFDAOjWrRurVq1i7dq1XHPNNbzzzjv+/SUnJ7Ny5Upq16591vsrzE033USHDh0YNWoU6enpNGjQoMgyc+bMoUGDBqxdu5b169fTtm1bfvjhB/r168f06dP54osv6NmzJ4MGDSpWHYpLAUdEROQnRo0aRWxsLNdffz0ZGRls3br1Z9evU6cOf/7zn7nlllsYPXp0of1rli1bxj333APA/fff758/b948Pv74Y+Lj40lISGDLli1s2rSpQPng4GC6desGQM+ePfn3v/8NwLp167jpppuIjo5m2rRpbNiwAYAVK1bQpUsXAO67776z3l9piYmJYe7cuQwcOJAlS5ZQtWpVvv76azZs2MD//M//EBcXx7Bhw9i5c2ep7ld9cERERE7z6aef8vnnn7N8+XIqVarEjTfeyNGjRwkKCsLM/Ov99CF0X375JTVr1iQrK6vQ7TrnCn22i5nx7LPP0rt375+t10/Lnpp+4IEH+Pjjj4mKimLChAksX778Z7dTnP0V1dazERERQVpaGnPmzOHJJ5/ktttu49ZbbyUmJobFixeXeLtF0RUcERGR0xw8eJAaNWpQqVIlNmzYwKpVq4CT/9OvXr06mzdv5scff2TGjBn+MsuWLSM1NZXVq1czdOhQduzYUWC7rVq14v333wfId1t0u3bteOutt8jOzgZODmHx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pTnn0vbu3VtK1RAREREphYDjnKsA3AH8v7MpZ2bjzSzRzBJDQ0MDrYaIiIiIX2lcwbkVWG1mu/Omdzvn6gDkve8phX2IiIiIFFtpBJzu/PfnKYBZQK+8z72AmaWwDxEREZFiCyjgOOcuBdoCH5w2exjQ1jm3OW/ZsED2ISIiInK2ggMpbGY+oOZP5u3j5F1VIiIiIueFnmQsIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4AjIiIinhNQwHHOVXPO/dM5941z7mvn3PXOuRrOufnOuc1579VLq7IiIiIixRHoFZwxwFwzawLEAl8DA4FUM2sMpOZNi4iIiJwzJQ44zrnLgV8BbwGY2TEzOwB0AlLyVksB7gy0kiIiIiJnI5ArOFcDe4GJzrk1zrkJzrnLgNpmtgsg771WKdRTREREpNgCCTjBQALwhpnFA9mcxc9Rzrm+zrk051za3r17A6iGiIiISH6BBJwMIMPMVuRN/5OTgWe3c64OQN77nsIKm9l4M0s0s8TQ0NAAqiEiIiKSX4kDjpn9B9jpnLsub1Yb4CtgFtArb14vYGZANRQRERE5S8EBlv898K5zrgKwDfgNJ0PT+8653sAOoFuA+xARERE5KwEFHDNLBxILWdQmkO2KiIiIBEJPMhYRERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERz1HAEREREc9RwBERERHPUcARERERzwkOpLBzbjtwGDgB5JpZonOuBvAPoAGwHbjbzPYHVk0RERGR4iuNKzi3mFmcmSXmTQ8EUs2sMZCaNy0iIiJyzpTFT1SdgJS8zynAnWWwDxEREZEzCjTgGDDPOfeFc65v3rzaZrYLIO+9VmEFnXN9nXNpzrm0vXv3BlgNERERkf8KqA8OcIOZZTnnagHznXPfFLegmY0HxgMkJiZagPUQERER8QvoCo6ZZeW97wFmAC2A3c65OgB573sCraSIiIjI2ShxwHHOXeacq3LqM5AErAdmAb3yVusFzAy0kiIiIiJnI5CfqGoDM5xzp7bznpnNdc6tAt53zvUGdgDdAq+miIiISPGVOOCY2TYgtpD5+4A2gVRKREREJBB6krGIiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4TsABxzn3C+fcGufcR3nTNZxz851zm/PeqwdeTREREZHiK40rOP2Ar0+bHgikmlljIDVvWkREROScCSjgOOfCgY7AhNNmdwJS8j6nAHcGsg8RERGRsxXoFZzRwADgx9Pm1TazXQB577UC3IeIiIjIWSlxwHHO3QbsMbMvSli+r3MuzTmXtnfv3pJWQ0RERKSAQK7g3ADc4ZzbDkwDfu2cmwLsds7VAch731NYYTMbb2aJZpYYGhoaQDVERERE8itxwDGzp80s3MwaAPcCC8ysJzAL6JW3Wi9gZsC1FBERETkLZfEcnGFAW+fcZqBt3rSIiIjIORNcGhsxs0XAorzP+4A2pbFdERERkZLQk4xFRETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHMUcERERMRzFHBERETEcxRwRERExHNKHHCccxWdcyudc2udcxucc4Pz5tdwzs13zm3Oe69eetUVERERKVogV3B+AH5tZrFAHNDeOdcKGAikmlljIDVvWkREROScKXHAsZOO5E2G5L0M6ASk5M1PAe4MqIYiIiIiZymgPjjOuV8459KBPcB8M1sB1DazXQB577XOULavcy7NOZe2d+/eQKohIiIikk9AAcfMTphZHBAOtHDORZ1F2fFmlmhmiaGhoYFUQ0RERCSfUrmLyswOAIuA9sBu51wdgLz3PaWxDxEREZHiCuQuqlDnXLW8z5WA/wG+AWYBvfJW6wXMDLSSIiIiImcjOICydYAU59wvOBmU3jezj5xzy4D3nXO9gR1At1Kop4iIiEixlTjgmNk6IL6Q+fuANoFUSkRERCQQepKxiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAo6IiIh4jgKOiIiIeI4CjoiIiHiOAk4Rdu7cyS233EJERASRkZGMGTMGgEGDBhETE0NcXBxJSUlkZWUVWn7UqFFERkYSFRVF9+7dOXr0qH/Za6+9xnXXXUdkZCQDBgwAYMmSJcTExNC8eXO2bNkCwIEDB2jXrh1mVsatFRER8QgzO++vZs2aWVmCkr+ysrLsiy++MDOzQ4cOWePGjW3Dhg128OBB//bHjBljv/vd7wrsNyMjwxo0aGA+n8/MzLp162YTJ040M7MFCxZYmzZt7OjRo2Zmtnv3bjMzu+uuu2zTpk02b94869+/v5mZ9e/f3xYtWlRmx+eUkh6ji0kg59LFQseoeHSMiqZzqXgutmMEpFkxsoWu4BShTp06JCQkAFClShUiIiLIzMzk8ssv96+TnZ2Nc67Q8rm5ueTk5JCbm4vP5yMsLAyAN954g4EDB3LJJZcAUKtWLQBCQkLIycnB5/MREhLC1q1byczMpHXr1mXZTBEREU8JZLDNi8727dtZs2YNLVu2BOCZZ55h0qRJVK1alYULFxZYv27duiQnJ1O/fn0qVapEUlISSUlJAGzatInFixfzzDPPULFiRV555RWaN2/O008/Td++falUqRKTJ08mOTmZIUOGnNN2ioiIXOh0BaeYjhw5QpcuXRg9erT/6s2LL77Izp076dGjB6+//nqBMvv372fmzJl8++23ZGVlkZ2dzZQpU4CTV3b279/P8uXLGTFiBHfffTdmRlxcHMuXL2fhwoVs27aNsLAwzIx77rmHnj17snv37nPabhERkQuRAk4xHD9+nC5dutCjRw86d+5cYPl9993H9OnTC8z/9NNPadiwIaGhoYSEhNC5c2eWLl0KQHh4OJ07d8Y5R4sWLQgKCuK7777zlzUzXnjhBQYNGsTgwYMZPHgwPXv2ZOzYsWXXUBEREY9QwCmCmdG7d28iIiLo37+/f/7mzZv9n2fNmkWTJk0KlK1fvz7Lly/H5/NhZqSmphIREQHAnXfeyYIFC4CTP1cdO3aMK664wl82JSWFjh07Ur16dXw+H0FBQQQFBeHz+cqqqSIiIp6hPjhFWLJkCZMnTyY6Opq4uDgAXnrpJd566y02btxIUFAQV111FePGjQMgKyuLPn36MGfOHFq2bEnXrl1JSEggODiY+Ph4+vbtC8BDDz3EQw89RFRUFBUqVCAlJcXfUdnn85GSksK8efMA6N+/P126dKFChQpMnTr1PBwFERGRC4s7ecfV+ZWYmGhpaWlltv0z3OBULOXg8JwzJT1OOkbFc7EcJx2j4tH3rWg6l4rnYjuXnHNfmFliUevpCk4g9O0TEREpl9QHR0RERDxHAUdEREQ8RwFHREREPEcBR0RERDxHAUdEREQ8RwFHREREPEcBR0RERDxHAUdEREQ8RwFHREREPEcBR0RERDxHAUdEREQ8p8QBxzlXzzm30Dn3tXNug3OuX978Gs65+c65zXnv1UuvuiIiIiJFC+QKTi7wRzOLAFoBjzrnmgIDgVQzawyk5k2LiIiInDMlDjhmtsvMVud9Pgx8DdQFOgEpeaulAHcGWkkRERGRs1EqfXCccw2AeGAFUNvMdsHJEATUOkOZvs65NOdc2t69e0ujGiIiIiJAKQQc51xlYDrwuJkdKm45MxtvZolmlhgaGhpoNURERET8Ago4zrkQToabd83sg7zZu51zdfKW1wH2BFZFERERkbMTyF1UDngL+NrMXj1t0SygV97nXsDMkldPRERE5OwFB1D2BuB+4EvnXHrevD8Bw4D3nXO9gR1At8CqKCIiInJ2ShxwzOzfgDvD4jYl3a6IiIhIoPQkYxEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHBEREfEcBRwRERHxHAUcERER8RwFHCl1o0aNIjIykqioKLp3787Ro0cLrLNo0SLi4uKIjIykdevW/vkHDhyga9euNGnShIiICJYtWwbAU089RUxMDA888IB/3cmTJzNmzJiyb5CIiFxwAgo4zrm3nXN7nHPrT5tXwzk33zm3Oe+9euDVlAtFZmYmY8eOJS0tjfXr13PixAmmTZuWb50DBw7wyCOPMGvWLDZs2MD/+3//z7+sX79+tG/fnm+++Ya1a9cSERHBwYMHWbp0KevWrePEiRN8+eWX5OTk8M477/DII4+c6yaKiMgFINArOO8A7X8ybyCQamaNgdS8abmI5ObmkpOTQ25uLj6fj7CwsHzL33vvPTp37kz9+vUBqFWrFgCHDh3i888/p3fv3gBUqFCBatWqERQUxLFjxzAzcnJyCAkJYcSIEfzhD38gJCTk3DZOREQuCAEFHDP7HPj+J7M7ASl5n1OAOwPZh1xY6tatS3JyMvXr16dOnTpUrVqVpKSkfOts2rSJ/fv3c/PNN9OsWTMmTZoEwLZt2wgNDeU3v/kN8fHx9OnTh+zsbKpUqUKXLl2Ij4+nYcOGVK1alVWrVtGpU6fz0UQREbkAlEUfnNpmtgsg771WYSs55/o659Kcc2l79+4tg2rI+bB//35mzpzJt99+S1ZWFtnZ2UyZMiXfOrm5uXzxxRfMnj2bTz75hCFDhrBp0yZyc3NZvXo1Dz/8MGvWrOGyyy5j2LBhAAwYMID09HRGjhzJoEGDeP7555kwYQJ33303L7zwwvloqoiIlGPnrZOxmY03s0QzSwwNDT1f1ZBS9umnn9KwYUNCQ0MJCQmhc+fOLF26NN864eHhtG/fnssuu4wrrriCX/3qV6xdu5bw8HDCw8Np2bIlAF27dmX16tX5yq5ZswaAa6+9lkmTJvH++++zfv16Nm/efG4aKCIiF4SyCDi7nXN1APLe95TBPqScql+/PsuXL8fn82FmpKamEhERkW+dTp06sXjxYn8fnRUrVhAREcGVV15JvXr12LhxIwCpqak0bdo0X9lTV2+OHz/OiRMnAAgKCsLn852bBoqIyAUhuAy2OQvoBQzLe59ZBvuQcqply5Z07dqVhIQEgoODiY+Pp2/fvowbNw6A//3f/yUiIoL27dsTExNDUFAQffr0ISoqCoDXXnuNHj16cOzYMa6++momTpzo3/aHH35I8+bN/Z2Wr7/+eqKjo4mJiSE2NvbcN1ZERMotZ2YlL+zcVOBm4ApgN/AX4EPgfaA+sAPoZmY/7YicT2JioqWlpZW4HkXXs+Rlf/bwlNmGz4+SNqccNqXMeOyfvEzoGBWPvm9F07lUPBfbueSc+8LMEotaL6ArOGbW/QyL2gSyXfGYi+3bJyIi552eZCwiIiKeo4AjIiIinqOAIyIiIp6jgCMiIiKeo4Ajch6dOHGC+Ph4brvttgLLDh48yO23305sbCyRkZH5bpnXqOsiIj9PAUfkPBozZkyBByGe8te//pWmTZuydu1aFi1axB//+EeOHTsGaNR1EZGiKOCInCcZGRnMnj2bPn36FLrcOcfhw4cxM44cOUKNGjUIDg7WqOsiIsWggCNynjz++OO8/PLLBAUV/jV87LHH+PrrrwkLCyM6OpoxY8YQFBSkUddFRIpBAUfkPPjoo4+oVasWzZo1O+M6n3zyCXFxcWRlZZGens5jjz3GoUOHNOq6iEgxKOCInAdLlixh1qxZNGjQgHvvvZcFCxbQs2fPfOtMnDiRzp0745yjUaNGNGzYkG+++UajrouIFIMCjsh5MHToUDIyMti+fTvTpk3j17/+NVOmTMm3Tv369UlNTQVg9+7dbNy4kauvvlqjrouIFENZjCYuIiV0+qjrgwYN4sEHHyQ6OhozY/jw4VxxxRWARl0XESlKQKOJlxaNJl4+lNmYmB4abNNj/+RlQseoeDz0tSgzOpeK52I7l4o7mrh+ohKRcmnnzp3ccsstREREEBkZWejDChctWkTVqlWJi4sjLi6O559/3r+sQYMGREdHExcXR2Lif/9bqIchilwc9BOVSHmgP1ULCA4OZuTIkSQkJHD48GGaNWtG27ZtC/Q3uummm/joo48K3cbChQv9P+sB+R6G2KNHD7788ksaNWrEO++8w9y5c8u0PSJybukKjoiUS3Xq1CEhIQGAKlWqEBERQWZmZkDb1MMQRS4eCjgiUu5t376dNWvW+G+NP92yZcuIjY3l1ltvZcOGDf75zjmSkpJo1qwZ48ePB9DDEEUuJmZ23l/NmjWzsnTyGn7JXudnw+dHmTVFx+iiOpdKuymHDx+2hIQEmz59eoFlBw8etMOHD5uZ2ezZs61Ro0b+ZZmZmWZmtnv3bouJibHPPvusQPnevXvb6tWr7c0337Ru3brZkCFDSuEIFE9pHaPf/OY3FhoaapGRkYXu58MPP7To6GiLjY21Zs2a2eLFi/3LXn31VWvatKlFRkbavffeazk5OWZmNmDAAIuOjrb777/fv+6kSZNs9OjRpXsQiuChr0WZutiOEZBmVnS20BUcESm3jh8/TpcuXejRowedO3cusPzyyy+ncuXKAHTo0IHjx4/z3XffAfhvk69VqxZ33XUXK1euzFfWKw9DfPDBB3+2/1CbNm1Yu3Yt6enpvP322/6xzzIzMxk7dixpaWmsX7+eEydOMG3aNA3aKp6hgCMi5ZKZ0bt3byIiIujfv3+h6/znP//h5B90sHLlSn788Udq1qxJdnY2hw8fBiA7O5t58+YRFRWVr6xXHob4q1/9iho1apxxeeXKlXF5ndizs7P9nwFyc3PJyckhNzcXn89HWFiY+imJZyjgiEi5tGTJEiZPnsyCBQv8t4HPmTOHcePG+R+I+M9//pOoqChiY2P5wx/+wLRp03DOsXv3bm688UZiY2Np0aIFHTt2pH379v5tn/4wxGrVqvkfhuic8+TDEGfMmEGTJk3o2LEjb7/9NgB169YlOTmZ+vXrU6dOHapWrUpSUtJF0U9p7ty5XHfddTRq1Mg/jtvpDh48yO23305sbCyRkZH+B2nu3buXG2+8kaioKD788EP/+p06dSIrK+uc1V+KqTi/Y5X1S31wyocya4qO0UV1LnmoKWWqNI/Rt99+e8Y+OKf77LPPrE2bNmZm9v3339stt9xie/bssWPHjlmnTp1s8uTJBcpciP2Ufu5cys3Ntauvvtq2bt1qP/zwg8XExNiGDRvyrfPiiy/agAEDzMxsz549Vr16dfvhhx9szJgxNn78eDt06JD98pe/NDOzWbNm2XPPPVdmx6A4yur79vHHH9u1115r11xzjQ0dOrTA8oULF9rll19usbGxFhsba4MHDzazk8fshhtusMjISJsxY4Z//TvuuMPfNy6w9qoPjoh4iXMlfwlw8uesrVu38t133/Hpp5/SsGFDQkNDCQkJoXPnzixdujTf+l7pp3S6lStX0qhRI66++moqVKjAvffey8yZM/Ot45zj8OHDmBlHjhyhRo0aBAcHExISQk5ODj/88ANBQUHk5uYyevRonnzyyfPUmrJz4sQJHn30UT7++GO++uorpk6dyldffVVgvZtuuon09HTS09P585//DMDUqVPp1asXy5YtY8SIEQD861//IiEhwd837lxQwBER8bAtW7Zw8o9eWL16NceOHaNmzZrUr1+f5cuX4/P5MDNSU1OJiIjIV9Yr/ZROl5mZSb169fzT4eHhBZ6v9Nhjj/H1118TFhZGdHQ0Y8aMISgoiPvuu49PPvmE9u3b89xzz/G3v/2NBx54gEsvvfRcN6PMFScInkl5CYIKOCIiF7Du3btz/fXXs3HjRsLDw3nrrbfy9VOaPn06UVFRxMXF8eijj/KPf/wD5xwtW7aka9euJCQkEB0dzY8//kjfvn392/VqP6VTYe907idX+T755BPi4uLIysoiPT2dxx57jEOHDlG1alVmz55NWloaCQkJfPTRR3Tp0oXf/va3dO3alWXLlp2rZpS54gRBKPw5VOUmCBbnd6yyfqkPTvlQZk3RMbqoziUdo+LxUFPKTFn8ky9dutSSkpL80y+99JK99NJL+dbp0KGDff755/7pW265xVasWJFvnccff9z+f3v3H2RVed9x/P3BVcCfSUMyTUWrNEgJ8kP5UQImEhE1NkWUBjU/ygSZhKSkIaM1ozsaZXAmNimaGVIaqoBWCyWoNFESpBhlDCoiCkqFYIMDqwZiSAgWAcFP/3iei2eXXfaC3P1x9/ua2dm9zznP+fHdc8/9nuc59zyPP/64Z82a5ZkzZ3rHjh0eMWLE0dnxw1SJY2nBggW+5pprDry+9957PXny5HrzHOo5VCXbt2/3qFGjvHPnTk+cONFjx471ihUr3uf+xj04IYQQQj2DBw9m48aNbNq0ib179zJ//nxGjx5db57TTz+dZcuWAbB161Y2bNhAjx49DkzfuHEjr7/+Oueffz67du2iU6dOSGL37t0tui+V1L17d7Zs2XLgdV1d3UH3zxzqOVQlU6dOpba2lnnz5jFw4EBmz57NjTfeWPkdILqoQgihusSN2IdUU1PDjBkzuPjii+nduzfjxo2jT58+9br1brrpJlasWEHfvn0ZOXIkt99+e71BW2tra5k2bRqQugjnzp3L0KFDue6661plnyqhnESwqedQlbR2IqjSxrWmQYMGedWqVRVbfsUGaq6yEaCPdHea3ZWK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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "memoire_A = used_page\n", "memoire_B = miss_rate\n", "\n", "numerical_indices = np.array([10, 20, 30, 40, 50, 60, 70])\n", "bar_width = 2 # Largeur des barres\n", "spacing = 1\n", "\n", "# Les étiquettes correspondant aux indices\n", "labels = [\"4Ko\", \"8Ko\", \"16Ko\", \"32Ko\", \"64Ko\", \"128Ko\", \"256Ko\"]\n", "\n", "plt.figure(figsize=(8, 6))\n", "\n", "# Première série de barres pour le tableau A (en bleu)\n", "plt.bar(numerical_indices - bar_width / 2 - spacing / 2, memoire_A, color='blue', width=bar_width, label='Taux de page utilisé')\n", "\n", "# Deuxième série de barres pour le tableau B (en rouge)\n", "plt.bar(numerical_indices + bar_width / 2 + spacing / 2, memoire_B, color='red', width=bar_width, label='Taux de miss')\n", "\n", "plt.xlabel('Taille de page') # Nommer l'axe des x\n", "#plt.ylabel('Taux de page utilisé (en %)') # Nommer l'axe des y\n", "plt.xticks(numerical_indices, labels) # Utiliser les étiquettes pour l'axe x\n", "\n", "for i in range(len(numerical_indices)):\n", " plt.text(numerical_indices[i] - bar_width / 2 - spacing / 2, memoire_A[i], str(memoire_A[i])+'%', ha='center', va='bottom')\n", " plt.text(numerical_indices[i] + bar_width / 2 + spacing, memoire_B[i], str(memoire_B[i])+'%', ha='center', va='bottom')\n", "\n", "plt.ylim(0, 100)\n", "plt.yticks(range(0, 101, 10))\n", "\n", "plt.legend() # Afficher la légende\n", "\n", "plt.tight_layout()\n", "\n", "plt.savefig('2mm-a.svg', format='svg')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Reuse distance\n", "A = reuse_distance\n", "\n", "numerical_indices = [10, 20, 30, 40, 50, 60, 70]\n", "\n", "# Les étiquettes correspondant aux indices\n", "labels = [\"4Ko\", \"8Ko\", \"16Ko\", \"32Ko\", \"64Ko\", \"128Ko\", \"256Ko\"]\n", "\n", "plt.figure(figsize=(8, 6))\n", "\n", "plt.bar(numerical_indices, A, color='blue', width=3) # Largeur des bandes ajustée à 3\n", "plt.xlabel('Taille de page') # Nommer l'axe des x\n", "plt.ylabel('Reuse distance') # Nommer l'axe des y\n", "#plt.title('Histogramme de A en fonction de l\\'indice') # Titre du graphique\n", "plt.xticks(numerical_indices, labels) # Utiliser les étiquettes pour l'axe x\n", "\n", "for i in range(len(numerical_indices)):\n", " plt.text(numerical_indices[i], A[i], str(A[i]), ha='center', va='bottom')\n", "\n", "plt.ylim(0, 25)\n", "plt.yticks(range(0, 26, 5))\n", "\n", "plt.tight_layout()\n", "\n", "plt.savefig('2mm-b.svg', format='svg')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.6.4" } }, "nbformat": 4, "nbformat_minor": 4 }