{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import util\n", "import os\n", "from IPython.core.display import Markdown\n", "benchmark = 'microsphere'" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "# microsphere benchmark\n", "\n", "The microrsphere benchmark runs a system of star polymers in an explicit solvent using DPD.\n", "These organize into a microspherical droplet. This model is used in the research article:\n", "[Zhang et. al. Simultaneous Nano- and Microscale Control of Nanofibrous Microspheres Self-Assembled from Star-Shaped Polymers. Advanced Materials, pages 3947–3952 , 2015.](http://dx.doi.org/10.1002/adma.201501329)\n", "\n", "\n", "\n", "Parameters:\n", "\n", "* $N = 1,428,364$\n", "* $r_\\mathrm{cut} = 1.0$\n", "* DPD pair force\n", " * See `bmark.py` for full force field specification.\n", "* Harmonic bond force\n", "* Integration: DPD thermostat\n", " * $T=1.0$\n", " * $\\delta t = 0.01$\n" ], "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Markdown(open(os.path.join(benchmark, 'README.md'), 'r').read())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Performance data\n", "\n", "Performance results are reported in hours to complete ten million time steps." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/markdown": [ "| Date | System | Compiler | CUDA | HOOMD | Precision | N | CPU | GPU | Ranks | Time for 10e6 steps (hours)|\n", "|------|--------|----------|------|-------|-----------|---|-----|-----|-------|---------------:|\n", "| 2018/01/15 | comet | gcc 4.9.2 | 8.0 | 2.2.2 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz | **Tesla P100-PCIE-16GB** | 4 | 14.91 |\n", "| 2018/01/15 | comet | gcc 4.9.2 | 8.0 | 2.2.2 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz | **Tesla P100-PCIE-16GB** | 16 | 24.17 |\n", "| 2018/01/15 | comet | gcc 4.9.2 | 8.0 | 2.2.2 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz | **Tesla P100-PCIE-16GB** | 1 | 26.15 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla P100-PCIE-16GB** | 16 | 7.35 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 64 | 7.65 |\n", "| 2016/10/24 | titan | gcc 4.9.3 | 7.5 | 2.1.1 | double | 1,428,364 | 6-Core AMD Opteron(tm) Processor 23 (D0) | **Tesla K20X** | 16 | 15.80 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla P100-PCIE-16GB** | 4 | 15.89 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 16 | 17.52 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla P100-PCIE-16GB** | 1 | 25.79 |\n", "| 2016/10/24 | titan | gcc 4.9.3 | 7.5 | 2.1.1 | double | 1,428,364 | 6-Core AMD Opteron(tm) Processor 23 (D0) | **Tesla K20X** | 4 | 37.61 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K40m** | 4 | 38.06 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 4 | 43.68 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 1 | 81.98 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K40m** | 1 | 100.15 |\n", "| 2016/10/24 | titan | gcc 4.9.3 | 7.5 | 2.1.1 | double | 1,428,364 | 6-Core AMD Opteron(tm) Processor 23 (D0) | **Tesla K20X** | 1 | 101.71 |\n", "| 2016/10/23 | psg | gcc 4.8.5 | 8.0 | 2.1.1 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla M40 24GB** | 1 | 143.05 |\n", "| 2016/10/12 | psg | gcc 4.8.5 | 8.0 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla P100-PCIE-16GB** | 4 | 16.22 |\n", "| 2016/10/12 | psg | gcc 4.8.5 | 8.0 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 8 | 22.50 |\n", "| 2016/10/12 | psg | gcc 4.8.5 | 8.0 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla P100-PCIE-16GB** | 1 | 25.74 |\n", "| 2016/10/13 | psg | gcc 4.8.5 | 7.5 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K40m** | 4 | 38.11 |\n", "| 2016/10/13 | psg | gcc 4.8.5 | 7.5 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla M40 24GB** | 4 | 39.15 |\n", "| 2016/10/12 | psg | gcc 4.8.5 | 8.0 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla K80** | 1 | 82.40 |\n", "| 2016/10/13 | psg | gcc 4.8.5 | 7.5 | 2.1.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz | **Tesla M40 24GB** | 1 | 146.81 |\n", "| 2016/09/13 | flux | gcc 4.9.3 | 7.5 | 2.0.3 | double | 1,428,364 | 6-Core AMD Opteron(tm) Processor 23 (D0) | **Tesla K20X** | 64 | 8.67 |\n", "| 2016/09/13 | collins | gcc 4.8.5 | 7.5 | 2.0.3 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla K40c** | 1 | 77.84 |\n", "| 2016/09/13 | collins | gcc 4.8.5 | 7.5 | 2.0.3 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **TITAN X** | 1 | 83.06 |\n", "| 2016/09/13 | collins | gcc 4.8.5 | 7.5 | 2.0.3 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Quadro M6000** | 1 | 155.31 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Quadro M6000** | 1 | 37.94 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla K40c** | 1 | 59.75 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla K40c** | 1 | 88.60 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Quadro M6000** | 1 | 166.13 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla C2070** | 1 | 202.82 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.3.0 | double | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla C2070** | 1 | 356.29 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.2.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Quadro M6000** | 1 | 37.42 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.2.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla K40c** | 1 | 59.90 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.2.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla C2070** | 1 | 204.49 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.1.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Quadro M6000** | 1 | 25.20 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.1.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla K40c** | 1 | 41.72 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.1.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **GeForce GTX 680** | 1 | 77.66 |\n", "| 2015/12/15 | collins | gcc 4.9.3 | 7.5 | 1.1.1 | single | 1,428,364 | Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz | **Tesla C2070** | 1 | 131.49 |\n" ], "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rows = util.read_rows(benchmark)\n", "table = util.make_table(rows)\n", "Markdown(table)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "The raw code for this IPython notebook is by default hidden for easier reading.To toggle on/off the raw code, click here." ], "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import HTML\n", "\n", "#Hide code blocks\n", "HTML('''\n", "The raw code for this IPython notebook is by default hidden for easier reading.To toggle on/off the raw code, click here.''')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "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.6.4" } }, "nbformat": 4, "nbformat_minor": 1 }