Commit e87ff237 authored by Georg Siemund's avatar Georg Siemund
Browse files

Replace zarr_objectstorage_performancetest.ipynb

parent 95106086
......@@ -10,26 +10,25 @@
import pandas as pd
from contextlib import contextmanager
import time
import dask
import fsspec
import json
```
%% Cell type:code id: tags:
``` python
#use intake to browse catalog
col_url = "https://swift.dkrz.de/v1/dkrz_a44962e3ba914c309a7421573a6949a6/intake-esm/swift-cmip6.json"
col = intake.open_esm_datastore(col_url)
hardware = '256GB 24Core'
```
%% Cell type:code id: tags:
``` python
#select data
cat = col.search(variable_id="tasmax", table_id="day")
cat.df.head()
#use intake to browse catalog
col_url = "https://swift.dkrz.de/v1/dkrz_a44962e3ba914c309a7421573a6949a6/intake-esm/swift-cmip6.json"
col = intake.open_esm_datastore(col_url)
```
%% Cell type:code id: tags:
``` python
......@@ -75,12 +74,12 @@
``` python
from dask.distributed import Client
#
memory_limit="48GB"
threads = 1
nworker = 1
threads = 5
nworker = 5
client = Client(processes=True, threads_per_worker=threads, n_workers=nworker, memory_limit=memory_limit)
```
%% Cell type:code id: tags:
......@@ -99,10 +98,11 @@
def dataframe(self):
return pd.DataFrame(self.diagnostics)
diag_timer = DiagnosticTimer()
chunksize = np.prod(data.chunksize) * data.dtype.itemsize
```
%% Cell type:code id: tags:
......@@ -119,11 +119,11 @@
%% Cell type:code id: tags:
``` python
diag_kwargs = dict(nbytes=data.nbytes, chunksize=chunksize,
cloud='swift', format='zarr')
cloud='swift', format='zarr', hardware=hardware)
```
%% Cell type:code id: tags:
``` python
......@@ -144,13 +144,122 @@
%% Cell type:code id: tags:
``` python
df = diag_timer.dataframe()
df = df.reset_index(drop=True)
df
```
%% Cell type:markdown id: tags:
## Datenspeicherung in eine Json-Datei
%% Cell type:code id: tags:
``` python
#df.to_json('/pf/b/b381359/zarr-in-swift-objectstorage/notebooks/zarr_performance.json')
```
%% Cell type:code id: tags:
``` python
already = pd.read_json('/pf/b/b381359/zarr-in-swift-objectstorage/notebooks/zarr_performance.json')
already
```
%% Cell type:code id: tags:
``` python
update = already.append(df, ignore_index='true')
update
```
%% Cell type:code id: tags:
``` python
update.to_json('/pf/b/b381359/zarr-in-swift-objectstorage/notebooks/zarr_performance.json')
```
%% Cell type:markdown id: tags:
## Throughput-Berechnung und Visualisierung
%% Cell type:code id: tags:
``` python
df = pd.read_json('/pf/b/b381359/zarr-in-swift-objectstorage/notebooks/zarr_performance.json')
df['throughput_MBps'] = df.nbytes / 1e6 / df['runtime']
df[0 :4].plot(x='ncores', y='throughput_MBps', marker='o')
df[5 :9].plot(x='ncores', y='throughput_MBps', marker='o')
df[10 :14].plot(x='ncores', y='throughput_MBps', marker='o')
df[15 :19].plot(x='ncores', y='throughput_MBps', marker='o')
df
```
%%%% Output: execute_result
nthreads ncores nworkers nbytes chunksize cloud format \
0 1 1 1 9263480832 8847360 swift zarr
1 4 4 2 9263480832 8847360 swift zarr
2 9 9 3 9263480832 8847360 swift zarr
3 16 16 4 9263480832 8847360 swift zarr
4 25 25 5 9263480832 8847360 swift zarr
5 1 1 1 9263480832 8847360 swift zarr
6 4 4 2 9263480832 8847360 swift zarr
7 9 9 3 9263480832 8847360 swift zarr
8 16 16 4 9263480832 8847360 swift zarr
9 25 25 5 9263480832 8847360 swift zarr
10 1 1 1 9263480832 8847360 swift zarr
11 4 4 2 9263480832 8847360 swift zarr
12 9 9 3 9263480832 8847360 swift zarr
13 16 16 4 9263480832 8847360 swift zarr
14 25 25 5 9263480832 8847360 swift zarr
15 1 1 1 9263480832 8847360 swift zarr
16 4 4 2 9263480832 8847360 swift zarr
17 9 9 3 9263480832 8847360 swift zarr
18 16 16 4 9263480832 8847360 swift zarr
19 25 25 5 9263480832 8847360 swift zarr
hardware runtime throughput_MBps
0 5GB 1Core 154.495057 59.959723
1 5GB 1Core 66.103309 140.136416
2 5GB 1Core 65.318598 141.819958
3 5GB 1Core 68.609839 135.016799
4 5GB 1Core 69.241626 133.784855
5 10GB 2Core 157.674033 58.750833
6 10GB 2Core 55.825154 165.937399
7 10GB 2Core 38.352534 241.535041
8 10GB 2Core 37.740102 245.454581
9 10GB 2Core 38.901415 238.127094
10 20GB 4Core 162.045562 57.165903
11 20GB 4Core 58.851281 157.404914
12 20GB 4Core 38.345927 241.576659
13 20GB 4Core 24.214650 382.556869
14 20GB 4Core 23.369606 396.390112
15 256GB 24Core 165.742089 55.890938
16 256GB 24Core 61.005581 151.846448
17 256GB 24Core 38.872968 238.301349
18 256GB 24Core 32.983231 280.854258
19 256GB 24Core 30.150028 307.246182
%%%% Output: display_data
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAX0AAAEGCAYAAACJnEVTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3de3hV9Z3v8fc3yc4NA4FwCSTagHJRIIBSi8UWhVq8QHQ6jmidHqx9juPpzdNz1OLYY6c+Ty0d5znTnnrUsdMWp/VQrWNtoqXKYL2goxaUHe4KiBB2EsIlCZD73r/zx96JIff72pfP63l4srP2Wmt/A+Gz1u+3fuu3zDmHiIgkhiSvCxARkZGj0BcRSSAKfRGRBKLQFxFJIAp9EZEEkuJ1AQDjx493BQUFXpchIhJTtm7desw5N6E/20RF6BcUFLBlyxavyxARiSlm9nF/t1H3johIAlHoi4gkEIW+iEgCUeiLiCQQhb6ISAKJitE7IrHu+feP8PBLewlU1zMlO4N7ls/khgV5Xpcl0olCX2SQnn//CPc9t5365iAAR6rrue+57QAKfok6Cn2RDpxzNAVDNDSFaGgJ0tAcpL45SENzqO11Y+T7+uYgazfsbgv8VvXNQX60YTfXzp1Maop6USV6KPQlJgRDjobmcAA3tISobwq/bmwJUt8Uiiz/JIgbm7sL61C75Z+8d9Z+W4IMxWMmKmsbmfG9DeSMSmXS6HRyx6SHv45OJ3dMWtuy3NHpjMnwYWaD/1CRXvQa+mb2S2AFcNQ5N6fDe3cDDwMTnHPHLPxb+1PgWqAOuM05997Qlx1/Yq1P2DlHc9B1Outt6BC24VDuHKqNzZ+8Dq8fDt/GboK6KRgaUJ1JBhm+ZNLb/iS1vc5MTWHcqCTSfMmRdZJIT0kmIzX8flpKeN2Mdttm+JJJa/c63ZfMXz/2FuU1DZ0+OzvDx22LC6isbaCipoHymga2Ha7mxJmmTuumpSS1HRTCB4azDwqty9VqkMHqy5n+OuAR4N/aLzSzc4GrgEPtFl8DTI/8+QzwWOSr9GCo+oRDIdd2ttvxbLarMA2fKYfahXLkrLml+/Btv21ogGfDqSlJpLcGamoy6SmfhHF2Ziq57QI13ZdMWvvvU5LahXLr9l3sK/Lal2zDfgb93atnnfXvB+EDzT8Uze7y36+xJcjR2kYqIgeDytrwn4raRiprGvAfrual2gaaWjof6HpqNbR+n52pVoN0r9fQd869bmYFXbz1z8C9wB/aLbse+DcXfgbj22aWbWaTnXPlQ1FsvHr4pb1d9gnf//x23j5wvC2420K8JURD+7PkpvCyrkKiL5KMtoDNiITsJ2e8SWRn+NpCtDWcMzqcNad3OPvt+F7r+mkpySQnxVcgtQZ7X1tqaSnJnDsuk3PHZXa7T+cc1XXN4QNDbQOVNZGvtQ1U1jZSETk4HO+m1dB6AJg0putWw8TRaaSlJA/NX4DElAH16ZtZEXDEOefvcEaRBxxu931ZZJlCvweB6voul59pDPLKnqOduhbGZPjIHZ0WOfMNh3NrUIcDtnMY99RNkZqcpDPDQbphQd6QdseZGWNHpTJ2VCoXTh7d7XqtrYbKyMGhteXQl1bDuNZWw+i0s1oOkyIHB7Ua4lO/Q9/MMoH7gS929XYXy7rsBDCzO4A7AM4777z+lhFXpmRncKSL4M/LzuDNNUs9qEhiRV9bDTX1zWcfFGoa21oOFTUNlJbV9KnVMCmr3QEicnBQqyG2DORM/3xgKtB6lp8PvGdmlxI+sz+33br5QKCrnTjnngCeAFi4cOEQjJWIXfcsn8k9z/ppDn7y15DhS+ae5TM9rErihZmRnZlKdmYqs3L71mqorD37oFBR20BpWTUVNQ009rPVMCkrfIAYq1ZDVOh36DvntgMTW783s4PAwsjonWLgm2b2W8IXcGvUn9+7Gxbk8X///CEfHasjGHIxMXpH4s9AWw1tB4jIwWH7kRqOne7cakhNSWLS6LS26wq57S9Iq9UwYvoyZHM9cAUw3szKgO87537Rzep/JDxccx/hIZtfHaI649rR2gb2VZ3h20un852rZnhdjki3+tpqaGoJcfRU111JlbUN7DhSw3/srqShuXOrYWymr9OF546v1WoYuL6M3rmll/cL2r12wDcGX1ZieXF7Oc7BynlTvC5FZEikpiSRPzaT/LE9txpq61s6jVBq/3pHH1oNE0d/cuG5/UXoiZHBDnI23ZEbBYr9AS6aPJoLJp7jdSkiI8bMGJPpY0ymj5m5Wd2u19QSoup0Y7uL0A1njVbaeaSGTQNoNUyMHDTGjUpNqFaDQt9jh0/U8f6har579SyvSxGJSqkpSeRlZ5CXndHtOu1bDZW1ne9tCLcaajl+prHTFBupyUltB4D2LYV4bTUo9D1WUhoe3LSicLLHlYjErr62GpqDIY6e6tBqOPXJAWJXoJZXdh/tdLMkQHam76yL0G0HhdZ5lGKk1aDQ91iJv5yLz8vuccSEiAwNX3IfWw0NLWcNV+14R/Su8lqOne691RAerprWabSSl60Ghb6H9h09xe7yWv5h5UVelyIiEWbGmAwfYzJ8zJjUc6uh6lRjtxehdwVqeaWm/62GiZH7GsZlppLUzZQlrRM0puZecEl/fz6FvoeK/eUkGVyrrh2RmONLTmJKdgZTemk1nGps+eSgcNZF6PCNcN21GnzJ1nYA+OQidBqHT9Tx9JayAc+1pdD3iHOOEn+Ay87PYWJWutfliMgwMDNGp/sYne5jeh9aDZW17e+Cbmx7vbu8lj/vPUpdU+dWQ38p9D2y40gtHx07w999fprXpYiIx/rTapj3Dy93PaFZH+mJDB4pKQ3gSzaumaOuHRHpXWuroacDQ18o9D0QCoW7dpbMmMCYTJ/X5YhIDLln+UwyBjH6R6Hvga2HTlJe06BpF0Sk325YkMePvjS3x2GnPVHoe6B4W4B0XxJfuHCS16WISAy6YUEeb65ZSlPFvq393VahP8JagiH+uL2cZRdOYlSarqOLyMhS6I+wt/Yf5/iZJorUtSMiHlDoj7ASf4CstBSWzJjgdSkikoAU+iOosSXIn3ZWsHxObtzM2CcisUWhP4Je21vFqYYWjdoREc8o9EdQsT/AuFGpLD4/x+tSRCRBKfRHSF1TC5t2H+XaubmkJOuvXUS8ofQZIRt3VVLfHKRoXp7XpYhIAlPoj5ASf4DJY9JZ+KmxXpciIglMoT8Cauqaee2DKlYUTu72oQgiIiNBoT8C/rSznOag06gdEfGcQn8ElPjLKcjJZG7eGK9LEZEEp9AfZkdPNfDW/mMUzZuCmbp2RMRbCv1htmF7BSGHunZEJCoo9IdZsT/ArNysHp+PKSIyUhT6w6jsZB1bPz6ps3wRiRoK/WH0Qmk5gKZRFpGoodAfRiX+APPPzebccZlelyIiAij0h83+qtPsDNTqLF9EoopCf5gUbwtgBtcVTva6FBGRNgr9YeCco6Q0wKKpOUwane51OSIibRT6w2BnoJYDVWc0akdEoo5CfxiUlAZISTKumZPrdSkiImdR6A+xUMjxgr+cz00fz9hRqV6XIyJyFoX+EHv/8EmOVNdTNF9dOyISfRT6Q6x4W4C0lCSuukhdOyISfRT6Q6glGOLF7eUsu3Ai56SleF2OiEgnCv0h9PaBExw73aQbskQkavUa+mb2SzM7amY72i172Mz2mFmpmf3ezLLbvXefme0zs71mtny4Co9GJf4A56SlcMXMiV6XIiLSpb6c6a8Dru6wbCMwxzlXCHwA3AdgZhcBNwOzI9s8ambJQ1ZtFGtsCbJhRzlfnD2JdF9C/MgiEoN6DX3n3OvAiQ7LXnbOtUS+fRvIj7y+Hvitc67ROfcRsA+4dAjrjVpvfHCM2oYW3ZAlIlFtKPr0bwc2RF7nAYfbvVcWWdaJmd1hZlvMbEtVVdUQlOGtYn+AsZk+Lr9gvNeliIh0a1Chb2b3Ay3AU62LuljNdbWtc+4J59xC59zCCRMmDKYMz9U1tbBxVyXXzJ2ML1nXxkUkeg14XKGZrQZWAMucc63BXgac2261fCAw8PJiw6bdR6lvDmrUjohEvQGdlprZ1cB3gSLnXF27t4qBm80szcymAtOBdwdfZnQr9geYNDqNTxeM87oUEZEe9Xqmb2brgSuA8WZWBnyf8GidNGCjmQG87Zy70zm308yeAXYR7vb5hnMuOFzFR4Oa+mZe21vFVy77FMlJXfVuiYhEj15D3zl3SxeLf9HD+j8EfjiYomLJSzsraAqGNGpHRGKCrjoOUok/wHnjMpmXP8brUkREeqXQH4Rjpxt5a/9xVs6bTKSbS0Qkqin0B2HD9nKCIUfRvC5vRRARiToK/UEo9geYOSmLmblZXpciItInCv0BClTX85eDJ1k5b7LXpYiI9JlCf4BeKA3fc6ZROyISSxT6A1TsDzAvfwyfyhnldSkiIn2m0B+AA1Wn2XGkVmf5IhJzFPoDUOIvxwxWFCr0RSS2KPT7yTlHsf8IlxaMI3dMutfliIj0i0K/n3aXn2J/1Rl17YhITFLo91NJaYDkJOPauRqqKSKxR6HfD845SvwBLr9gPONGpXpdjohIvyn0++H9w9WUnazXw1JEJGYp9PuheFuA1JQkvjh7kteliIgMiEK/j4Ihx4vby1k6cyJZ6T6vyxERGRCFfh+9c+A4VacaKZqvrh0RiV0K/T4qKQ0wKjWZpbMmel2KiMiAKfT7oKklxB+3V/DF2bmk+5K9LkdEZMAU+n3wxodV1NQ3axplEYl5Cv0+KPEHyM70cfkFE7wuRURkUBT6vahvCvLyrkqumZNLaor+ukQktinFevHKnqPUNQU1146IxAWFfi+K/UeYmJXGZ6bmeF2KiMigKfR7UNvQzJ/3VnFd4WSSk8zrckREBk2h34OXd1bS1BJS146IxA2Ffg9K/AHyx2aw4Nxsr0sRERkSCv1uHD/dyOZ9x1g5bwpm6toRkfig0O/Ghh0VBENO0yiLSFxR6Hej2B/ggonnMCs3y+tSRESGjEK/C+U19fzl4AmK1LUjInFGod+FF0vLcQ6N2hGRuKPQ70KxP8DcvDFMHT/K61JERIaUQr+Dg8fOUFpWowu4IhKXFPodlPgDAFxXqGmURST+KPQ7KCkNcGnBOKZkZ3hdiojIkFPot7OnopYPKk/rYSkiErcU+u2U+AMkJxnXzFXoi0h8UuhHOOco8Zfz2fNzGH9OmtfliIgMi15D38x+aWZHzWxHu2XjzGyjmX0Y+To2stzM7P+Y2T4zKzWzi4ez+KHkL6vh0Ik6jdoRkbjWlzP9dcDVHZatATY556YDmyLfA1wDTI/8uQN4bGjKHH7F2wKkJifxxdm5XpciIjJseg1959zrwIkOi68Hnoy8fhK4od3yf3NhbwPZZhb1HeTBkOOF0gBXzJzAmAyf1+WIiAybgfbpT3LOlQNEvk6MLM8DDrdbryyyrBMzu8PMtpjZlqqqqgGWMTTe/egER081atoFEYl7Q30ht6vZyVxXKzrnnnDOLXTOLZwwYcIQl9E/xf4AmanJfOHCSZ7WISIy3AYa+pWt3TaRr0cjy8uAc9utlw8EBl7e8GsOhtiwo5yrLppERmqy1+WIiAyrgYZ+MbA68no18Id2y/9LZBTPIqCmtRsoWm3+8BjVdc2sLFTXjojEv5TeVjCz9cAVwHgzKwO+D6wFnjGzrwGHgL+JrP5H4FpgH1AHfHUYah5SJf4Ao9NT+PwMb7uYRERGQq+h75y7pZu3lnWxrgO+MdiiRkpDc5CXdlawonAKqSm6T01E4l9CJ92f9xzlTFOQovnq2hGRxJDQoV/sDzD+nDQWTcvxuhQRkRGRsKF/qqGZV/YcZUXhZJKT9BxcEUkMCRv6G3dV0tgS0jTKIpJQEjb0S/wB8rIzuPi8sV6XIiIyYhIy9E+eaeKND4+xYt5kzNS1IyKJIyFDf8OOClpCTtMoi0jCScjQL/YfYdqEUVw0ebTXpYiIjKiEC/2Kmgbe+egERfOmqGtHRBJOwoX+i9vLcQ5NoywiCSnhQr/YH2D2lNGcP+Ecr0sRERlxCRX6h47X4T9crQu4IpKwEir0S0rDU/uvUOiLSIJKrND3B1j4qbHkZWd4XYqIiCcSJvQ/qDzFnopTuoArIgktYUK/xB8gyeDauZprR0QSV0KEvnOOYn+Az54/nglZaV6XIyLimYQI/e1Havj4eJ1G7YhIwkuI0C/eFsCXbCyfnet1KSIinor70A+FHC+UlrNkxkTGZPq8LkdExFNxH/p/OXiCitoGPSxFRIQECP1if4AMXzJXXTTJ61JERDwX16HfHAyxYUcFyy6cSGZqitfliIh4Lq5D/819xzhxpkmjdkREIuI69Ev85WSlp7Bk5gSvSxERiQpxG/oNzUFe3lnB1bNzSUtJ9rocEZGoELeh/+reKk41tlA0X107IiKt4jb0S/wBxp+TymXTcrwuRUQkasRl6J9ubGHTnkqunTuZlOS4/BFFRAYkLhPxP3ZV0tAc0jTKIiIdxGXol/gDTBmTziXnjfW6FBGRqBJ3oV9d18TrH1axYt4UkpLM63JERKJK3IX+hh0VNAedbsgSEelC3IV+iT/A1PGjmD1ltNeliIhEnbgK/aO1DfzngeOsnDcFM3XtiIh0FFeh/+L2cpyDIk2jLCLSpbgK/WJ/gAsnj+aCiVlelyIiEpXiJvQPn6jj/UPVeliKiEgP4ib0S0oDAKws1KgdEZHuDCr0zew7ZrbTzHaY2XozSzezqWb2jpl9aGZPm1nqUBXbkxJ/ORefl8254zJH4uNERGLSgEPfzPKAbwMLnXNzgGTgZuDHwD8756YDJ4GvDUWhPdl39BS7y2s17YKISC8G272TAmSYWQqQCZQDS4FnI+8/CdwwyM/oVbG/nCSD6wrVny8i0pMBh75z7gjwT8AhwmFfA2wFqp1zLZHVyoC8wRbZSx2U+AMsmpbDxKz04fwoEZGYN5junbHA9cBUYAowCrimi1VdN9vfYWZbzGxLVVXVQMtgx5FaPjp2RtMuiIj0wWC6d74AfOScq3LONQPPAZ8FsiPdPQD5QKCrjZ1zTzjnFjrnFk6YMPBn2JaUBvAlG1fPyR3wPkREEsVgQv8QsMjMMi0858EyYBfwZ+DGyDqrgT8MrsTuhULhrp3PT59AduaIDBISEYlpg+nTf4fwBdv3gO2RfT0BfBf4H2a2D8gBfjEEdXZp66GTlNc0aNSOiEgfpfS+Svecc98Hvt9h8QHg0sHst6+KtwVI9yVx1UWTRuLjRERiXszekdsSDPHH7eUsmzWJUWmDOnaJiCSMmA39t/Yf5/iZJnXtiIj0Q8yGfok/QFZaClfMHPjIHxGRRBOTod/YEuRPOyv44uxc0n3JXpcjIhIzYjL0X9tbxamGFk2jLCLSTzEZ+sX+AONGpbL4gvFelyIiElNiLvTrmlrYtPso187NxZccc+WLiHgq5lJz465K6puDeliKiMgAxFzol/gD5I5O59MF47wuRUQk5sRU6NfUNfPaB1WsKJxMUpJ5XY6ISMyJqdD/085ymoOOovnq2hERGYiYCv0Sfzmfyslkbt4Yr0sREYlJMRP6R0818Nb+YxTNm0J4JmcREemvmAn9DdsrCDk0146IyCDETOgX+wPMys1ixqQsr0sREYlZMRH6ZSfr2PrxSZ3li4gMUkyE/gul5QC6IUtEZJBiIvRL/AHmnZvNeTmZXpciIhLToj7091edZmegliJ17YiIDFrUh36JP4AZrCjUNMoiIoMV1aHvnKPYH+AzU8cxaXS61+WIiMS8qA79nYFaDlSdoWhenteliIjEhagO/ZLSAClJxjVzcr0uRUQkLkRt6IdCjhf85Xxu+njGjkr1uhwRkbgQtaH//uGTHKmu1w1ZIiJDKGpDv3hbgLSUJK66aJLXpYiIxI2oDP2WYIgXt5ezdNZEstJ9XpcjIhI3ojL03z5wgmOnm3RDlojIEIvK0C/xBzgnLYUrZ030uhQRkbiS4nUBHTW2BNmwo5yVcydSXnaIhoYGr0uSYZaenk5+fj4+n7ryRIZb1IX+Gx8co7ahhS/NzCArK4uCggI9KSuOOec4fvw4ZWVlTJ061etyROJe1HXvFPsDZGf6GJXiyMnJUeDHOTMjJydHLTqRERJVoV/X1MLGXZVcM2cyBgr8BKF/Z5GRE1Whv2n3Ueqbgxq1IyIyTKKqT7/YH2DS6DQunTqOD/Ye7de2z79/hIdf2kugup4p2Rncs3wmNyzQRG0iIu1FzZl+TX0zr+2t4rq5U0hO6l9z//n3j3Dfc9s5Ul2PA45U13Pfc9t5/v0jA66nurqaRx99FIBXX32VFStWDHhfA3XOOecM2b4eeuihXtcxM77yla+0fd/S0sKECRPafvZ169YxYcIE5s+fz+zZs7nxxhupq6sbshpFZPhFzZn+SzsraAqGKJrfuWvnByU72RWo7Xbb9w9V0xQMnbWsvjnIvc+Wsv7dQ11uc9GU0Xx/5exu99ka+l//+tf7+BNAMBgkOTm5z+uPpIceeoi///u/73GdUaNGsWPHDurr68nIyGDjxo3k5Z3dWlq1ahWPPPIIAF/+8pd5+umn+epXvzpsdYvI0IqaM/0Sf4DzxmUyL39Mv7ftGPi9Le+LNWvWsH//fubPn88999zD6dOnufHGG5k1axa33norzjkACgoKePDBB7n88sv53e9+x7Zt21i0aBGFhYX81V/9FSdPngTgiiuuYMuWLQAcO3aMgoICAOrq6rjpppsoLCxk1apVfOYzn2lbD+D+++9n3rx5LFq0iMrKSgBuu+027rzzTj73uc8xY8YMXnjhBSB8Jv7Nb36zbdsVK1bw6quvsmbNGurr65k/fz633nprjz/3Nddcw4svvgjA+vXrueWWW7pcr6WlhTNnzjB27Ngea9q5cyeXXnop8+fPp7CwkA8//LDv/wgiMuSi4ky/JeR4a/9x7lwyrcuRHD2dkQMsXvsKR6rrOy3Py87g6b+7bEA1rV27lh07drBt2zZeffVVrr/+enbu3MmUKVNYvHgxb775JpdffjkQvrlo8+bNABQWFvKzn/2MJUuW8MADD/CDH/yAn/zkJ91+zqOPPsrYsWMpLS1lx44dzJ8/v+29M2fOsGjRIn74wx9y77338vOf/5zvfe97ABw8eJDXXnuN/fv3c+WVV7Jv374ef5ZHHnmEbdu29fpz33zzzTz44IOsWLGC0tJSbr/9dt544422959++mk2b95MeXk5M2bMYOXKlW3vdVXT448/zl133cWtt95KU1MTwWCw1xpEZPhExZl+TX0zwZAb8DTK9yyfSYbv7G6VDF8y9yyfORTlAXDppZeSn59PUlIS8+fP5+DBg23vrVq1CoCamhqqq6tZsmQJAKtXr+b111/vcb+bN2/m5ptvBmDOnDkUFha2vZeamtrWn37JJZec9Zk33XQTSUlJTJ8+nWnTprFnz56h+DEpLCzk4MGDrF+/nmuvvbbT+6tWrWLbtm1UVFQwd+5cHn744R5ruuyyy3jooYf48Y9/zMcff0xGRsaQ1CkiAzOo0DezbDN71sz2mNluM7vMzMaZ2UYz+zDydWxv+wlU15OSZOwpPzWgOm5YkMePvjSXvOwMjPAZ/o++NHdIR++kpaW1vU5OTqalpaXt+1GjRvW6fUpKCqFQuLup/Y1Ird1EXfH5fG0tn46f2bFFZGZnfUbHz+mPoqIi7r777m67dlo/b+XKlWcd1Lqq6ctf/jLFxcVkZGSwfPlyXnnllQHVJCJDY7Bn+j8F/uScmwXMA3YDa4BNzrnpwKbI971qCblBjbi5YUEeb65Zykdrr+PNNUsHHfhZWVmcOtW/g9CYMWMYO3ZsW3fIr3/967az/oKCArZu3QrAs88+27bN5ZdfzjPPPAPArl272L59e58+63e/+x2hUIj9+/dz4MABZs6cSUFBAdu2bSMUCnH48GHefffdtvV9Ph/Nzc192vftt9/OAw88wNy5c3tcb/PmzZx//vk91nTgwAGmTZvGt7/9bYqKiigtLe1TDSIyPAbcp29mo4HPA7cBOOeagCYzux64IrLak8CrwHf7ss/65iAPv7Q3KsbX5+TksHjxYubMmUNGRgaTJvXtYS5PPvkkd955J3V1dUybNo1f/epXANx9993cdNNN/PrXv2bp0qVt63/9619n9erVFBYWsmDBAgoLCxkzpveL2TNnzmTJkiVUVlby+OOPk56ezuLFi5k6dSpz585lzpw5XHzxxW3r33HHHRQWFnLxxRfz1FNP9bjv/Px87rrrri7fa+3TD4VC5Ofns27duh5revrpp/nNb36Dz+cjNzeXBx54oNefTUSGj/XUvdDjhmbzgSeAXYTP8rcCdwFHnHPZ7dY76Zzr1MVjZncAdwCk5l5wyeTV4YudBny09jp2797NhRdeOKDaYkkwGKS5uZn09HT279/PsmXL+OCDD0hN7f65wLfddhsrVqzgxhtvHMFKezbYmhLl31tkKJnZVufcwv5sM5jROynAxcC3nHPvmNlP6WNXDoBz7gnCBw3SJk9vO/JMyU6sC311dXVceeWVNDc345zjscce6zHwRUQGYzChXwaUOefeiXz/LOHQrzSzyc65cjObDPR5PoWhHnETC7Kyss4al98X7btU+uv48eMsW7as0/JNmzaRk5Mz4P0OpiYRGTkDDn3nXIWZHTazmc65vcAywl09u4DVwNrI1z/0ZX95XcyX45zTDIxDLCcnp0/j9UfSQLsYRaT/Bntz1reAp8wsFTgAfJXwiKBnzOxrwCHgb3rbydy8Mby5ZulZy9LT0zl+/Ljm1I9zrQ9RSU9P97oUkYQwqNB3zm0DurqI0Ln/oJ/y8/MpKyujqqpqsLuSKNf6uEQRGX5RMQ1DV3w+nx6fJyIyxKJiGgYRERkZCn0RkQSi0BcRSSADviN3SIswqwI+HqbdjweODdO+h0Os1QuxV3Os1QuqeSTEWr0AM51zWf3ZICou5DrnJgzXvs1sS39vU/ZSrNULsVdzrNULqnkkxFq9EK65v9uoe0dEJIEo9EVEEkgihP4TXhfQT7FWL8RezbFWL6jmkRBr9cIAao6KC7kiIjIyEuFMX0REIhT6ItAW4AUAAAWUSURBVCIJJC5D38zONbM/Rx7WvtPMun72X5Qxs2Qze9/MXvC6lr4ws2wze9bM9kT+ri/zuqbemNl3Ir8TO8xsvZlF3fSeZvZLMztqZjvaLRtnZhvN7MPI105Po/NKN/U+HPm9KDWz35tZdk/7GGld1dzuvbvNzJnZeC9q6053NZvZt8xsb+T3+h97209chj7QAvxP59yFwCLgG2Z2kcc19cVdhB8uHyt+CvzJOTeL8CMzo7p2M8sDvg0sdM7NAZKBm72tqkvrgKs7LFsDbHLOTQc20Y+n1I2AdXSudyMwxzlXCHwA3DfSRfViHZ1rxszOBa4iPC18tFlHh5rN7ErgeqDQOTcb+KfedhKXoe+cK3fOvRd5fYpwGHn/tPUemFk+cB3wr17X0hdmNhr4PPALAOdck3Ou2tuq+iQFyDCzFCATCHhcTyfOudeBEx0WXw88GXn9JHDDiBbVg67qdc697JxriXz7NhBVc2d383cM8M/AvUDUjXDppub/Bqx1zjVG1un1SYVxGfrtmVkBsAB4p+c1PfcTwr9sIa8L6aNpQBXwq0iX1L+a2Sivi+qJc+4I4TOhQ0A5UOOce9nbqvpsknOuHMInNcBEj+vpj9uBDV4X0RszKwKOOOf8XtfSDzOAz5nZO2b2mpl9urcN4jr0zewc4N+B/+6cq/W6nu6Y2QrgqHNuq9e19EMKcDHwmHNuAXCG6Opy6CTSD349MBWYAowys7/1tqr4Zmb3E+5ufcrrWnpiZpnA/cADXtfSTynAWMLd2PcQfmphj48ajNvQNzMf4cB/yjn3nNf19GIxUGRmB4HfAkvN7DfeltSrMqDMOdfagnqW8EEgmn0B+Mg5V+WcawaeAz7rcU19VWlmkwEiX3ttxnvNzFYDK4BbXfTfEHQ+4ZMBf+T/YT7wnpnlelpV78qA51zYu4R7Cnq8AB2XoR850v0C2O2c+99e19Mb59x9zrl851wB4QuLrzjnovoM1DlXARw2s5mRRcuAXR6W1BeHgEVmlhn5HVlGlF98bqcYWB15vRr4g4e19MrMrga+CxQ55+q8rqc3zrntzrmJzrmCyP/DMuDiyO95NHseWApgZjOAVHqZKTQuQ5/wmfNXCJ8xb4v8udbrouLQt4CnzKwUmA885HE9PYq0Sp4F3gO2E/79j7pb781sPfCfwEwzKzOzrwFrgavM7EPCo0vWellje93U+wiQBWyM/P973NMiO+im5qjWTc2/BKZFhnH+FljdW6tK0zCIiCSQeD3TFxGRLij0RUQSiEJfRCSBKPRFRBKIQl9EJIEo9EVEEohCX6SfzCzZ6xpEBkqhL3HPzAoi8/3/PDLn+MtmlmFmF5jZf5iZ38zeM7PzLezhyHz7281sVWQfV0Se0fD/CN/YhZn9rZm9G7n56F8s/DyEZDNb127773j6w4t0kOJ1ASIjZDpwi3Puv5rZM8BfE76jeK1z7veRh6kkAV8ifHfxPMJzmPzFzF6P7ONSwnPEf2RmFwKrgMXOuWYzexS4FdgJ5EXm6yfaHh4iotCXRPGRc25b5PVWwpNr5Tnnfg/gnGsAMLPLgfXOuSDhSc5eAz4N1ALvOuc+iuxjGXAJ4YMCQAbhSdBKCN8W/zPgRSBWpm6WBKHQl0TR2O51kPB0tF3paVraMx3We9I51+mJUGY2D1gOfAO4ifB88iJRQX36kqhqgTIzuwHAzNIic6q/DqyK9M1PIPx0sHe72H4TcKOZTYxsP87MPhV5rmqSc+7fgf9F9E83LQlGZ/qSyL4C/IuZPQg0A38D/B64DPATfmTevc65CjOb1X5D59wuM/se8LKZJUW2/wZQT/hpYq0nVNH2bFhJcJplU0Qkgah7R0QkgSj0RUQSiEJfRCSBKPRFRBKIQl9EJIEo9EVEEohCX0Qkgfx//8imMWZIQQ0AAAAASUVORK5CYII=)
%%%% Output: display_data
![](data:image/png;base64,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)
%%%% Output: display_data
![](data:image/png;base64,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)
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:code id: tags:
``` python
```
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment