{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import pandas as pd\n", "from pandas import DataFrame, Series\n", "import numpy as np\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "import matplotlib.patches as mpatches\n", "from scipy import stats\n", "import sys" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "matrixMalEX=\"data_GG.csv\"\n", "matrixMal=\"data_GM.csv\"\n", "matrixIt=\"data_L.csv\"\n", "n_qty=2 #CAMBIAR SEGUN LA CANTIDAD DE NODOS USADOS\n", "n_groups= 2\n", "repet = 3 #CAMBIAR EL PRIMER NUMERO SEGUN NUMERO DE EJECUCIONES POR CONFIG\n", "\n", "p_value = 0.05\n", "values = [2, 10, 20, 40]\n", "dist_names = ['null', 'BestFit', 'WorstFit']\n", "\n", "labelsP = [['(2,2)', '(2,10)', '(2,20)', '(2,40)'],['(10,2)', '(10,10)', '(10,20)', '(10,40)'],\n", " ['(20,2)', '(20,10)', '(20,20)', '(20,40)'],['(40,2)', '(40,10)', '(40,20)', '(40,40)']]\n", "labelsP_J = ['(2,2)', '(2,10)', '(2,20)', '(2,40)','(10,2)', '(10,10)', '(10,20)', '(10,40)',\n", " '(20,2)', '(20,10)', '(20,20)', '(20,40)','(40,2)', '(40,10)', '(40,20)', '(40,40)']\n", "positions = [321, 322, 323, 324, 325]\n", "positions_small = [221, 222, 223, 224]" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [], "source": [ "dfG = pd.read_csv( matrixMalEX )\n", "\n", "dfG = dfG.drop(columns=dfG.columns[0])\n", "dfG['S'] = dfG['N']\n", "dfG['N'] = dfG['S'] + dfG['%Async']\n", "dfG['%Async'] = (dfG['%Async'] / dfG['N']) * 100\n", "\n", "if(n_qty == 1):\n", " group = dfG.groupby(['%Async', 'Groups'])['TE']\n", "else: \n", " group = dfG.groupby(['Dist', '%Async', 'Groups'])['TE']\n", "\n", "#group\n", "grouped_aggG = group.agg(['mean'])\n", "grouped_aggG.rename(columns={'mean':'TE',}, inplace=True)" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [], "source": [ "dfM = pd.read_csv( matrixMal )\n", "dfM = dfM.drop(columns=dfM.columns[0])\n", "\n", "dfM['S'] = dfM['N']\n", "dfM['N'] = dfM['S'] + dfM['%Async']\n", "dfM[\"TR\"] = dfM[\"TC\"] + dfM[\"TS\"] + dfM[\"TA\"]\n", "dfM['%Async'] = (dfM['%Async'] / dfM['N']) * 100\n", "\n", "if(n_qty == 1):\n", " groupM = dfM.groupby(['%Async','NP', 'NS'])['TC', 'TS', 'TA', 'TR']\n", "else:\n", " groupM = dfM.groupby(['Dist', '%Async','NP', 'NS'])['TC', 'TS', 'TA', 'TR']\n", "\n", "#group\n", "grouped_aggM = groupM.agg(['mean'])\n", "grouped_aggM.columns = grouped_aggM.columns.get_level_values(0)" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/usuario/anaconda3/lib/python3.7/site-packages/ipykernel_launcher.py:12: FutureWarning: set_axis currently defaults to operating inplace.\n", "This will change in a future version of pandas, use inplace=True to avoid this warning.\n", " if sys.path[0] == '':\n" ] } ], "source": [ "dfL = pd.read_csv( matrixIt )\n", "dfL = dfL.drop(columns=dfL.columns[0])\n", "\n", "if(n_qty == 1):\n", " groupL = dfL[dfL['NS'] != 0].groupby(['Tt', '%Async', 'NP', 'NS'])['Ti', 'To']\n", "else:\n", " groupL = dfL[dfL['NS'] != 0].groupby(['Tt', 'Dist', '%Async', 'NP', 'NS'])['Ti', 'To']\n", "\n", "#group\n", "grouped_aggL = groupL.agg(['mean', 'count'])\n", "grouped_aggL.columns = grouped_aggL.columns.get_level_values(0)\n", "grouped_aggL.set_axis(['Ti', 'Iters', 'To', 'Iters2'], axis='columns')\n", "\n", "grouped_aggL['Iters'] = np.round(grouped_aggL['Iters']/repet)\n", "grouped_aggL['Iters2'] = np.round(grouped_aggL['Iters2']/repet)" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [], "source": [ "grouped_aggL.to_excel(\"resultL.xlsx\") \n", "grouped_aggM.to_excel(\"resultM.xlsx\") \n", "grouped_aggG.to_excel(\"resultG.xlsx\") " ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | N | \n", "%Async | \n", "Groups | \n", "Dist | \n", "Matrix | \n", "CommTam | \n", "Time | \n", "Iters | \n", "TE | \n", "S | \n", "
---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "1000000000 | \n", "0.0 | \n", "20,40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.652589 | \n", "1000000000 | \n", "
1 | \n", "1000000000 | \n", "0.0 | \n", "20,40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "5.018492 | \n", "1000000000 | \n", "
2 | \n", "1000000000 | \n", "0.0 | \n", "20,40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.493219 | \n", "1000000000 | \n", "
3 | \n", "1000000000 | \n", "75.0 | \n", "10,40 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.105919 | \n", "250000000 | \n", "
4 | \n", "1000000000 | \n", "75.0 | \n", "10,40 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.245686 | \n", "250000000 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
475 | \n", "1000000000 | \n", "50.0 | \n", "10,10 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "2.962400 | \n", "500000000 | \n", "
476 | \n", "1000000000 | \n", "50.0 | \n", "10,10 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "2.961127 | \n", "500000000 | \n", "
477 | \n", "1000000000 | \n", "50.0 | \n", "40,20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.608352 | \n", "500000000 | \n", "
478 | \n", "1000000000 | \n", "50.0 | \n", "40,20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.589667 | \n", "500000000 | \n", "
479 | \n", "1000000000 | \n", "50.0 | \n", "40,20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "4.489824 | \n", "500000000 | \n", "
480 rows × 10 columns
\n", "\n", " | \n", " | \n", " | TE | \n", "
---|---|---|---|
Dist | \n", "%Async | \n", "Groups | \n", "\n", " |
1,1 | \n", "0.0 | \n", "10,10 | \n", "2.627098 | \n", "
10,2 | \n", "2.899689 | \n", "||
10,20 | \n", "2.888230 | \n", "||
10,40 | \n", "3.993755 | \n", "||
2,10 | \n", "2.944463 | \n", "||
... | \n", "... | \n", "... | \n", "... | \n", "
2,2 | \n", "100.0 | \n", "20,40 | \n", "5.341889 | \n", "
40,10 | \n", "4.388462 | \n", "||
40,2 | \n", "4.029106 | \n", "||
40,20 | \n", "5.118012 | \n", "||
40,40 | \n", "5.099804 | \n", "
160 rows × 1 columns
\n", "\n", " | N | \n", "%Async | \n", "NP | \n", "NS | \n", "Dist | \n", "Matrix | \n", "CommTam | \n", "Time | \n", "Iters | \n", "TC | \n", "TS | \n", "TA | \n", "S | \n", "TR | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "1000000000 | \n", "0.0 | \n", "20 | \n", "40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.386783 | \n", "0.975962 | \n", "0.000000 | \n", "1000000000 | \n", "2.362745 | \n", "
1 | \n", "1000000000 | \n", "0.0 | \n", "20 | \n", "40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.451572 | \n", "1.287850 | \n", "0.000000 | \n", "1000000000 | \n", "2.739422 | \n", "
2 | \n", "1000000000 | \n", "0.0 | \n", "20 | \n", "40 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.268700 | \n", "0.951857 | \n", "0.000000 | \n", "1000000000 | \n", "2.220557 | \n", "
3 | \n", "1000000000 | \n", "75.0 | \n", "10 | \n", "40 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.229340 | \n", "0.152475 | \n", "1.039797 | \n", "250000000 | \n", "2.421612 | \n", "
4 | \n", "1000000000 | \n", "75.0 | \n", "10 | \n", "40 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.282071 | \n", "0.150512 | \n", "1.328807 | \n", "250000000 | \n", "2.761390 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
475 | \n", "1000000000 | \n", "50.0 | \n", "10 | \n", "10 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "0.552342 | \n", "0.086523 | \n", "0.606111 | \n", "500000000 | \n", "1.244976 | \n", "
476 | \n", "1000000000 | \n", "50.0 | \n", "10 | \n", "10 | \n", "2,2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "0.559686 | \n", "0.039759 | \n", "0.584163 | \n", "500000000 | \n", "1.183608 | \n", "
477 | \n", "1000000000 | \n", "50.0 | \n", "40 | \n", "20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.062025 | \n", "0.495980 | \n", "1.637047 | \n", "500000000 | \n", "3.195052 | \n", "
478 | \n", "1000000000 | \n", "50.0 | \n", "40 | \n", "20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.068324 | \n", "0.476552 | \n", "1.684447 | \n", "500000000 | \n", "3.229323 | \n", "
479 | \n", "1000000000 | \n", "50.0 | \n", "40 | \n", "20 | \n", "1,1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "1,10 | \n", "1.111539 | \n", "0.378755 | \n", "1.518684 | \n", "500000000 | \n", "3.008978 | \n", "
480 rows × 14 columns
\n", "\n", " | \n", " | \n", " | \n", " | TC | \n", "TS | \n", "TA | \n", "TR | \n", "
---|---|---|---|---|---|---|---|
Dist | \n", "%Async | \n", "NP | \n", "NS | \n", "\n", " | \n", " | \n", " | \n", " |
1,1 | \n", "0.0 | \n", "2 | \n", "2 | \n", "0.223021 | \n", "0.324948 | \n", "0.000000 | \n", "0.547969 | \n", "
10 | \n", "0.303257 | \n", "0.441400 | \n", "0.000000 | \n", "0.744658 | \n", "|||
20 | \n", "0.471601 | \n", "0.515365 | \n", "0.000000 | \n", "0.986965 | \n", "|||
40 | \n", "1.017589 | \n", "0.670533 | \n", "0.000000 | \n", "1.688121 | \n", "|||
10 | \n", "2 | \n", "0.281236 | \n", "0.425874 | \n", "0.000000 | \n", "0.707110 | \n", "||
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
2,2 | \n", "100.0 | \n", "20 | \n", "40 | \n", "1.444816 | \n", "0.000000 | \n", "2.211954 | \n", "3.656770 | \n", "
40 | \n", "2 | \n", "0.440411 | \n", "0.000000 | \n", "2.377278 | \n", "2.817690 | \n", "||
10 | \n", "0.948845 | \n", "0.000000 | \n", "1.783927 | \n", "2.732773 | \n", "|||
20 | \n", "1.288021 | \n", "0.000000 | \n", "2.137097 | \n", "3.425118 | \n", "|||
40 | \n", "1.442273 | \n", "0.000000 | \n", "1.960198 | \n", "3.402471 | \n", "
160 rows × 4 columns
\n", "\n", " | N | \n", "%Async | \n", "NP | \n", "N_par | \n", "NS | \n", "Dist | \n", "Compute_tam | \n", "Comm_tam | \n", "Time | \n", "Iters | \n", "Ti | \n", "Tt | \n", "To | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "1000000000 | \n", "0.0 | \n", "40 | \n", "20 | \n", "0 | \n", "2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.221581 | \n", "0.0 | \n", "224.0 | \n", "
1 | \n", "1000000000 | \n", "0.0 | \n", "40 | \n", "20 | \n", "0 | \n", "2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.200142 | \n", "0.0 | \n", "224.0 | \n", "
2 | \n", "1000000000 | \n", "0.0 | \n", "40 | \n", "20 | \n", "0 | \n", "2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199802 | \n", "0.0 | \n", "224.0 | \n", "
3 | \n", "1000000000 | \n", "0.0 | \n", "40 | \n", "20 | \n", "0 | \n", "2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199798 | \n", "0.0 | \n", "224.0 | \n", "
4 | \n", "1000000000 | \n", "0.0 | \n", "40 | \n", "20 | \n", "0 | \n", "2 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199800 | \n", "0.0 | \n", "224.0 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
5275 | \n", "1000000000 | \n", "50.0 | \n", "20 | \n", "40 | \n", "0 | \n", "1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199738 | \n", "0.0 | \n", "224.0 | \n", "
5276 | \n", "1000000000 | \n", "50.0 | \n", "20 | \n", "40 | \n", "0 | \n", "1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199741 | \n", "0.0 | \n", "224.0 | \n", "
5277 | \n", "1000000000 | \n", "50.0 | \n", "20 | \n", "40 | \n", "0 | \n", "1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199924 | \n", "0.0 | \n", "224.0 | \n", "
5278 | \n", "1000000000 | \n", "50.0 | \n", "20 | \n", "40 | \n", "0 | \n", "1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199756 | \n", "0.0 | \n", "224.0 | \n", "
5279 | \n", "1000000000 | \n", "50.0 | \n", "20 | \n", "40 | \n", "0 | \n", "1 | \n", "100000 | \n", "0 | \n", "0.2 | \n", "10 | \n", "0.199748 | \n", "0.0 | \n", "224.0 | \n", "
5280 rows × 13 columns
\n", "\n", " | \n", " | \n", " | \n", " | \n", " | Ti | \n", "Iters | \n", "To | \n", "Iters2 | \n", "
---|---|---|---|---|---|---|---|---|
Tt | \n", "Dist | \n", "%Async | \n", "NP | \n", "NS | \n", "\n", " | \n", " | \n", " | \n", " |
0.0 | \n", "1 | \n", "0.0 | \n", "2 | \n", "2 | \n", "0.199723 | \n", "1.0 | \n", "224.000000 | \n", "1.0 | \n", "
10 | \n", "0.199689 | \n", "1.0 | \n", "224.000000 | \n", "1.0 | \n", "||||
20 | \n", "0.199723 | \n", "1.0 | \n", "224.000000 | \n", "1.0 | \n", "||||
40 | \n", "0.199708 | \n", "1.0 | \n", "224.000000 | \n", "1.0 | \n", "||||
10 | \n", "2 | \n", "0.199149 | \n", "1.0 | \n", "223.333333 | \n", "1.0 | \n", "|||
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
1.0 | \n", "2 | \n", "100.0 | \n", "20 | \n", "40 | \n", "0.587325 | \n", "3.0 | \n", "224.000000 | \n", "3.0 | \n", "
40 | \n", "2 | \n", "0.336983 | \n", "5.0 | \n", "223.333333 | \n", "5.0 | \n", "|||
10 | \n", "0.445416 | \n", "3.0 | \n", "224.000000 | \n", "3.0 | \n", "||||
20 | \n", "0.525447 | \n", "3.0 | \n", "224.000000 | \n", "3.0 | \n", "||||
40 | \n", "0.526898 | \n", "3.0 | \n", "224.000000 | \n", "3.0 | \n", "
288 rows × 4 columns
\n", "