Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extreme efficiency enhancements #151

Draft
wants to merge 97 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
f3e08e2
Implement adaptive rcut_low for cell list overlap detection with lj.
rwsmith7531 Jul 21, 2022
896f6f5
Disable charge correction to adaptive rminsq when charge interactions…
rwsmith7531 Jul 21, 2022
904fab1
Move precalculation of rcut_lowsq.
rwsmith7531 Jul 21, 2022
31a559f
Correctly compute pair minimum qq.
rwsmith7531 Aug 10, 2022
4a15546
Add more detailed Widom insertion output.
rwsmith7531 Aug 10, 2022
2c0b799
Merge branch 'type_pair_rmin' into timed_adaptive_rmin
rwsmith7531 Aug 10, 2022
e943784
Initialize t_cpu to zero prior to parallel section in widom_insert
rwsmith7531 Aug 16, 2022
2c8ec51
Let type max charge be negative and let type minimum charge be positive.
rwsmith7531 Aug 17, 2022
f4fb8a9
Merge branch 'widom_species_timing' into timed_adaptive_rmin
rwsmith7531 Aug 17, 2022
44da93a
Merge branch 'type_pair_rmin' into timed_adaptive_rmin
rwsmith7531 Aug 17, 2022
415042c
Add cell lists for neighbor-finding.
rwsmith7531 Aug 19, 2022
3a38beb
Merge branch 'cbmc_cell_list' into cbmc_cell_list_merge
rwsmith7531 Aug 22, 2022
62b7e98
Fix CBMC cell list bugs.
rwsmith7531 Sep 15, 2022
575b111
Merge branch 'cbmc_cell_list' into cbmc_cell_list_merge
rwsmith7531 Sep 15, 2022
0955297
Estimate appropriate value for Umax to use.
rwsmith7531 Sep 19, 2022
16445ae
Fix CBMC dihedral sampling.
rwsmith7531 Sep 21, 2022
a2a2dfc
Merge branch 'fix_dihedral_selection' into Eij_max_estimation
rwsmith7531 Sep 21, 2022
efd9d41
Flag overlapping cbmc dihedral trials as overlap.
rwsmith7531 Oct 18, 2022
d03ee55
Update test examples that were failing because they were originally g…
rwsmith7531 Oct 21, 2022
e0ad108
Update examples corresponding to the corrected tests.
rwsmith7531 Oct 21, 2022
15f50d4
Add support for reading .xtc trajectory files.
rwsmith7531 Dec 13, 2022
5713224
Merge branch 'fix_dihedral_selection' into Eij_max_estimation
rwsmith7531 Jan 16, 2023
6eabb4f
Add atom pair energy table for intermolecular CBMC trial energies.
rwsmith7531 Jan 17, 2023
a96cd3e
Fix bugs with atompair_nrg_table.
rwsmith7531 Jan 19, 2023
650a294
Add atompair rminsq table feature with limited rminsq resolution.
rwsmith7531 Feb 2, 2023
26eca17
Move some memory allocation from stack to heap to avoid stack buffer …
rwsmith7531 Feb 7, 2023
a58cf8d
Enable custom tolerance list for atompair rminsq table creation.
rwsmith7531 Feb 9, 2023
8c277a2
Merge branch 'read_xtc' into atompair_rmin_xtc
rwsmith7531 Feb 9, 2023
2a55824
Include libgmxfort and libxdrfile and update Makefiles.
rwsmith7531 Feb 15, 2023
e17516b
Add ability to choose whether some large private arrays are kept on t…
rwsmith7531 Feb 20, 2023
821da98
Make recommended Eij_max estimation optional.
rwsmith7531 Feb 21, 2023
e9f7f62
Stop using Eij_ind_ubound before it is set.
rwsmith7531 Feb 23, 2023
3fbeffe
Add documentation for estimating and using atom pair and atom type pa…
rwsmith7531 Feb 23, 2023
228be17
Add documentation for atompair energy table.
rwsmith7531 Feb 27, 2023
1bbc456
Add documentation for trajectory reader changes, including xtc reading.
rwsmith7531 Feb 27, 2023
17ccecb
Merge branch 'read_xtc' into atompair_rmin_xtc
rwsmith7531 Feb 27, 2023
9c63e2a
Merge branch 'atompair_rmin' into atompair_rmin_xtc
rwsmith7531 Feb 27, 2023
a483438
Make cell lists compatible with triclinic boxes.
rwsmith7531 Mar 7, 2023
be091d6
Vectorize Widom nonbonded intermolecular energy calculation
rwsmith7531 Mar 24, 2023
51c6188
Assert vector pointers are contiguous.
rwsmith7531 Mar 24, 2023
c0435b7
Implement first working version of vectorized Widom intermolecular en…
rwsmith7531 Mar 30, 2023
20b077b
Include previously missing division by zero for charge_cut energy cal…
rwsmith7531 Mar 30, 2023
eec2510
Merge branch 'widom_pair_nrg_table' into atompair_rmin
rwsmith7531 Mar 30, 2023
6785e18
Merge branch 'atompair_rmin' into atompair_rmin_xtc
rwsmith7531 Mar 30, 2023
48ec01a
Merge branch 'atompair_rmin_xtc' into triclinic_cell_list
rwsmith7531 Mar 30, 2023
e8db1df
Merge branch 'triclinic_cell_list' into vectorization
rwsmith7531 Mar 30, 2023
e279a3e
Fix new bug in rsq_min binning in widom_insert.
rwsmith7531 Mar 31, 2023
9007cab
Implement first vectorized version that provides speed boost
rwsmith7531 Apr 7, 2023
e5b5b82
Add missing jcharge_coul vector range and add assume_aligned directives.
rwsmith7531 Apr 11, 2023
e2a3c6d
Rearrange atom coordinate arrays for better vectorization.
rwsmith7531 Apr 13, 2023
e31bd0a
Remove references to j_atoms.
rwsmith7531 Apr 14, 2023
abdd9eb
Implement first working version of vectorized and gathered cell list …
rwsmith7531 Apr 19, 2023
bcf271a
Improve vectorization of Widom insertion Ewald reciprocal energy calc…
rwsmith7531 Apr 20, 2023
5913915
Merge branch 'vectorization' into gathered_cell_list
rwsmith7531 Apr 20, 2023
da038f1
WIP successfully compiles.
rwsmith7531 May 3, 2023
68a5a97
First working version
rwsmith7531 May 5, 2023
e1f576f
First version that works with multiple threads
rwsmith7531 May 5, 2023
4ef7722
Enhanced vectorization that only works with one thread unless ensembl…
rwsmith7531 May 25, 2023
afab71b
Enhanced vectorization that works with multiple threads.
rwsmith7531 Jun 6, 2023
7359aaf
Merge branch 'gathered_cell_list' into nonwidom_vectorization.
rwsmith7531 Jun 6, 2023
dd98c82
Use undamped shifted force method for cbmc electrostatics.
rwsmith7531 Jul 4, 2023
15851f3
Fix bug preventing correct Emax usage and estimation for systems with…
rwsmith7531 Jul 31, 2023
e3d881b
Remove temporary debugging output.
rwsmith7531 Jul 31, 2023
6df5a61
Update tests to involve adaptive rmin and atom pair-specific overlap …
rwsmith7531 Aug 1, 2023
571c5f0
Fix bug preventing xyz and H files specified with new syntax from ope…
rwsmith7531 Aug 4, 2023
fb9e1f8
Make lammpstrjconvert.py not center the box by default. Add/update e…
rwsmith7531 Aug 4, 2023
d937b06
Update Makefiles to not require pkg-config.
rwsmith7531 Aug 9, 2023
324d38f
Update Widom examples to match the corresponding tests in the test su…
rwsmith7531 Aug 9, 2023
1c05037
Merge branch 'master' into atompair_rmin_xtc to resolve PR branch con…
rwsmith7531 Aug 9, 2023
75790c3
Include example input for adaptive and specific overlap radii and ene…
rwsmith7531 Aug 9, 2023
fb7dcd1
Add GCMC and GEMC tests using CBMC energy table.
rwsmith7531 Aug 9, 2023
0a1233f
Change CMake settings to keep full RPATH when installing gmxfort.
rwsmith7531 Aug 11, 2023
fc96649
Correct executable name in Makefile.gfortran.openMP
rwsmith7531 Aug 11, 2023
652ca79
Clarify some parts of the documentation.
rwsmith7531 Aug 14, 2023
adbaaee
Attempt to fix linking on MacOS by setting CMake policy CMP0042 NEW.
rwsmith7531 Aug 14, 2023
f7b8d93
Attempt to set CMake policy CMP0042 NEW.
rwsmith7531 Aug 14, 2023
98de8a4
Replace '=' with ',' when specifying linker flag -rpath to be compati…
rwsmith7531 Aug 14, 2023
98c6e1e
Merge branch 'atompair_rmin_xtc' into nonwidom_vectorization
rwsmith7531 Aug 15, 2023
c11e389
Add apparently working bitcell overlap detection and CBMC cell neighb…
rwsmith7531 Sep 12, 2023
058e6b9
Add support for RB torsion dihedrals and convert other dihedral types…
rwsmith7531 Sep 21, 2023
0c7d121
Move all 'none' type dihedrals to the end of dihedral_list.
rwsmith7531 Sep 21, 2023
355cf26
Change 'pentuple angle' to 'quintuple angle' in explanation comment.
rwsmith7531 Sep 21, 2023
098477d
Merge branch 'RB_torsions' into bit_cell_overlap
rwsmith7531 Sep 21, 2023
89a3ea2
Refactor fragment_placement, enabling bitcell overlap detection and m…
rwsmith7531 Oct 13, 2023
b139e9f
Merge branch 'cbmc_sf' into bit_cell_overlap and make various improve…
rwsmith7531 Nov 15, 2023
2011ae9
Correct the triclinic functionality of cell list related enhancements…
rwsmith7531 Dec 18, 2023
7ce03f5
Implement cavity biasing and several optimizations.
rwsmith7531 Mar 11, 2024
8bee4d9
Fix minor timing bug and make changes necessary to compile with gfort…
rwsmith7531 Mar 11, 2024
2727efe
Remove some unused subroutines in energy_routines.f90.
rwsmith7531 Mar 11, 2024
db25d46
Rename load_next_frame.f90 to trajectory_reader_routines.f90
rwsmith7531 Mar 15, 2024
69389c1
Repair molecules when reading wrapped trajectories and optimize cell …
rwsmith7531 Mar 21, 2024
b7ba1ff
Compare read cell matrix this_length against orig_length instead of l…
rwsmith7531 Mar 21, 2024
be7a1b9
Optimize Ewald summation code.
rwsmith7531 Apr 18, 2024
b5bd87c
Make further enhancements to Ewald summations.
rwsmith7531 Apr 19, 2024
201a106
Merge branch 'master' into extreme_efficiency_enhancements
rwsmith7531 Apr 22, 2024
7887319
Merge branch 'improved_ewald_setup' into extreme_efficiency_enhancements
rwsmith7531 May 3, 2024
51784a9
Detect SIMD vector size and alignment from compiler options and adjus…
rwsmith7531 May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Attempt to set CMake policy CMP0042 NEW.
  • Loading branch information
rwsmith7531 committed Aug 14, 2023
commit f7b8d93ef57928be1cc877595c79d4458a108c0b
1 change: 1 addition & 0 deletions Libraries/Src/libgmxfort/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ enable_language ( Fortran )
list ( APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake )

project ( gmxfort NONE )
cmake_policy( SET CMP0042 NEW )

# Set project info
include ( info )
Expand Down
1 change: 0 additions & 1 deletion Libraries/Src/libgmxfort/cmake/info.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

cmake_policy(SET CMP0042 NEW)

set ( PROJECT_DESCRIPTION "Fortran toolkit for analyzing GROMACS simulations" )
set ( PROJECT_URL "https://github.com/wesbarnett/libgmxfort" )
Expand Down
1 change: 1 addition & 0 deletions Libraries/Src/libxdrfile/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
cmake_minimum_required ( VERSION 2.8.8 )
cmake_policy(SET CMP0042 NEW)
enable_language (C)

project ( xdrfile NONE )
Expand Down