Skip to content

Releases: deepmodeling/deepmd-kit

v2.2.7

27 Oct 19:33
839f4fe
Compare
Choose a tag to compare

New features

Enhancement

  • argcheck: restrict the type of elements in a list by @njzjz in #2945
  • reformat func for further merging with pt version by @zxysbsbzxy in #2946

Build and release

  • deploy developed Python packages to GitHub Pages by @njzjz in #2932

Bug fix

New Contributors

Full Changelog: v2.2.6...v2.2.7

v2.2.6

13 Oct 05:03
2fe6927
Compare
Choose a tag to compare

We list critical bugs in previous versions in #2866.

New features

  • apply compression for se_e2_a_tebd by @nahso in #2841
  • cmake: support LAMMPS in built-in mode; remove kspace requirement by @njzjz in #2891
  • support neighbor stat on GPUs by @njzjz in #2897
  • Add dpgui entry point and dp gui CLI by @njzjz in #2904

Enhancement

Bugfixes

CI/CD

  • fix cuda installation for building wheels by @njzjz in #2879
  • fix source distribution version in build-wheel.yml by @njzjz in #2883
  • run Test CUDA in container by @njzjz in #2892
  • fix a typo in tool.cibuildwheel.linux.environment by @njzjz in #2896

Documentation

  • docs: update DPRc examples to make it compressible by @njzjz in #2874
  • docs: add easy install development version by @njzjz in #2880
  • docs: replace relative URLs in PyPI documentation by @njzjz in #2885
  • docs: mpirun --version to get MPI version by @njzjz in #2915

Full Changelog: v2.2.5...v2.2.6

v2.2.5

27 Sep 02:26
477b785
Compare
Choose a tag to compare

New features

Merge cuda and rocm code

Enhancement

  • lmp: throw error for traditional installation if dependent packages are not installed by @njzjz in #2777
  • lmp: add the header for atomic model deviation by @njzjz in #2778
  • check status of allocate_temp by @njzjz in #2782
  • do not sort atoms in dp test by @njzjz in #2794
  • lmp: fix_dplr use the same type_map from pair_deepmd by @njzjz in #2776
  • check status of allocate_temp by @njzjz in #2797
  • fix np.loadtxt DeprecationWarning by @njzjz in #2802
  • ndarray.tostring -> ndarray.tobytes by @njzjz in #2814
  • tf.accumulate_n -> tf.add_n by @njzjz in #2815
  • tf.test.TestCase.test_session -> tf.test.TestCase.cached_session by @njzjz in #2816
  • make the pairwise DPRc model 2x faster by @njzjz in #2833
  • prod_env_mat: allocate GPU memory out of frame loop by @njzjz in #2832
  • refactor model version convert by @njzjz in #2854
  • bump LAMMPS version to stable_2Aug2023_update1 by @njzjz in #2859

Documentation

Build and release

Bug fixing

  • fix dp test atomic polar; add UTs for dp test by @njzjz in #2785
  • ignore drdq when generalized force loss is not set by @njzjz in #2807
  • lmp: let fparam_do_compute not execute by default by @Yi-FanLi in #2819
  • Fix invalid escape sequence by @njzjz in #2820
  • fix missing version file with setuptools-scm v8 by @njzjz in #2850
  • fix compatibility with NumPy 1.26 by @njzjz in #2853
  • fix finetune RMSE and memory issue by @njzjz in #2860
  • fix the issue of applying modifier multiple times when batch set is load only once by @wanghan-iapcm in #2864

Full Changelog: v2.2.4...v2.2.5

v2.2.4

31 Aug 23:49
6cf7544
Compare
Choose a tag to compare

Breaking changes

  • breaking: dp test all data by default by @njzjz in #2756

New features

Enhancement

Bug fixings

  • fix documentation url in pyproject.toml by @njzjz in #2742
  • fix bug in deepmd.infer.deep_pot.DeepPot by @ChiahsinChu in #2731
  • Use module.__path__[0] instead of module.__file__ by @njzjz in #2769

New Contributors

Full Changelog: v2.2.3...v2.2.4

v2.2.3

08 Aug 05:00
53a1078
Compare
Choose a tag to compare

Breaking changes

  • breaking(lmp): fix definition of cvatom by @njzjz in #2678
  • breaking: change the default value of rcond from 1e-3 to None by @njzjz in #2688
  • breaking: add energy bias to tab potential by @njzjz in #2670

New features

Enhancement

  • refactor: uncouple Descriptor and Fitting from Trainer by @njzjz in #2549
  • ProdEnvMatAMixOp: move filter_ftype out of nsamples loop by @njzjz in #2604
  • set specific mesh shapes for mixed type by @njzjz in #2481
  • add SPDX ID to each file by @njzjz in #2639
  • insert license to C++ header files by @njzjz in #2652
  • Enhance the precision in the data format conversion tool raw_to_set.sh by @Vibsteamer in #2654
  • improve CLI performance by @njzjz in #2696
  • raise error if both v1 and v2 parameters are given by @njzjz in #2714
  • symlink model.ckpt.* to relative paths by @njzjz in #2720

Documentation

Build and release

  • remove unnecessary files from pypi source distribution by @njzjz in #2565
  • fix deepspin.pbtxt by @hztttt in #2566
  • reduce model size for dplr unittest by @Yi-FanLi in #2561
  • Add unittest for dp_ipi by @njzjz in #2574
  • Reduce dp mask pb size and fix bug in dim_fparam/dim_aparam fetching by @dingye18 in #2588
  • fix large files checking by @njzjz in #2564
  • apply the C4 rule (flake8-comprehensions) by @njzjz in #2610
  • build macOS arm64 wheels by @njzjz in #2616
  • fix uploading C++ coverage for test_python workflow by @njzjz in #2622
  • Insert braces after control statements in C++ by @njzjz in #2629
  • cmake: migrate from FindCUDA to CUDA language by @njzjz in #2634
  • set cmake_minimum_required for CUDA/ROCm by @njzjz in #2695
  • report code coverage for cli by @njzjz in #2719
  • bump lammps to stable_2Aug2023 by @njzjz in #2717

Bug fixings

  • cmake: fix a typo in nodejs cmake file by @njzjz in #2563
  • fix dplr: correct type check in get_valid_pairs by @Yi-FanLi in #2580
  • fix_dplr: make pppm_dplr optional by @Yi-FanLi in #2581
  • fix the missing modifier issue of dp compress by @Yi-FanLi in #2591
  • Reduce dp mask pb size and fix bug in dim_fparam/dim_aparam fetching by @dingye18 in #2588
  • import deepmd.op in infer.data_modifier by @Yi-FanLi in #2592
  • fix memory leaking in test_env_mat_a_mix.cc by @njzjz in #2596
  • pass ntypes to sub descriptors in the hybrid descriptor by @njzjz in #2611
  • fix se_atten variable names when suffix is given by @njzjz in #2631
  • fix hybrid compute stat when using mixed_type by @iProzd in #2614
  • fix se_atten compression when suffix is given by @njzjz in #2635
  • docs: fix the link of DOI badge by @njzjz in #2643
  • synchronize in the beginning of all CUDA functions by @njzjz in #2661
  • fix: sort aparam in the Python API by @njzjz in #2666
  • fix: sort aparam in the C++ API by @njzjz in #2667
  • fix se_atten tabulate when exclude_types is given by @njzjz in #2679
  • fix TestDeepPotAPBCExcludeTypes by @njzjz in #2680
  • make only the local GPU visible by @njzjz in #2716

New Contributors

Full Changelog: v2.2.2...v2.2.3

v2.2.2

24 May 05:58
92ca097
Compare
Choose a tag to compare

New features

C and header only C++

  • C API: support fparam and aparam for DeepPot by @njzjz in #2415
  • add read_file_to_string to C API by @njzjz in #2412
  • C: support fparam/aparam for DP model devi by @njzjz in #2486
  • C: add select_by_type and select_map by @njzjz in #2491
  • hpp: add compute_avg, compute_std, etc by @njzjz in #2493
  • migrate from C API to hpp API by @njzjz in #2506
  • allow building lmp/gmx from pre-compiled C library by @njzjz in #2514
  • c: pass errors for read_file_to_string by @njzjz in #2547

Build and release

Enhancements

  • Docs: Fix typo in parallel-training.md by @caic99 in #2438
  • docs: add links to documentation in LAMMPS input by @njzjz in #2453
  • Create DeePMD-kit_Quick_Start_Tutorial_EN.ipynb by @Q-Query in #2459
  • use error->one for get_file_content
    by @njzjz in #2473
  • improve citation information by @njzjz in #2474
  • lmp: extract deepmd version information to a seperated file by @njzjz in #2480
  • docs: fix the link to the bib file by @njzjz in #2485
  • add tests for dos training example by @mingzhong15 in #2488
  • lmp: remove codes to calculate energy deviation by @njzjz in #2492
  • Add training_data key in zinc_se_a_mask.json by @dingye18 in #2489
  • clean unused methods in C++ API by @njzjz in #2498
  • print model deviation of total energy per atom in dp model_devi by @njzjz in #2501
  • raise a clear message when no set is found in a system by @njzjz in #2503
  • catch tf.errors.CancelledError for OOM by @njzjz in #2504
  • lmp: add tests for compute deeptensor/atom by @njzjz in #2507
  • improve messages for model compatability
    by @njzjz in #2518
  • lmp/ipi: remove float precision by @njzjz in #2519
  • remove warnings of batch size for mixed systems training by @njzjz in #2470
  • remove unmaintained dp config by @njzjz in #2540
  • docs: add train-energy-spin and train-fitting-dos to toctree by @njzjz in #2546
  • Dplr unittest by @Yi-FanLi in #2545

Bug fixings

New Contributors

Full Changelog: v2.2.1...v2.2.2

v2.2.1

16 Mar 04:42
3ac8c4c
Compare
Choose a tag to compare

New features

Enhancement

CICD

Bug fixings

  • atype_filter should have the shape of nloc by @njzjz in #2390
  • Fix incompatibility after fixing the incontinuity of se_atten by @iProzd in #2397
  • fix pdf docs by @njzjz in #2401
  • clean old handlers before adding new one by @njzjz in #2400

New Contributors

Full Changelog: v2.2.0...v2.2.1

v2.2.0

14 Mar 16:31
6cdc5bf
Compare
Choose a tag to compare

New features

  • support C API by @njzjz in #1098
    • add get cutoff, numb_types, and type_map to C API by @njzjz in #2061
    • c: support neighbor list input in the C API by @njzjz in #2106
    • c: support DeepPot model deviation in the C API by @njzjz in #2112
    • c: fix ComputeNlist -> ComputeNList in the C API by @njzjz in #2119
    • c: fix bug in hpp float interface and add tests by @njzjz in #2128
    • c: DeepTensor by @njzjz in #2184
    • add a header-only C++ DeepPot class based on C library by @njzjz in #2079
    • c: add DipoleChargeModifier by @njzjz in #2204
    • merge print_summary and add it to C API by @njzjz in #2207
    • support multiple frames DeepPot in C/hpp API by @njzjz in #2309
    • support exceptions in C/hpp APIs by @njzjz in #2344
  • support the multi-task training api by @iProzd in #2093
  • support the finetune api by @iProzd in #1946
  • supports left hands volume by @njzjz in #1956
  • support bfloat16 by @njzjz in #1970
  • support DPRc + type embedding by @njzjz in #2166
  • support the custom training times for each frame by @njzjz in #2208
  • support init_frz_model api for multi model by @iProzd in #2206
  • support sharing fitting network parameters by @njzjz in #2211
  • support dp test with a .txt file specifying the test data dirs by @HuangJiameng in #2235
  • support DeepEval.eval_typeebd to get type embedding by @njzjz in #2244
  • assign type map for LAMMPS pair_style deepmd by @njzjz in #2267
  • support restarting from compressed checkpoints by @njzjz in #2253
  • update frame parameter by LAMMPS compute command by @mingzhong15 in #2254
  • nvnmd supports floating point number training and inference by @LiuGroupHNU in #2225
  • support multiple frames inference with C++ DeepPot by @njzjz in #2305
  • Implementation of se_a_mask op by @dingye18 in #2313
  • support exclude_types for se_atten by @njzjz in #2315
  • support mixed numbers of atoms with mixed_type by @njzjz in #2345
  • add C++/C/hpp mixed type inference interface by @njzjz in #2360

Enhancements

Python

Core

C++

  • uncouple model precision and interface precision by @njzjz in #2031
  • merge double and float cc library by @njzjz in #2033

OP

LAMMPS

  • lmp: throw errors when 6-element atomic virial requested by @njzjz in #1983
  • enable ttm without a patch by @njzjz in #2055
  • bump lammps to stable_23Jun2022_update2 by @njzjz in #2053
  • Change gridcomm into grid3d in pppm_dplr.cpp to support LAMMPS after 20221222 by @Yi-FanLi in #2300
  • bump LAMMPS version to stable_23Jun2022_update3 by @njzjz in #2336

Build and release

  • CMake
    • use CPP_CXX_ABI for Python libraries by @njzjz in #1960
    • find protobuf headers in an automatic way by @njzjz in #1975
    • search TF deps from LD_LIBRARY_PATH; eliminate errors by @njzjz in #1976
    • CMake config
    • refactor USE_TF_PYTHON_LIBS by @njzjz in #2177
    • add an option to enable native compilation optimization by @njzjz in #2151
    • added option to read HIPCC_FLAGS environment variable. by @sigbjobo in #2269
    • fix cmake syntax for USE_TF_PYTHON_LIBS by @njzjz in #2291
    • remove dependencies on _pywrap_tensorflow_internal and libpython for TF 2.12 by @njzjz in #2335
    • improve cxx11 abi flags and messages for Red Hat Developer Toolset by @njzjz in #2363
  • Python and wheel building
    • migrate cibuildwheel configs to pyproject.toml and add tests by @njzjz in #2000
    • migrate from setup.cfg to pyproject.toml by @njzjz in #2011
    • migrate to PEP 517 and PEP 621 by @njzjz in #2035
    • store TF version in the wheel's extras_require by @njzjz in #2084
    • fix win64 builds and add win64 wheels by @njzjz in #2085
    • enable CUDA for linux-64 wheels by @njzjz in #2087
    • add macos-64 wheels by @njzjz in #2088
    • pin manylinux image to a specific tag for GCC 11 by @njzjz in #2137
    • retag wheels to py37-none-<platform> by @njzjz in #2180
    • build wheels for Linux ARM64 by @njzjz in #2179
    • pip install lammps module by @njzjz in #2186
    • pass --prefer-binary to cibuildwheel by @njzjz in #2274
    • package dp_ipi in the PyPI wheels by @njzjz in #2320
  • build_tf.py
    • build_tf.py: support ROCm; bump to TF 2.10 by @njzjz in #2030
    • build_tf.py: export LD_LIBRARY_PATH when executing configure by @njzjz in #218...
Read more

v2.2.0-beta.0

19 Dec 09:23
89d0d23
Compare
Choose a tag to compare
v2.2.0-beta.0 Pre-release
Pre-release

New features

Enhancements

Python

  • dp test output files: energy per atom, virial per atom by @likefallwind in #2029
  • log HIP_VISIBLE_DEVICES for ROCm by @njzjz in #2032
  • move run_config.ini into the root directory by @njzjz in #2098
  • skip get_gpus subprocess when TF is cpu only by @njzjz in #2135
  • add Optional to type hints when default is None by @njzjz in #2139
  • optimize FioBin.save by @njzjz in #2143
  • open the graph file only once in compress by @njzjz in #2144
  • refactor enable_compression by @njzjz in #2147
  • store energy bias with interface precision by @njzjz in #2174

Core

  • dynamically load CUDA runtime library by @njzjz in #2082

C++

  • uncouple model precision and interface precision by @njzjz in #2031
  • merge double and float cc library by @njzjz in #2033
  • add shuffle_exclude_empty to DeepPot.compute(nlist, atomic) by @njzjz in #2111

OP

LAMMPS

  • lmp: throw errors when 6-element atomic virial requested by @njzjz in #1983
  • enable ttm without a patch by @njzjz in #2055
  • bump lammps to stable_23Jun2022_update2 by @njzjz in #2053

Build and release

  • CMake
    • use CPP_CXX_ABI for Python libraries by @njzjz in #1960
    • find protobuf headers in an automatic way by @njzjz in #1975
    • search TF deps from LD_LIBRARY_PATH; eliminate errors by @njzjz in #1976
    • CMake config
    • refactor USE_TF_PYTHON_LIBS by @njzjz in #2177
    • add an option to enable native compilation optimization by @njzjz in #2151
  • Python and wheel building
    • migrate cibuildwheel configs to pyproject.toml and add tests by @njzjz in #2000
    • migrate from setup.cfg to pyproject.toml by @njzjz in #2011
    • migrate to PEP 517 and PEP 621 by @njzjz in #2035
    • store TF version in the wheel's extras_require by @njzjz in #2084
    • fix win64 builds and add win64 wheels by @njzjz in #2085
    • enable CUDA for linux-64 wheels by @njzjz in #2087
    • add macos-64 wheels by @njzjz in #2088
    • pin manylinux image to a specific tag for GCC 11 by @njzjz in #2137
    • retag wheels to py37-none-<platform> by @njzjz in #2180
    • build wheels for Linux ARM64 by @njzjz in #2179
    • pip install lammps module by @njzjz in #2186
  • build_tf.py
    • build_tf.py: support ROCm; bump to TF 2.10 by @njzjz in #2030
    • build_tf.py: export LD_LIBRARY_PATH when executing configure by @njzjz in #2185
  • build, package, and release C library by @njzjz in #2072
  • perceive LAMMPS version for built-in mode by @njzjz in #1950

Test

Code cleanup

Documents

Bug fixings

Read more

v2.1.5

23 Sep 08:10
6e3d4a6
Compare
Choose a tag to compare

New features:

Enhancements:

  • remove white space from train_attr/training_script (#1870)
  • replace FastGFile with GFile. FastGFile throws a deprecated warning. (#1874)
  • docs: make warnings more prominent (#1879)
  • add examples to cli help (#1887)
  • remove get_platform in setup.py (#1897)
  • bump to C++ 17 for TF 2.10 (#1898)
  • compare converted lr with almost equal (#1901)
  • add tutorial and publication links to docs (#1904)
  • LAMMPS: Use of “override” instead of “virtual” (#1915)
  • highlight LAMMPS codes in doc (#1921)

Bug fixings:

  • support initilize parameters from a fitting with suffix (#1885)
  • fix DeprecationWarning of imp (#1896)
  • find protobuf headers from extra paths (#1910)
  • Fix bugs when init_frz_model using tebd. (#1891)
  • Use GeluCustom as operator name (#1918)
  • handle float point error in sys_probs (#1919)
  • fix model conversion of 0.12 (#1941)