Skip to content

Commit

Permalink
new figures in visualization
Browse files Browse the repository at this point in the history
albheim committed Apr 1, 2021

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
1 parent 7d98d6a commit 934007a
Showing 1 changed file with 131 additions and 1 deletion.
132 changes: 131 additions & 1 deletion src/visualize.ipynb
Original file line number Diff line number Diff line change
@@ -170,7 +170,96 @@
"metadata": {},
"outputs": [],
"source": [
"list(map(gen_plot_func(\".*cost/energy\", ylim=[0, 0.03], figure=False, xlabel=\"Time [s]\", ylabel=\"Power [W]\"), dfs))\n",
"alg_crah_fan.mean()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# RL data\n",
"rl_compressor = df_rl.filter(regex=\".*power/compressor\").to_numpy()\n",
"rl_server_fan = df_rl.filter(regex=\".*power/server_fan\").to_numpy()\n",
"rl_crah_fan = df_rl.filter(regex=\".*power/crah_fan\").to_numpy()\n",
"rl_server_load = df_rl.filter(regex=\".*power/total_server_load\").to_numpy()\n",
"rl_energy = df_rl.filter(regex=\".*cost/energy\").to_numpy() * 100\n",
"rl_dropped = df_rl.filter(regex=\".*job/dropped\").to_numpy() \n",
"\n",
"rl_time = df_rl.index.to_numpy()\n",
"\n",
"rl_total_cooling_power_kw = (rl_compressor+rl_server_fan+rl_crah_fan) / 1000\n",
"rl_total_power_kw = (rl_compressor+rl_server_fan+rl_crah_fan+rl_server_load) / 1000\n",
"rl_it_power_kw = (rl_server_fan+rl_server_load) / 1000\n",
"rl_pue = rl_total_power_kw / rl_it_power_kw\n",
"\n",
"# Alg data\n",
"alg_compressor = df_alg.filter(regex=\".*power/compressor\").to_numpy()\n",
"alg_server_fan = df_alg.filter(regex=\".*power/server_fan\").to_numpy()\n",
"alg_crah_fan = df_alg.filter(regex=\".*power/crah_fan\").to_numpy()\n",
"alg_server_load = df_alg.filter(regex=\".*power/total_server_load\").to_numpy()\n",
"alg_energy = df_alg.filter(regex=\".*cost/energy\").to_numpy() * 100\n",
"alg_dropped = df_alg.filter(regex=\".*job/dropped\").to_numpy() \n",
"\n",
"alg_time = df_alg.index.to_numpy()\n",
"\n",
"alg_total_cooling_power_kw = (alg_compressor+alg_server_fan+alg_crah_fan) / 1000\n",
"alg_total_power_kw = (alg_compressor+alg_server_fan+alg_crah_fan+alg_server_load) / 1000\n",
"alg_it_power_kw = (alg_server_fan+alg_server_load) / 1000\n",
"alg_pue = alg_total_power_kw / alg_it_power_kw\n",
"\n",
"# Cooling power plot\n",
"plt.figure(figsize=(6,2))\n",
"plt.plot(rl_time, rl_total_cooling_power_kw)\n",
"plt.plot(alg_time, alg_total_cooling_power_kw)\n",
"plt.title(\"Total cooling power\")\n",
"plt.xlabel(\"Iterations\")\n",
"plt.ylabel(\"Power [kW]\")\n",
"plt.legend([\"RL\", \"Constant\"])\n",
"\n",
"# Total power plot\n",
"fix, ax = plt.subplots(2, figsize=(6,5))\n",
"ax[0].plot(rl_time, rl_total_power_kw)\n",
"ax[0].plot(alg_time, alg_total_power_kw)\n",
"ax[0].set_title(\"DC power\")\n",
"ax[0].set(ylabel=\"Total power [kW]\")\n",
"ax[0].label_outer()\n",
"ax[0].legend([\"RL\", \"Constant\"])\n",
"\n",
"# PUE plot\n",
"ax[1].plot(rl_time, rl_pue)\n",
"ax[1].plot(alg_time, alg_pue)\n",
"ax[1].set(xlabel=\"Iterations\", ylabel=\"PUE\")\n",
"#ax[0].ylabel(\"PUE\")\n",
"#ax[0].legend([\"RL\", \"Constant\"])\n",
"\n",
"# Compressor plot\n",
"plt.figure(figsize=(6,2))\n",
"plt.plot(rl_time, rl_compressor / 1000)\n",
"plt.plot(alg_time, alg_compressor / 1000)\n",
"plt.title(\"Compressor power\")\n",
"plt.xlabel(\"Iterations\")\n",
"plt.ylabel(\"Power [kW]\")\n",
"plt.legend([\"RL\", \"Constant\"])\n",
"\n",
"# Dropped plot\n",
"plt.figure(figsize=(6,2))\n",
"plt.plot(rl_time, rl_dropped)\n",
"plt.plot(alg_time, alg_dropped)\n",
"plt.title(\"Average fraction of dropped jobs\")\n",
"plt.xlabel(\"Iterations\")\n",
"plt.ylabel(\"Fraction dropped\")\n",
"plt.legend([\"RL\", \"Constant\"])\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"list(map(gen_plot_func(\".*cost/energy\", figure=False, xlabel=\"Time [s]\", ylabel=\"Power [W]\"), dfs))\n",
"plt.legend([\"RL\", \"Constant\"])\n",
"plt.title(\"Cooling power\")"
]
@@ -197,6 +286,17 @@
"plt.title(\"Fraction of jobs dropped\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"list(map(gen_plot_func(\".*power/compressor\", figure=False, xlabel=\"Time [s]\", ylabel=\"Power [W]\"), dfs))\n",
"plt.legend([\"RL\", \"Constant\"])\n",
"plt.title(\"Compressor\")"
]
},
{
"cell_type": "code",
"execution_count": null,
@@ -206,6 +306,29 @@
"gen_plot_func(\".*srv\\d+/temp_cpu\", xlabel=\"Time [s]\", ylabel=\"Temperature [C]\", title=\"CPU temperature\")(dfs[0])"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"df_rl.index"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"rlload = df_rl.filter(regex=(\".*srv\\d+/load\"))\n",
"rlmean = rlload.mean(axis=1).to_numpy()\n",
"rlstd = rlload.std(axis=1).to_numpy()\n",
"t = df_rl.index\n",
"\n",
"plt.errorbar(t, rlmean, rlstd, linestyle='None', marker='^')"
]
},
{
"cell_type": "code",
"execution_count": null,
@@ -248,6 +371,13 @@
"plt.title(\"Total flow through servers\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,

0 comments on commit 934007a

Please sign in to comment.