{"id":4454,"date":"2025-05-20T18:13:20","date_gmt":"2025-05-20T09:13:20","guid":{"rendered":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/?p=4454"},"modified":"2025-12-05T12:45:18","modified_gmt":"2025-12-05T03:45:18","slug":"gromacs-2025-2%e3%81%aecentos-7%e3%81%b8%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%83%a1%e3%83%a2%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/2025\/05\/20\/gromacs-2025-2%e3%81%aecentos-7%e3%81%b8%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%83%a1%e3%83%a2%e3%80%82\/","title":{"rendered":"Gromacs 2025.2\u306eCentOS 7\u3078\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30e1\u30e2\u3002"},"content":{"rendered":"\n\n\n<h2 class=\"wp-block-heading\">GROMACS 2025.2\u306eCentOS 7\uff08CUDA 12.3; TITAN RTX\uff09\u3078\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h2>\n\n\n\n<pre class=\"\u201dline-numbers\u201d\"><code class=\"\" data-line=\"\">$ wget https:\/\/ftp.gromacs.org\/gromacs\/gromacs-2025.2.tar.gz\n$ tar xvzf gromacs-2025.2.tar.gz\n$ cd gromacs-2025.2\n$ mkdir build\n$ cd build\n$ scl enable devtoolset-11 bash\n$ sudo rm \/usr\/local\/cuda\n$ sudo ln -s \/usr\/local\/cuda-12.3 \/usr\/local\/cuda\n$ ccmake .. -DGMX_BUILD_OWN_FFTW=ON -DREGRESSIONTEST_DOWNLOAD=ON -DGMX_API=OFF -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=\/usr\/local\/gromacs\/2025.2_cuda -DGMX_GPU=CUDA -DCMAKE_CUDA_ARCHITECTURES=native\n$ make -j 18\n$ make check -j 18\n$ sudo make install\n$ source \/usr\/local\/gromacs\/2025.2_cuda\/bin\/GMXRC<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">GROMACS 2025.3 with support for Neutral Network Potentials\u306eAlmaLinux 8\uff08CUDA 12.8; TITAN RTX\uff09\u3078\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3068\u30c6\u30b9\u30c8<\/h2>\n\n\n\n<p>\u53c2\u8003: <a href=\"https:\/\/ccportal.ims.ac.jp\/en\/node\/3847\">Gromacs 2025.2 with CUDA support &#8211; \u8a08\u7b97\u79d1\u5b66\u7814\u7a76\u30bb\u30f3\u30bf\u30fc<\/a><\/p>\n\n\n\n<p>ANI is an abbreviation for <em>ANAKIN-ME<\/em> (Accurate NeurAl networK engINe for Molecular Energies), a&nbsp;neural network potential framework designed to provide quantum chemistry accuracy (close to DFT) for molecular energies and forces, but with the speed of classical force fields. ANI-2x can be used to simulate organic molecules containing seven elements (H, C, N, O, F, Cl, and S).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u30c6\u30b9\u30c8\u7d50\u679c<\/h3>\n\n\n\n<p>System: <em>N<\/em>-Acetyl-L-alanine methylamide (22 atoms) in water (6765 atoms)<\/p>\n\n\n\n<p>dt = 0.001 ; (1 fs)<\/p>\n\n\n\n<p>tcoup = V-rescale<\/p>\n\n\n\n<p>pcoup = C-rescale<\/p>\n\n\n\n<p>GPU, NVIDIA TITAN-RTX<\/p>\n\n\n\n<p>command: gmx mdrun -deffnm md -ntmpi 1 -ntomp 1 -resethway -noconfout<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><tbody><tr><td>Conditions<\/td><td>Performance (ns\/day)<\/td><td>Speed up<\/td><\/tr><tr><td>NNP\/MM (TorchANI) with GMX_NN_DEVICE=cpu (1 CPU)<\/td><td>2.482<\/td><td>x 1<\/td><\/tr><tr><td>NNP\/MM (TorchANI) with GMX_NN_DEVICE=cuda<\/td><td>3.901<\/td><td>x 1.6<\/td><\/tr><tr><td>NNP\/MM (TorchANI\/NNPOps)<\/td><td>57.793<\/td><td>x 23<\/td><\/tr><tr><td>MM with 1 CPU<\/td><td>16.515<\/td><td>(x 6.7)<\/td><\/tr><tr><td>MM with 1 CPU and 1 GPU<\/td><td>635.914<\/td><td>(x 256)<\/td><\/tr><tr><td>MM with 2 CPU and 1 GPU<\/td><td>706.947<\/td><td>(x 285)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">libtorch\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h3>\n\n\n\n<pre class=\"prettyprint\">$ sudo dnf install gcc-toolset-13 ninja-build cudnn-cuda-12 cudss-cuda-12 cusparselt-cuda-12 libnccl libnccl-devel openblas\n$ conda create -n libtorch271 python=3.13\n$ conda activate libtorch271\n(libtorch271) $ conda install numpy pyyaml typing_extensions\n(libtorch271) $ scl enable gcc-toolset-13 bash\n(libtorch271) $ wget https:&#47;&#47;github.com&#47;pytorch&#47;pytorch&#47;releases&#47;download&#47;v2.7.1&#47;pytorch-v2.7.1.tar.gz\n(libtorch271) $ tar xvzf pytorch-v2.7.1.tar.gz\n(libtorch271) $ cd pytorch-v2.7.1\n(libtorch271) $ cd third_party\n(libtorch271) $ git clone https:&#47;&#47;github.com&#47;NVIDIA&#47;nccl.git\n(libtorch271) $ cd nccl\n(libtorch271) $ git checkout v2.21.5-1 \n(libtorch271) $ cd ..&#47;..&#47;\n(libtorch271) $ mkdir build &amp;&amp; cd build\n(libtorch271) $ cmake .. -GNinja -DBLAS=OpenBLAS -DBUILD_FUNCTORCH=OFF -DBUILD_PYTHON=False\\\n -DBUILD_TEST=True -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=&#47;opt&#47;libtorch&#47;2.7.1&#47;cu128\\\n -DPython_EXECUTABLE=&#47;home&#47;user&#47;miniforge3&#47;envs&#47;libtorch271&#47;bin&#47;python -DTORCH_BUILD_VERSION=2.7.1\\\n -DCMAKE_PREFIX_PATH=&#47;usr&#47;local&#47;cuda-12.8 -DUSE_CUDA=ON -DUSE_CUDNN=ON -DUSE_CUDSS=ON -DUSE_CUSPARSELT=ON\\\n -DUSE_NUMPY=True -DCUDA_NVRTC_SHORTHASH=c3430e8b\n(libtorch271) $ ninja -j2\n(libtorch271) $ sudo ninja install\n(libtorch271) $ cd ..&#47;..&#47;\n(libtorch271) $ conda deactivate<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">GROMACS 2025.3\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h3>\n\n\n\n<pre class=\"prettyprint\">$ wget https:&#47;&#47;ftp.gromacs.org&#47;gromacs&#47;gromacs-2025.3.tar.gz\n$ wget https:&#47;&#47;www.fftw.org&#47;fftw-3.3.10.tar.gz\n$ tar xvzf gromacs-2025.3.tar.gz\n$ cd gromacs-2025.3\n$ mkdir build &amp;&amp; cd build\n$ export FFTW_PATH=${BASEDIR}&#47;fftw-3.3.10.tar.gz\n$ export Torch_DIR=&#47;opt&#47;libtorch&#47;2.7.1&#47;cu128\n$ &#47;usr&#47;local&#47;cmake&#47;4.1.0&#47;bin&#47;cmake .. -DCMAKE_PREFIX_PATH=&#34;${Torch_DIR};&#47;usr&#47;local&#47;cuda-12.8&#34;\\\n -DCMAKE_INSTALL_PREFIX=&#47;usr&#47;local&#47;gromacs&#47;2025.3_cuda_torchcu128 -DGMX_GPU=CUDA -DGMX_USE_CUFFTMP=OFF\\\n -DGMX_NNPOT=TORCH -DCAFFE2_USE_CUDNN=ON -DCAFFE2_USE_CUSPARSELT=ON -DUSE_CUDSS=ON\\\n -DPython_EXECUTABLE=&#47;home&#47;user&#47;miniforge3&#47;envs&#47;libtorch271&#47;bin&#47;python -DGMX_BUILD_OWN_FFTW=ON\\\n -DGMX_BUILD_OWN_FFTW_URL=${FFTW_PATH} -DCMAKE_CUDA_COMPILER=&#47;usr&#47;local&#47;cuda-12.8&#47;bin&#47;nvcc\\\n -DCMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES=&#47;usr&#47;local&#47;cuda-12.8&#47;targets&#47;x86_64-linux&#47;lib\\\n -DCUDA_TOOLKIT_ROOT_DIR=&#47;usr&#47;local&#47;cuda-12.8 -DGMX_INSTALL_NBLIB_API=OFF\\\n -DCUDA_NVRTC_SHORTHASH=c3430e8b -DREGRESSIONTEST_DOWNLOAD=ON\\\n -Dnvtx3_dir=&#47;usr&#47;local&#47;cuda-12.8&#47;targets&#47;x86_64-linux&#47;include&#47;nvtx3\n$ make -j37\n$ make -j37 check\n$ sudo make install<\/pre>\n\n\n<h3>Pretrained model\u306e\u30a8\u30af\u30b9\u30dd\u30fc\u30c8<\/h3>\n<p>\u53c2\u8003: <a href=\"https:\/\/manual.gromacs.org\/nightly\/reference-manual\/special\/nnpot.html\">Neural Network Potentials &#8211; GROMACS Reference Manual<\/a><\/p>\n<pre class=\"prettyprint\">$ conda activate libtorch271\n(libtorch271) $ pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https:&#47;&#47;download.pytorch.org&#47;whl&#47;cu128\n(libtorch271) $ conda install jupyterlab ipywidgets\n(libtorch271) $ conda install cuda-version==12.8\n(libtorch271) $ conda install -c conda-forge torchani nnpops<\/pre>\n<p>\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb: <a href=\"https:\/\/github.com\/lmuellender\/gmx-nnpot-wrapper\">lmuellender\/gmx-nnpot-wrapper &#8211; GitHub<\/a><\/p>\n<pre class=\"prettyprint\">(libtorch271) $ cd gmx-nnpot-wrapper-main<\/pre>\n<p>\u4ee5\u4e0b\u306ePython script\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210<\/p>\n<pre class=\"prettyprint\">import os\nimport torch\nfrom models import GmxANIModel\nimport torchani\n\n# \u30c7\u30d0\u30a4\u30b9\u8a2d\u5b9a\ndevice = &#39;cuda&#39; if torch.cuda.is_available() else &#39;cpu&#39;\n\n# TorchANI \u306e site-packages \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\nta_dir = os.path.dirname(torchani.__file__)\n\n# cuAEV \u306e .so \u30d5\u30a1\u30a4\u30eb\u3092\u63a2\u7d22\ndef find_cuaev_so(base):\n    for fname in os.listdir(base):\n        if &#34;cuaev&#34; in fname and fname.endswith(&#34;.so&#34;):\n            return os.path.join(base, fname)\n    return None\n\ncuaev_so = find_cuaev_so(ta_dir)\nassert cuaev_so, f&#34;cuAEV \u306e .so \u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093: {ta_dir}&#34;\n\n# \u30e2\u30c7\u30eb\u4f5c\u6210\nmodel = GmxANIModel(version=2, device=device)\n\n# TorchScript \u4fdd\u5b58\u6642\u306b\u62e1\u5f35\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u30d1\u30b9\u3092\u57cb\u3081\u8fbc\u3080\nsave_path = &#39;models&#47;ani2x.pt&#39;\nextra_files = {&#34;extension_libs&#34;: cuaev_so}\n\ntorch.jit.script(model).save(save_path, _extra_files=extra_files)\n\nprint(f&#34;Saved model to {save_path} with cuAEV library: {cuaev_so}&#34;)\n\n# \u30e2\u30c7\u30eb\u4f5c\u6210\nmodel = GmxANIModel(use_opt=&#39;cuaev&#39;, version=2, device=device)\n\n# TorchScript \u4fdd\u5b58\u6642\u306b\u62e1\u5f35\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u30d1\u30b9\u3092\u57cb\u3081\u8fbc\u3080\nsave_path = &#39;models&#47;ani2x_cuaev.pt&#39;\nextra_files = {&#34;extension_libs&#34;: cuaev_so}\n\ntorch.jit.script(model).save(save_path, _extra_files=extra_files)\n\nprint(f&#34;Saved model to {save_path} with cuAEV library: {cuaev_so}&#34;)\n\nsave_path = &#39;models&#47;ani2x_nnpops.pt&#39;\n\nfrom models import GmxANIModel\n# \u30c7\u30d0\u30a4\u30b9\u8a2d\u5b9a\ndevice = &#39;cuda&#39; if torch.cuda.is_available() else &#39;cpu&#39;\n# example atomic number tensor for N-acetyl-L-alanine methylamide\natomic_numbers = torch.tensor(&#91;1,6,1,1,6,8,7,1,6,1,6,1,1,1,6,8,7,1,6,1,1,1&#93;, device=device)\nmodel = GmxANIModel(use_opt=&#39;nnpops&#39;, atomic_numbers=atomic_numbers, version=2, device=device)\n\n# nnpops can be found by checking for torch extension library\next_lib = &#91;&#93;\nfor lib in torch.ops.loaded_libraries:\n    if lib:\n        ext_lib.append(lib)\n# if multiple extensions are found, they are separated by &#39;:&#39;\next_lib = &#34;:&#34;.join(ext_lib)\nprint(&#34;loaded extension libraries: &#34;, ext_lib)\nextra_files = {}\nextra_files&#91;&#39;extension_libs&#39;&#93; = ext_lib\n\ntorch.jit.script(model).save(save_path, _extra_files=extra_files)<\/pre>\n<pre class=\"prettyprint\">(libtorch271) $ cd examples\n(libtorch271) $ source &#47;usr&#47;local&#47;gromacs&#47;2025.3_cuda_torchcu128&#47;bin&#47;GMXRC\n(libtorch271) $ export LD_LIBRARY_PATH=&#34;$CONDA_PREFIX&#47;lib:$LD_LIBRARY_PATH&#34;<\/pre>\n<h3>Neural Network Potential (NNP)\/MM\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u30c6\u30b9\u30c8\uff08<em>N<\/em>-acetyl-L-alanine methylamide in water\uff09<\/h3>\n<h4>Using ani2x.pt with CPU<\/h4>\n<pre class=\"prettyprint\">(libtorch271) $ export GMX_NN_DEVICE=cpu\n(libtorch271) $ gmx grompp -f md.mdp -c conf.gro -p topol.top -o md.tpr\nNeural network potential Interface is active, topology was modified!\nNumber of NN input atoms: 22\nNumber of regular atoms: 6765\nBonds removed: 62\nAngles removed: 36\nDihedrals removed: 42\nConnection-only (type 5) bonds added: 21\n(libtorch271) $ gmx mdrun -deffnm md -ntmpi 1 -ntomp 8\n                      :-) GROMACS - gmx mdrun, 2025.3 (-:\n\nReading file md.tpr, VERSION 2025.3 (single precision)\nChanging nstlist from 15 to 100, rlist from 1.2 to 1.302\n\n1 GPU selected for this run.\nMapping of GPU IDs to the 2 GPU tasks in the 1 rank on this node:\n  PP:0,PME:0\nPP tasks will do (non-perturbed) short-ranged interactions on the GPU\nPP task will update and constrain coordinates on the GPU\nPME tasks will do all aspects on the GPU\nUsing 1 MPI thread\nUsing 1 OpenMP threads \n    \n               Core t (s)   Wall t (s)        (%)\n       Time:      174.068      174.069      100.0\n                 (ns&#47;day)    (hour&#47;ns)\nPerformance:        2.482        9.669<\/pre>\n<h4>Using ani2x.pt with CUDA<\/h4>\n<pre class=\"prettyprint\">(libtorch271) $ export GMX_NN_DEVICE=cuda\n(libtorch271) $ gmx mdrun -deffnm md -ntmpi 1 -ntomp 1\n\n               Core t (s)   Wall t (s)        (%)\n       Time:      110.756      110.756      100.0\n                 (ns&#47;day)    (hour&#47;ns)\nPerformance:        3.901        6.152\n\nGROMACS reminds you: &#34;Go back to the rock from under which you came&#34; (Fiona Apple)\n\nSegmentation fault (\u30b3\u30a2\u30c0\u30f3\u30d7)<\/pre>\n<h4>Using ani2x_cuaev.pt<\/h4>\n<pre class=\"prettyprint\">(libtorch271) $ sed &#39;s&#47;ani2x.pt&#47;ani2x_cuaev.pt&#47;g&#39; md.mdp &gt; md_cuaev.mdp\n(libtorch271) $ gmx grompp -f md_cuaev.mdp -c conf.gro -p topol.top -o md_cuaev.tpr\nRuntimeError: AssertionError: cuaev currently does not support PBC<\/pre>\n<h4>Using ani2x_nnpops.pt<\/h4>\n<pre class=\"prettyprint\">(libtorch271) $ sed &#39;s&#47;ani2x.pt&#47;ani2x_nnpops.pt&#47;g&#39; md.mdp &gt; md_nnpops.mdp\n(libtorch271) $ gmx grompp -f md_nnpops.mdp -c conf.gro -p topol.top -o md_nnpops.tpr -maxwarn 1\n(libtorch271) $ gmx mdrun -v -deffnm md_nnpops -ntmpi 1 -ntomp 1\n      R E A L   C Y C L E   A N D   T I M E   A C C O U N T I N G\n\nOn 1 MPI rank\n\n Activity:              Num   Num      Call    Wall time         Giga-Cycles\n                        Ranks Threads  Count      (s)         total sum    %\n--------------------------------------------------------------------------------\n Neighbor search           1    1         51       0.149          0.447   2.0\n Launch PP GPU ops.        1    1       9951       0.206          0.618   2.8\n Force                     1    1       5001       0.019          0.058   0.3\n NN potential              1    1       5001       6.717         20.153  89.8\n PME GPU mesh              1    1       5001       0.144          0.432   1.9\n Wait GPU NB local         1    1       5001       0.001          0.004   0.0\n Wait GPU state copy       1    1      10256       0.012          0.036   0.2\n NB X&#47;F buffer ops.        1    1         51       0.001          0.003   0.0\n Write traj.               1    1         51       0.063          0.190   0.8\n Kinetic energy            1    1        101       0.004          0.013   0.1\n Rest                                              0.159          0.477   2.1\n--------------------------------------------------------------------------------\n Total                                             7.476         22.430 100.0\n--------------------------------------------------------------------------------\n Breakdown of PME mesh activities\n--------------------------------------------------------------------------------\n Wait PME GPU gather       1    1       5001       0.001          0.003   0.0\n Reduce GPU PME F          1    1       5001       0.001          0.002   0.0\n Launch PME GPU ops.       1    1      45009       0.133          0.400   1.8\n--------------------------------------------------------------------------------<\/pre>\n<h2>Performance\u306e\u6bd4\u8f03\u691c\u8a3c<\/h2>\n<h3>GROMACS 2025.2<\/h3>\n<p>\u5165\u529b\u30c7\u30fc\u30bf\u3068\u3057\u3066<a href=\"https:\/\/ftp.gromacs.org\/pub\/benchmarks\/ADH_bench_systems.tar.gz\">ADH cubic\u306e\u30c6\u30b9\u30c8\u30c7\u30fc\u30bf<\/a>\uff08\u539f\u5b50\u6570134,177\uff09\u3092\u4f7f\u7528\u3002CPU, Intel Core i9-9980XE 3.00GHz; GPU, NVIDIA TITAN-RTX\u3002<\/p>\n<h5>CPU only (8 cores)<\/h5>\n<pre class=\"prettyprint\">$ gmx mdrun -deffnm adh_cubic_test2025.2 -pin on -resethway -noconfout -ntmpi 1 -ntomp 8 -bonded cpu -update cpu -nb cpu -pme cpu<\/pre>\n<pre class=\"prettyprint\">starting mdrun &#39;NADP-DEPENDENT ALCOHOL DEHYDROGENASE in water&#39;\n10000 steps,     20.0 ps.\n\nstep 5000: resetting all time and cycle counters\n\n               Core t (s)   Wall t (s)        (%)\n       Time:      446.183       55.773      800.0\n                 (ns&#47;day)    (hour&#47;ns)\nPerformance:       15.494        1.549<\/pre>\n<h5>1 GPU + 8 CPU<\/h5>\n<pre class=\"prettyprint\">$ gmx mdrun -deffnm adh_cubic_test2025.2 -pin on -resethway -noconfout -ntmpi 1 -ntomp 8 -bonded gpu -update gpu -nb gpu -pme gpu -nsteps 20000<\/pre>\n<pre class=\"prettyprint\">1 GPU selected for this run.\nMapping of GPU IDs to the 2 GPU tasks in the 1 rank on this node:\n  PP:0,PME:0\nPP tasks will do (non-perturbed) short-ranged and most bonded interactions on the GPU\nPP task will update and constrain coordinates on the GPU\nPME tasks will do all aspects on the GPU\nUsing 1 MPI thread\nUsing 8 OpenMP threads \n\nstarting mdrun &#39;NADP-DEPENDENT ALCOHOL DEHYDROGENASE in water&#39;\n20000 steps,     40.0 ps.\n\nstep 10000: resetting all time and cycle counters\n\n               Core t (s)   Wall t (s)        (%)\n       Time:       71.585        8.950      799.8\n                 (ns&#47;day)    (hour&#47;ns)\nPerformance:      193.089        0.124<\/pre>","protected":false},"excerpt":{"rendered":"<p>GROMACS 2025.2\u306eCentOS 7\uff08CUDA 1 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_uag_custom_page_level_css":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"_locale":"ja","_original_post":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/?p=4454","footnotes":""},"categories":[5],"tags":[],"class_list":["post-4454","post","type-post","status-publish","format-standard","hentry","category-5","ja"],"aioseo_notices":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"onepress-blog-small":false,"onepress-small":false,"onepress-medium":false},"uagb_author_info":{"display_name":"RCY","author_link":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/author\/charlesy\/"},"uagb_comment_info":0,"uagb_excerpt":"GROMACS 2025.2\u306eCentOS 7\uff08CUDA 1 ...","_links":{"self":[{"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/posts\/4454","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/comments?post=4454"}],"version-history":[{"count":34,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/posts\/4454\/revisions"}],"predecessor-version":[{"id":5685,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/posts\/4454\/revisions\/5685"}],"wp:attachment":[{"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/media?parent=4454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/categories?post=4454"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ag.kagawa-u.ac.jp\/charlesy\/wp-json\/wp\/v2\/tags?post=4454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}