{ "cells": [ { "cell_type": "markdown", "id": "45511424-de0d-4620-88dc-1631789cfe30", "metadata": {}, "source": [ "# Benchmark" ] }, { "cell_type": "markdown", "id": "1edd243a-739b-4a67-b29d-8788eca0932d", "metadata": {}, "source": [ "### Benchmark for CutoffNeighborSearch in mdapy, freud and ovito" ] }, { "cell_type": "code", "execution_count": 1, "id": "d5b27ac4-c8fe-44ca-8e37-8b06148a17eb", "metadata": {}, "outputs": [], "source": [ "import mdapy as mp\n", "import freud\n", "import numpy as np\n", "from time import time\n", "from ovito.data import CutoffNeighborFinder\n", "import ovito" ] }, { "cell_type": "code", "execution_count": 2, "id": "f0d1f0ec-76e9-4a10-a8d1-85082031ce81", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "mdapy version is: 1.0.5a2\n", "freud version is: 3.5.0\n", "ovito version is: (3, 14, 1)\n" ] } ], "source": [ "print('mdapy version is:', mp.__version__)\n", "print('freud version is:', freud.__version__)\n", "print('ovito version is:', ovito.version)" ] }, { "cell_type": "code", "execution_count": 3, "id": "f6877409-471f-4b4b-88b9-8811508c3e2e", "metadata": {}, "outputs": [], "source": [ "def test_neighbor_average_time(ave_num=3):\n", " time_list = []\n", " cutoff = 5.0\n", " for num in [5, 10, 15, 20, 25, 45, 65, 85]:\n", " FCC = mp.build_crystal('Cu', 'fcc', 3.615, nx=num, ny=100, nz=100)\n", " ovi_data = FCC.to_ovito()\n", " print(f\"Testing system with {FCC.N} atoms...\")\n", " freud_t, mdapy_t, ovito_t = 0.0, 0.0, 0.0\n", " for turn in range(ave_num):\n", " start = time()\n", " FCC.build_neighbor(cutoff, max_neigh=50)\n", " end = time()\n", " mdapy_t += end - start\n", "\n", " start = time()\n", " finder = CutoffNeighborFinder(cutoff, ovi_data)\n", " finder.find_all(sort_by='index')\n", " end = time()\n", " ovito_t += end - start\n", "\n", " box = freud.box.Box(Lx=FCC.box.box[0, 0], Ly=FCC.box.box[1, 1], Lz=FCC.box.box[2, 2])\n", " pos = FCC.get_positions().to_numpy()\n", " shift_pos = (\n", " pos\n", " - np.min(pos, axis=0)\n", " - np.array([np.linalg.norm(FCC.box.box[i]) for i in range(3)]) / 2\n", " )\n", " start = time()\n", " aq = freud.locality.AABBQuery(box, shift_pos)\n", " nlist = aq.query(\n", " shift_pos, {\"r_max\": cutoff, \"exclude_ii\": True}\n", " ).toNeighborList()\n", " end = time()\n", " freud_t += end - start\n", "\n", " time_list.append([FCC.N, ovito_t / ave_num, freud_t / ave_num, mdapy_t / ave_num])\n", " time_list = np.array(time_list)\n", " return time_list" ] }, { "cell_type": "code", "execution_count": 4, "id": "3244fcd1-e870-4230-adc1-0bd6b0d770e6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Testing system with 200000 atoms...\n", "Testing system with 400000 atoms...\n", "Testing system with 600000 atoms...\n", "Testing system with 800000 atoms...\n", "Testing system with 1000000 atoms...\n", "Testing system with 1800000 atoms...\n", "Testing system with 2600000 atoms...\n", "Testing system with 3400000 atoms...\n" ] } ], "source": [ "time_list = test_neighbor_average_time()" ] }, { "cell_type": "code", "execution_count": 12, "id": "1335ef0b-fc3f-47e7-afed-94fd4d8f3008", "metadata": {}, "outputs": [ { "data": { "image/png": "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vqCgQPTs2VM88sgjoqSkRAghxBdffCFCQkLE2bNnXY612+1ixowZYvLkyaK4uLh6T5qogWLSS0Quzp07J8LDw6Vf0hMnTqz0McePHxcAxM8//1z7AVaT0WhsNElvZmamkMvlonfv3uX27dy5023iVBOpqaliyZIlPj1nQ7B27VrRunVrkZub63b/xo0bxcGDB8WcOXO8TnrPnTsn9Hq96NWrl7BardJ2i8UiOnXqJAwGg7h582a5x928eVNMnz5d9O7dWyQkJIiHH35Y/PLLL26vYbFYxIABA8ScOXO8fq5EgYBjW4jIRYcOHdC9e3d8//33AIB//etf6Nu3L15++WWPj3HWDDr/Wx9ptVp/h1Bn9uzZA7vdDp1OV27fyJEjfX69ZcuWISYmxufnrc/++9//Yt68efjwww89vu4nTJgAAFCr1VizZo1X533hhRdgNBoxd+5cKBQKabtSqcTs2bOxYMECLFy4EElJSS6PMxgMXrcnUyqV+Otf/4o+ffpg4MCBmDZtmlePI2roWNNLRG4NGDAAMpkMAPCnP/0J3377rcdjncfVZ3J54/nn7urVqwBQJ+Nod+7c2eh6wQohMH36dISGhnqVMDZr1syr8164cAFbtmwBAIwYMaLc/lGjRgEAPv/8c2RnZ1ch4vJ69uyJMWPGYN68eTU+F1FD0Xh+CxBRlYwePRpLliwBANhsNjz55JO4cOGCn6MibxQUFACo/Tcje/bswWOPPQbRyNq9b9y4ET///DNGjx4NlUpV6fHevvlw9tnV6/Vo165duf1dunSBRqNBSUmJT6atPfHEEygoKMC7775b43MRNQRMeonIo1dffRUTJ04EAOTk5GDcuHFet7sKDQ116erw6aefSvuWLVvmsu+ee+5xeawQAtu2bcO9996LGTNmAACuX7+OqVOnomnTpmjZsiUWLVoEm80GACgpKcFbb72FDh06QKfTYciQIThx4kSF8RmNRixYsABRUVFo0qQJRowYgUOHDnk8PicnBy+//DLi4uKg1+sRHh6OCRMm4OTJk+WOLSgowOrVq9GjRw8sXrwYFosF8+fPR0hICO655x4pKa2M867//v37IzIyEiEhIRg8eDDWrl0rPffSOnfujJCQELz99tsAgP379yMkJAQhISFo06aNV9csLi7G+++/j7vuugstWrRAkyZN0K1bN7z22msoKiqS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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = mp.set_figure(figdpi=200)\n", "colorlist = color_cycler = [\"#4477AA\", \"#EE6677\", \"#228833\"]\n", "N_max = time_list[-1, 0]\n", "exp_max = int(np.log10(N_max))\n", "\n", "x, y = time_list[:, 0] / 10**exp_max, time_list[:, 1]\n", "popt = np.polyfit(x, y, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[0])\n", "ax.plot(x, y, \"o\", label=f\"ovito, k={popt[0]:.1f}\")\n", "\n", "y1 = time_list[:, 2]\n", "popt = np.polyfit(x, y1, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[1])\n", "ax.plot(x, y1, \"o\", label=f\"freud, k={popt[0]:.1f}\")\n", "\n", "y2 = time_list[:, 3]\n", "popt = np.polyfit(x, y2, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[2])\n", "ax.plot(x, y2, \"o\", label=f\"mdapy, k={popt[0]:.1f}\")\n", "\n", "\n", "ax.set_title('Neighbor Search')\n", "ax.legend()\n", "ax.set_xlabel(r\"Number of atoms ($\\mathregular{10^%d}$)\" % exp_max)\n", "ax.set_ylabel(\"Time (s)\");" ] }, { "cell_type": "markdown", "id": "1878e1a1", "metadata": {}, "source": [ "### Benchmark for NearestNeighborSearch in mdapy, freud and ovito\n", "\n", "Find the 12 nearest neighbours of every atom (FCC's first coordination shell). Same set of system sizes as the cutoff benchmark above so the two plots can be compared side-by-side." ] }, { "cell_type": "code", "execution_count": 6, "id": "829253b7", "metadata": {}, "outputs": [], "source": [ "from ovito.data import NearestNeighborFinder\n", "\n", "\n", "def test_nearest_neighbor_average_time(ave_num=3, k=12):\n", " time_list = []\n", " for num in [5, 10, 15, 20, 25, 45, 65, 85]:\n", " FCC = mp.build_crystal('Cu', 'fcc', 3.615, nx=num, ny=100, nz=100)\n", " ovi_data = FCC.to_ovito()\n", " print(f\"Testing system with {FCC.N} atoms...\")\n", " freud_t, mdapy_t, ovito_t = 0.0, 0.0, 0.0\n", " for turn in range(ave_num):\n", " start = time()\n", " FCC.build_nearest_neighbor(k)\n", " end = time()\n", " mdapy_t += end - start\n", "\n", " start = time()\n", " finder = NearestNeighborFinder(k, ovi_data)\n", " finder.find_all()\n", " end = time()\n", " ovito_t += end - start\n", "\n", " box = freud.box.Box(Lx=FCC.box.box[0, 0], Ly=FCC.box.box[1, 1], Lz=FCC.box.box[2, 2])\n", " pos = FCC.get_positions().to_numpy()\n", " shift_pos = (\n", " pos\n", " - np.min(pos, axis=0)\n", " - np.array([np.linalg.norm(FCC.box.box[i]) for i in range(3)]) / 2\n", " )\n", " start = time()\n", " aq = freud.locality.AABBQuery(box, shift_pos)\n", " nlist = aq.query(\n", " shift_pos, {\"num_neighbors\": k, \"exclude_ii\": True}\n", " ).toNeighborList()\n", " end = time()\n", " freud_t += end - start\n", "\n", " time_list.append([FCC.N, ovito_t / ave_num, freud_t / ave_num, mdapy_t / ave_num])\n", " time_list = np.array(time_list)\n", " return time_list" ] }, { "cell_type": "code", "execution_count": 7, "id": "8e9d398a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Testing system with 200000 atoms...\n", "Testing system with 400000 atoms...\n", "Testing system with 600000 atoms...\n", "Testing system with 800000 atoms...\n", "Testing system with 1000000 atoms...\n", "Testing system with 1800000 atoms...\n", "Testing system with 2600000 atoms...\n", "Testing system with 3400000 atoms...\n" ] } ], "source": [ "time_list_nn = test_nearest_neighbor_average_time()" ] }, { "cell_type": "code", "execution_count": 8, "id": "95d85c49", "metadata": {}, "outputs": [ { "data": { "image/png": "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JbStmuXpXG3rZlAoS36kLPkVEhEREVGx0/XsBOQWZpVK6Hp0Kp6CComhlygXv/32G8LDwzF16lR/l+IhhMDmzZsRExODBg0a+LscIiIqg9TVq8AwNibn4KtUwjA2ptRsUMHQS5SLVatWIS0tDUuXLvV3KR4ffPABXn/9dcTGxsJmsxXb827duhVdu3ZF7dq10ahRI3z00UdwOp35vs6yZcvQoUMH6PV6hISEoGfPnti0aVMRVExERIWhbdcSwa89DW3HVjfn+Go10HZs5RovJRtTAIBCCCH8XURp17RpUwDA8ePH/VxJ/kmSgNXhhE6tglKp8Hc5JdLBgwcxceJEPPnkkxg1apTX8Z07d6JLly7FXtfevXvRvn171KxZE+fPny/y5/v222/x7LPPYsGCBYiJicG1a9fQrVs3NG3aFLGxsVCpVHm6zvvvv4/XX38dAKBWq+FwuO74VSgUmDlzJp599tkiew1ERFRwQpJcqzRo1EU+h7coshVDrw+UxtAbdzUNy3edxu9HL8NidyJAo0LnZtUwtFMD1K0S5u/ySg1JktCiRQscPZq3tQx96cyZM6hfv36xhN6///4b7du3x4QJE/D11197xn/77Tf06dMHH330EV555ZVcr3Ps2DF07NgR7733HkaNGoWwsDDs2LED48ePR1xcHFQqFY4cOYImTZoU5cshIqISriiyFac3lENbD13EU19txqYDF2Cxu341bbE7senABTz11WZsPXTRzxWWHh988AGOHTvml+dWq4tveZjJkyfD6XRi7NixsvHevXujUqVKeOedd5CamprrdWbPno0lS5bgueeeQ3h4OBQKBbp164Y1a9ZAq9XC6XRiyZIlRfUyiIioEJyJyTCv2+LvMgqMobecibuaho+X7oVTyr7B75QEPl66F3FX04q3sFLoxx9/xJtvvunvMopcfHw8tm7dioCAALRq1crrePv27WE2m7FgwYJcr1W3bl3079/fa7xx48ae8cTExMIXTUREPiMkCZZtu5E+dSYsqzfBtv+Iv0sqEIbecmb5rtM5Bl43pySwfNfpYqqo8E6cOIHRo0ejRYsWiI6ORuPGjfHOO+/AZDJ5zvn111+hUqmgUCg8H/Xq1ZNdp1WrVp5jAwcOBADYbDYsWbIEXbt2lXU5P/74Y3zwwQdwzw6qV68e6tWrh9dee012zT179mDIkCFo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NtjSS0REDWL9+vVYv349Nm7c6HX1Nbvdjs8++ywAlRH5Ji0tDT179pSWJKamhaGXKMhYLBbpe6vVGsBKiK577733sHz5crz//vuwWq3Iy8tDXl4ecnNzcfHiRXz99dcYOXIk37MUUMXFxUhPT/e679ixY9i5cyfWrVvXwFWRvzD0EgURh8OBjRs3Sj9v2LABdrs9gBURAatXr8bMmTPx22+/oWPHjoiNjZW+4uLi0Lp1a4wYMQKHDh3C2LFjA10uNWNDhgxB+/btMXDgQGzZsgU2mw1OpxNfffUVpk+fjm3btqFv376BLpNqiaGXKEi89tpr0Gq1eOaZZ6Rtzz77LEJCQrBq1aoAVkbN2YYNG/Doo49CCFHtsWPHjoVOp2uAqoi8W7hwITp16oSff/4ZY8eORZs2bXDfffchIyMDBw4cwODBgwNdItWBTPjym4iIiIiIqAljSy8RERERBT2GXiIiIiIKegy9RERERBT0GHqJiIiIKOgx9BIRERFR0GPoJSIiIqKgx9BLREREREGPoZeIiIiIgh5DLxEREREFPYZeIiIiIgp6DL1EREREFPQYeomIiIgo6DH0EhEREVHQY+glIiIioqDH0EtEREREQY+hl4iIiIiCHkMvEREREQU9ZaALICIiopoRQmDTpk34+OOPkZSUhO7du2P69OmBLouoUWPoJSIiakLy8/MxdepUOBwOvPfee4iPjw90SURNArs3EBERNRFXr17F7bffDqfTiS1btjDwEtUAW3qJiIiaiMmTJyMzMxPffvstlEr+E05UE2zpJSIiagI2bdqE7du347HHHkNMTEygyyFqchh6iYiImoB33nkHAJCUlIS5c+di4MCBGD58ODZs2BDgyoiaBoZeIiKiRk4IgW+++QaxsbG46aabsHr1auzevRuRkZF48MEHsX79+kCXSNToyYQQItBFEBERUeVyc3MRFxeHUaNGYevWrdL2nJwctGrVChEREcjOzg5ghUSNH1t6iYiIGjnXoLWwsDC37XFxcbj11luRk5ODnJycQJRG1GQw9BJRUMnOzsYLL7yA+Ph47NmzJ9DlNAiz2Yzly5ejb9++0Ov16NChA1544QWYzeZAlxZ0ioqK8PXXXzf4dSMjI5GUlIQLFy547IuPj4dSqURERAQA4NixYzh//nwDV0jU+DH0EjUjH374IZRKJWQymfQVFRWF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LJYuXVrn+6iP1/+vf/2rx+vhWqnO19DnGuxYWlqKzMxMnx5T8QNBdX2XV6xYgZCQELzzzjtu20tLS5GamoqYmBhpqjd/OH36NIDrXSuImqWAzhJMRAHhcDjExo0bhUKhEMnJySItLc2nx82YMaPSife//vpraVU2lUolWrduLTQajXj33XelRRQAiHbt2ok33nhDCCHEpUuXREJCggAgWrdu7bZYhMPhcHvc66+/LhwOh7T/8uXL0qIHSUlJ4vz589K+QYMGCQAiKipKpKamCrPZLGw2m/jnP/8pdDqd1wUohBDi4MGDIjIyUrpmxa/Bgwd7LNhw5MgRodfrpRpOnjzp0/NY0enTp6WFPaZOnSot7nDgwAHRpk0bMWvWLK+LI6SlpUkrwsnlcrF161afr/nkk09K96XVakVCQoJo27at2LNnj7Q9PDxcjBkzRnrOX375ZWlfXFycSExMFBcuXKjTfdTH679gwQIBQPTp00ccPHhQCCFEVlaWuOeee0RMTIzP73WbzSZiYmIEALFr165qj7fb7dLCGADEK6+8Uu2iFh999JFQKpVi0aJFwmKxiMzMTHHfffeJyMhIceDAAZ/q9IXdbhdarVYAED///LPfzkvU1DD0EjUzn3/+udBoNB6hLjQ0VGRnZ1f5WIvFIm699dZKV5t6//33RXJysggJCRFDhgwR3377rRCifOWwrl27itWrV4uSkhIhRHmIcoVk15dMJhN/+ctfxPnz56XVtip+qdVqkZaWJh555BGPfTKZTLz00ktSLZs3bxbjxo0T8fHxQqPRiHbt2omZM2dKS+RW5sKFC2L27NkiMTFRqNVqkZycLFJSUjwC79ixY72G42nTplXzCngqKCgQixYtEh06dBBarVa0bdtWjBo1SmzatMnr8bfccovXa+t0OvHUU09Vez2z2SzmzZsnYmJiRFRUlJgzZ464evWqEEKI6dOnC4PBIB555BFp9TPXY6ZMmSJ0Op245ZZbxOHDh+t0H/X1+rtCr+srJCREtGnTRjzyyCNuodoXL7zwggAg/va3v1V53PLly4VSqfSoSalUirfffrvKx+7fv1/cddddIioqStx0001i3rx5Na6zOt99950AIPr16+fX8xI1NTIhGsnIEiIiokakuLgYbdq0wc033+w2h3FT8/zzz2Pp0qX46quvcO+99wa6HKKAYeglIiKqxMqVK7FgwQKcOHECXbp0CXQ5NWa329G5c2d07twZmzdvDnQ5RAHF0EtERFSFSZMmoaioCFu3bg10KTW2bt06LF68GEePHpUWCCFqrjh7AxERURXWrVuHgoICvPnmm4EupUbS0tLwt7/9Ddu3b2fgJQJDLxERUZV0Oh12796N/fv3+21xkvp2+vRpzJ8/H19++SV69+4d6HKIGgV2byAiIvLRf/7zH8hkMkyZMiXQpVTqp59+wpdffomFCxdyyWGiChh6iYiIiCjosXsDEREREQU9hl4iIiIiCnoMvUREREQU9Bh6iYiIiCjoMfQSERERUdBj6CUiIiKioMfQS0RERERBj6GXiIiIiIIeQy8RERERBT2GXiIiIiIKegy9RERERBT0GHqJiIiIKOgx9BIRERFR0GPoJSIiIqKgx9BLREREREGPoZeIiIiIgh5DLxEREREFPYZeIiIiIgp6DL1EREREFPQYeomIiIgo6DH0EhEREVHQY+glIiIioqD3/wGcCUrCzsXJAwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = mp.set_figure(figdpi=200)\n", "colorlist = color_cycler = [\"#4477AA\", \"#EE6677\", \"#228833\"]\n", "N_max = time_list_nn[-1, 0]\n", "exp_max = int(np.log10(N_max))\n", "\n", "x, y = time_list_nn[:, 0] / 10**exp_max, time_list_nn[:, 1]\n", "popt = np.polyfit(x, y, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[0])\n", "ax.plot(x, y, \"o\", label=f\"ovito, k={popt[0]:.1f}\")\n", "\n", "y1 = time_list_nn[:, 2]\n", "popt = np.polyfit(x, y1, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[1])\n", "ax.plot(x, y1, \"o\", label=f\"freud, k={popt[0]:.1f}\")\n", "\n", "y2 = time_list_nn[:, 3]\n", "popt = np.polyfit(x, y2, 1)\n", "ax.plot(x, np.poly1d(popt)(x), c=colorlist[2])\n", "ax.plot(x, y2, \"o\", label=f\"mdapy, k={popt[0]:.1f}\")\n", "\n", "\n", "ax.set_title('12 Nearest-Neighbor Search')\n", "ax.legend()\n", "ax.set_xlabel(\"Number of atoms ($\\\\mathregular{10^%d}$)\" % exp_max)\n", "ax.set_ylabel(\"Time (s)\");" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.0" } }, "nbformat": 4, "nbformat_minor": 5 }