Skip to content

Instantly share code, notes, and snippets.

@yuxuanzhuang
Last active August 17, 2020 14:39
Show Gist options
  • Save yuxuanzhuang/73c80d5e0fe56930bc8a224973cb7903 to your computer and use it in GitHub Desktop.
Save yuxuanzhuang/73c80d5e0fe56930bc8a224973cb7903 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"from pmda.parallel import ParallelAnalysisBase"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import pmda.rms"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"import pmda.density"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"import dask"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"import MDAnalysis as mda\n",
"from MDAnalysis.tests.datafiles import *\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table style=\"border: 2px solid white;\">\n",
"<tr>\n",
"<td style=\"vertical-align: top; border: 0px solid white\">\n",
"<h3 style=\"text-align: left;\">Client</h3>\n",
"<ul style=\"text-align: left; list-style: none; margin: 0; padding: 0;\">\n",
" <li><b>Scheduler: </b>tcp://127.0.0.1:41943</li>\n",
" <li><b>Dashboard: </b><a href='http://127.0.0.1:8787/status' target='_blank'>http://127.0.0.1:8787/status</a></li>\n",
"</ul>\n",
"</td>\n",
"<td style=\"vertical-align: top; border: 0px solid white\">\n",
"<h3 style=\"text-align: left;\">Cluster</h3>\n",
"<ul style=\"text-align: left; list-style:none; margin: 0; padding: 0;\">\n",
" <li><b>Workers: </b>12</li>\n",
" <li><b>Cores: </b>12</li>\n",
" <li><b>Memory: </b>16.49 GB</li>\n",
"</ul>\n",
"</td>\n",
"</tr>\n",
"</table>"
],
"text/plain": [
"<Client: 'tcp://127.0.0.1:41943' processes=12 threads=12, memory=16.49 GB>"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from dask.distributed import Client\n",
"\n",
"client = Client(n_workers=12)\n",
"client"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Density Test Case"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/scottzhuang/pmda/pmda/parallel.py:321: UserWarning: uses more blocks than frames: will decrease n_blocks\n",
" warnings.warn(\"uses more blocks than frames: \"\n"
]
},
{
"data": {
"text/plain": [
"<pmda.density.DensityAnalysis at 0x7f6e0ad44310>"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"U = mda.Universe(TPR, XTC)\n",
"ow = U.select_atoms(\"name OW\")\n",
"D = pmda.density.DensityAnalysis(ow, delta=1.0)\n",
"D.prepare_jobs(n_blocks=12)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"D.visualize()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<pmda.density.DensityAnalysis at 0x7f6e0ad44310>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"D.run(n_jobs=6)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"11084.000000000002"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.sum(D.density.grid)"
]
},
{
"attachments": {
"43b46ce3-7abb-4e27-9b6e-422d3178c793.png": {
"image/png": "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L/yzeNb3tFOF52wdC86J9sWW5NmMZzvSHi/N32UufSSl6qEL9U+2DyVNzfmcgW1ji4kNU+/n972e2rkr/vajZxq3/Xjj+bjGktbxIdtG3+sZcDs9lOKLv//976JPQ0NLT217lrGxsVOnTr300kvbt29/7rnnPvnkk66uLs933W53bW3tBx988Nxzzz388MM7d+48cuRIe/u//0V5TztdLtfHH38cFha2ffv2mze9zIPTp0+LYTQ0NKzcy9dff/3RRx+dOnVqfn4+KipKrOP5b05Ojtvtfuyxx8LCwr766quGhobdu3dv2bJF/DPNbrebTKZXX331kUceeeKJJz744IOWlpaVG29razt8+PDOnTsfeeSRF1988cSJE1NTU54VDh06FBYWtmvXroWFhWPHjj25vHzxxRczy8uRI0eefPLJxx9//OjRo/xM14Mm9xcjo2O5+UWiOhv8b7a1wPO8YqBo/tvpcrkysnM9w0vPym290z40PDI2Pj4yOtre2bXy/SRZefmet5F4HcZ9IyHerFlbd312dm5kbGxkZHRkdHR0bHx+fqGopCzGlCgeStps08Wl5eJHnrn5RXfaO0fHxicmJwcGhy7XXBVvmDGnpA8O+/sJn/9IeD7ooPXOHfE40jY9nVdYdKu1zdeT5EsPTNvuFFwomZiYFIc/ODScbc235OblFhR6BRFX3pfF7XZPT89cqr4i/sEUm5B4rb5hfsVLk7xu3LX844Bsa4HnXz/J6ZalFy75eM2XZzBet3bPlZ522qani0sr1nIZX2bZ+ONO52jLQmPcTNYum+m/JhN/N5D7UnXNxwV1f7Jee6pvrGB+cekn5V6XsTlHVe/Mnryex5LuPGJu23L+9kMxLY/EtryX3519a2J2cUMPPYPSTpvN9tJLL4WFhW3ZsuX555/ftm2byF5nZ6c4wvz8fBGwRx99dOfOnWKFxx9/vK2tTaxwTzujo6PF1kpLS70amc1mscG4uDivK7jd7oSEhKefflqs9vjjj//hD38oKipyu91/+MMfwsLCDh069Nxzz4nvzs7OOp3O9957T/xx9+7dv//978UhNDc3i+23tLRs375dXLlr1y6x5ssvv+z5XI/PPvssLCzsySefPHr06LZt27Zs2SLWOXbs2KFDh1Zec+bMGV9j5nqZBC5fqfU0aeNfXFrbT7NWA16rb/D6zKdYs39w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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"![Dask Task Stream](attachment:43b46ce3-7abb-4e27-9b6e-422d3178c793.png)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# RMSD Test Case"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/scottzhuang/mdanalysis/package/MDAnalysis/topology/guessers.py:146: UserWarning: Failed to guess the mass for the following atom types: D\n",
" warnings.warn(\"Failed to guess the mass for the following atom types: {}\".format(atom_type))\n",
"/home/scottzhuang/mdanalysis/package/MDAnalysis/topology/guessers.py:146: UserWarning: Failed to guess the mass for the following atom types: Z\n",
" warnings.warn(\"Failed to guess the mass for the following atom types: {}\".format(atom_type))\n",
"/home/scottzhuang/mdanalysis/package/MDAnalysis/topology/PDBParser.py:330: UserWarning: Invalid elements found in the PDB file, elements attributes will not be populated.\n",
" warnings.warn(\"Invalid elements found in the PDB file, \"\n",
"/home/scottzhuang/anaconda3/envs/gsoc/lib/python3.8/site-packages/numpy/core/_asarray.py:83: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray\n",
" return array(a, dtype, copy=False, order=order)\n"
]
},
{
"data": {
"text/plain": [
"<pmda.rms.rmsd.RMSD at 0x7f6e288ea9a0>"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"u = mda.Universe('serialize_mda/benchmarking/YiiP_system.pdb','serialize_mda/benchmarking/YiiP_system_90ns_center.xtc')\n",
"ref = mda.Universe('serialize_mda/benchmarking/YiiP_system.pdb')\n",
"rmsd_ana = pmda.rms.RMSD(u.atoms,ref.atoms)\n",
"rmsd_ana.run(n_jobs=12, n_blocks=12)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f6e081557f0>]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.plot(rmsd_ana.rmsd.T[2])"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'_io': array([0.01498437, 0.01618671, 0.01243711, ..., 0.00714183, 0.00681329,\n",
" 0.00669289]),\n",
" '_io_block': array([12.3463707 , 12.43642139, 12.56574106, 12.19770193, 12.36478806,\n",
" 12.57618904, 12.24408484, 12.31220365, 12.01340055, 12.49357247,\n",
" 12.37968993, 12.39259481]),\n",
" '_compute': array([0.02450156, 0.01709604, 0.01938796, ..., 0.00780368, 0.00749779,\n",
" 0.00717235]),\n",
" '_compute_block': array([17.71900964, 17.6717062 , 17.52579713, 17.62038589, 17.70226669,\n",
" 17.62803841, 17.31353736, 17.69965148, 17.4842515 , 17.61987019,\n",
" 17.4917984 , 17.96855426]),\n",
" '_total': 39.20006227493286,\n",
" '_cumulate': 359.76762557029724,\n",
" '_prepare': 1.5497207641601562e-05,\n",
" '_prepare_dask': 4.603749990463257,\n",
" '_conclude': 0.005455732345581055,\n",
" '_wait': array([4.24882054, 4.07275677, 4.10720778, 4.09929633, 4.05248928,\n",
" 4.07363057, 4.98264456, 4.07393599, 5.0178988 , 4.09473658,\n",
" 4.19137573, 4.08003306])}"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"rmsd_ana.timing.__dict__"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Multiple analysis"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(None, None, None, None)"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"u1 = mda.Universe(TPR, XTC)\n",
"ow_1 = u1.select_atoms(\"name OW\")\n",
"\n",
"# job_1\n",
"job_1 = pmda.density.DensityAnalysis(ow_1, delta=1.0)\n",
"job_1.prepare_jobs(n_blocks=1)\n",
"\n",
"# job_2\n",
"job_2 = pmda.rms.RMSD(u1.atoms,u1.atoms)\n",
"job_2.prepare_jobs(n_blocks=1)\n",
"\n",
"u2 = mda.Universe(TPR, XTC)\n",
"ow_2 = u1.select_atoms(\"name OW\")\n",
"\n",
"# job_3\n",
"job_3 = pmda.density.DensityAnalysis(ow_2, delta=1.0)\n",
"job_3.prepare_jobs(n_blocks=1)\n",
"\n",
"# job_4\n",
"job_4 = pmda.rms.RMSD(u2.atoms,u2.atoms)\n",
"job_4.prepare_jobs(n_blocks=1)\n",
"\n",
"dask.compute(job_1, job_2, job_3, job_4)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<Density density with (124, 85, 62) bins>"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"job_1.density"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"11084.000000000002"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.sum(job_1.density.grid)"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[0.00000000e+00, 0.00000000e+00, 1.11806583e-06],\n",
" [1.00000000e+00, 1.00000008e+02, 3.93540730e+01],\n",
" [2.00000000e+00, 2.00000015e+02, 4.46856248e+01],\n",
" [3.00000000e+00, 3.00000000e+02, 4.74091331e+01],\n",
" [4.00000000e+00, 4.00000031e+02, 4.92339242e+01],\n",
" [5.00000000e+00, 5.00000031e+02, 5.05638196e+01],\n",
" [6.00000000e+00, 6.00000000e+02, 5.14999599e+01],\n",
" [7.00000000e+00, 7.00000061e+02, 5.20255171e+01],\n",
" [8.00000000e+00, 8.00000061e+02, 5.25679596e+01],\n",
" [9.00000000e+00, 9.00000061e+02, 5.28021430e+01]])"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"job_2.rmsd"
]
},
{
"attachments": {
"b32e414a-b114-44ec-a723-1c35479ecd09.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"![Dask Task Stream](attachment:b32e414a-b114-44ec-a723-1c35479ecd09.png)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "gsoc",
"language": "python",
"name": "gsoc"
},
"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.8.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment