You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sledge/runtime/tests/plot.ipynb

186 lines
101 KiB

3 months ago
{
"cells": [
{
"cell_type": "code",
3 months ago
"execution_count": 2,
3 months ago
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import matplotlib as mpl\n",
"import matplotlib.colors as mcolors\n",
"import numpy as np\n",
"import sys\n",
"from matplotlib.ticker import MultipleLocator, FormatStrFormatter\n",
"import matplotlib.ticker as ticker\n",
"import os\n",
"from collections import defaultdict\n",
"import matplotlib.pyplot as plt\n",
"import re\n",
"import argparse\n",
"import numpy as np"
]
},
{
"cell_type": "code",
3 months ago
"execution_count": 3,
3 months ago
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
3 months ago
"13485\n",
"13485\n",
"13485\n",
"13485\n"
3 months ago
]
},
{
"data": {
3 months ago
"image/png": "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
3 months ago
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import json\n",
"f = open('/home/weihao/sledge/sledge_tree/runtime/tests/request_time.txt', 'r')\n",
"js = f.read()\n",
"f.close()\n",
"times = json.loads(js)\n",
"keys = list(times.keys())\n",
"int_keys = list(map(int, keys))\n",
"x=sorted(int_keys)\n",
"#print(x)\n",
"print(len(x))\n",
"y_list=list(times.values())\n",
"\n",
"y_queuing=[]\n",
"y_runnable=[]\n",
"y_blocking=[]\n",
"\n",
"for k in range(len(x)):\n",
" y_queuing.append(times[str(x[k])][0])\n",
" y_runnable.append(times[str(x[k])][1])\n",
" y_blocking.append(times[str(x[k])][2])\n",
"print(len(y_queuing))\n",
"print(len(y_runnable))\n",
"print(len(y_blocking))\n",
"#print(y_queuing)\n",
"legend_list=[\"Global Queuing\", \"Local Queuing\", \"Blocking\"]\n",
"#legend_list=[\"Local Queuing\", \"Blocking\"]\n",
"\n",
"#legend_list=[\"Global Queuing\", \"Blocking\"]\n",
"plt.scatter(np.array(x), y_queuing,c='g')\n",
3 months ago
"plt.scatter(np.array(x), y_runnable, c='r')\n",
"plt.scatter(np.array(x), y_blocking,c ='b')\n",
3 months ago
"\n",
"#plt.ylim((0, 90000)) \n",
"#plt.ylim((0,400000))\n",
"plt.xlabel(\"Request id\")\n",
"plt.ylabel(\"Duration(us)\")\n",
"\n",
"plt.legend(legend_list)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"12983\n"
]
},
{
"data": {
"image/png": "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p06dsG7dOjz++OOYM2cOOnTogHfffZdD54k0YDRyiDwR+T6DEI6mRvNflZWVCA0NRUVFBZvJiIiIfIRa12+f6iNEREREpCQmQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpFhMhIiIi0i0mQkRERKRbTISIiIhIt5gIERERkW4xESIiIiLdYiJEREREusVEiIiIiHSLiRARERHpluaJ0Lx585CQkIDg4GAkJSVh+/btTW6fnZ2N7t27o1WrVjCZTHj88cdx7tw5D0VLRERE/kTTRGj58uWYPHkyMjMzsWvXLvTu3RtpaWk4evSow+2XLl2KqVOnIjMzE/v378d7772H5cuXY/r06R6OnIiIiPyBponQG2+8gXHjxmHs2LG44oorsGDBArRu3Rrvv/++w+2/+eYb/OUvf8GoUaOQkJCAm2++GSNHjmy2FomIiIjIEc0SodraWuzcuROpqakXgwkIQGpqKvLz8x0+Z8CAAdi5c6ct8fntt9+wfv163HrrrR6JmYiIiPxLC61euLy8HGazGdHR0Xbro6Oj8csvvzh8zqhRo1BeXo7rrrsOQghcuHABDz30UJNNYzU1NaipqbH9XVlZqUwBiIiIyOdp3llajry8PLz00kt45513sGvXLuTk5GDdunX45z//6fQ5WVlZCA0NtS0mk8mDERMREZE3MwghhBYvXFtbi9atW2PVqlUYNmyYbX1GRgZOnTqFtWvXNnpOSkoK+vfvj1dffdW2bsmSJXjwwQdRVVWFgIDGeZ2jGiGTyYSKigqEhIQoWygiIiJSRWVlJUJDQxW/fmtWIxQYGIjExETk5uba1tXV1SE3NxfJyckOn3PmzJlGyY7RaAQAOMvngoKCEBISYrcQERERARr2EQKAyZMnIyMjA/369cO1116L7OxsVFdXY+zYsQCAMWPGID4+HllZWQCAIUOG4I033kDfvn2RlJSEQ4cO4dlnn8WQIUNsCRERERGRVJomQiNGjMCxY8cwc+ZMlJaWok+fPtiwYYOtA3VhYaFdDdCMGTNgMBgwY8YMFBcXIzIyEkOGDMGLL76oVRGIiIjIh2nWR0grarUxEhERkXr8ro8QERERkdaYCBEREZFuMREiIiIi3WIiRERERLrFRIiIiIh0i4kQERER6RYTISIiItItJkJERESkW0yEiIiISLeYCBEREZFuMREiIiIi3WIiRERERLrFRIiIiIh0i4kQERER6RYTISIiItItJkJERESkW0yEiIiISLeYCBEREZFuMRE
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"31416 32 [32, 10, 23382, 31416, 0]\n"
]
}
],
"source": [
"import json\n",
"f = open('/home/weihao/sledge/sledge_tree/runtime/tests/request_time.txt', 'r')\n",
"js = f.read()\n",
"f.close()\n",
"times = json.loads(js)\n",
"keys = list(times.keys())\n",
"int_keys = list(map(int, keys))\n",
"x=sorted(int_keys)\n",
"#print(x)\n",
"print(len(x))\n",
"y_list=list(times.values())\n",
"\n",
"#deadline = 73076\n",
"deadline = 472592\n",
"y_latency=[]\n",
"yqueuing=[]\n",
"\n",
"for k in range(len(x)):\n",
" y_latency.append(times[str(x[k])][3])\n",
" yqueuing.append(times[str(x[k])][0])\n",
"\n",
"#print(y_latency)\n",
"plt.scatter(np.array(x), y_latency,c='b')\n",
"#plt.scatter(np.array(x), yqueuing,c='g')\n",
"plt.axhline(y=deadline,color='r')\n",
"plt.xlabel(\"Request id\")\n",
"plt.ylabel(\"Total Latency(us)\")\n",
"\n",
"plt.show()\n",
"\n",
"print(y_latency[1289], yqueuing[1289], times[str(x[1289])])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "haiwan_env",
"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.12.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}