- 05 Sep, 2024 1 commit
-
-
Anton Gorenko authored
Optimize findBlocksWithInteractions * Replace volatile shared mem accesses with shuffles; * Add NUM_TILES_IN_BATCH for processing block1 by multiple warps (for small systems); * Cherry-pick missing changes from .cu; * Tune MAX_BITS_FOR_PAIRS depending on device and the system size; * Store single pairs immediately (if there are any), this allows not to store flags to shared memory and filter buffer and flagsBuffer after saving single pairs; * Use fma explicitly and sign bit for better device code; * Use CDNA's MFMA with singe/mixed precision; * On CDNA the coarse grained stage processes warpSize blocks for one block1, the fine grained stage checks atoms of two block2 vs atoms of the same block1, singlePairs and interactingAtoms are also stored by warps, not half-warps; Optimize findBlockBounds * Use shuffles; * Use executeKernelFlat; * Process 2 tiles per warp 64 on CDNA; * Use more uniformly distributed keys when sorting blocks; Use compareInt2LargeSIMD when tile size < SIMD width Fix exclusion tiles sorting on AMD CDNA (64 threads per wave) The nonbonded kernel uses USE_NEIGHBOR_LIST (useNeighborList) so host code also must check it instead of useCutoff. See also https://github.com/openmm/openmm/issues/3462
-
- 01 Sep, 2024 1 commit
-
-
Anton Gorenko authored
Port changes in CUDA backend to HIP Fix a warning about arithmetic operations on void* in HipArray::uploadSubArray Fix "Error Initializing context ROCm 5.3.0" https://github.com/StreamHPC/openmm-hip/issues/3 hipDeviceSetCacheConfig returns hipErrorNotSupported on 5.3 Co-authored-by:Nick Curtis <nicholas.curtis@amd.com>
-
- 11 Dec, 2023 1 commit
-
-
Peter Eastman authored
* Improved sorting of blocks when building neighbor list * Improved block sorting for OpenCL * Made sort keys more evenly distributed
-
- 24 Jul, 2023 1 commit
-
-
Peter Eastman authored
* Use large blocks to optimize building the neighbor list * Large blocks optimization for OpenCL * Fix test failures * Select whether to use large blocks based on system size
-
- 23 May, 2023 1 commit
-
-
Peter Eastman authored
* Skip neighbor list for very small systems * Fixed typos * Don't skip box size check when not using neighbor list * Made test larger to ensure it uses neighbor list
-
- 12 Aug, 2022 1 commit
-
-
Peter Eastman authored
-
- 27 Jan, 2022 1 commit
-
-
Peter Eastman authored
* Fixed potential invalid memory access * Fixed exception
-
- 20 Aug, 2020 1 commit
-
-
peastman authored
* Fixed range overflow with very large numbers of atoms * More fixes to overflow with large numbers of atoms * Fix test failures
-
- 08 Jan, 2020 1 commit
-
-
peastman authored
* Began creating common compute framework to unify code between CUDA and OpenCL * Began OpenCL implementation of common compute framework * Common implementation of CMMotionRemover * CUDA implementation of common compute interface * Converted HarmonicBondForce to common compute API * Converted standard bonded forces to common compute API * Converted ExpressionUtilities to common compute API * Created ComputeParameterSet * Converted custom bonded forces to common compute API * Converted CustomCentroidBondForce to common compute API * Converted CustomManyParticleForce to common compute API * Moved lots of duplicate code from CudaContext and OpenCLContext to ComputeContext * Converted GayBerneForce to common compute API * Removed obsolete kernels * Converted verlet integrators to common compute API * Converted Langevin and Brownian integrators to common compute API * Converted CustomIntegrator to common compute API * Converted CustomNonbondedForce to common compute API * Removed uses of a deprecated API * Fixed failing test cases * Converted GBSAOBCForce to common compute API * Began converting CustomGBForce to common compute API * Finished converting CustomGBForce to common compute API * Merged duplicated code in CudaIntegrationUtilities and OpenCLIntegrationUtilities * Converted RMSDForce and AndersenThermostat to common compute API * Converted CustomHbondForce to common compute API * Merged scripts for encoding kernel sources * Converted Drude plugin to common compute API * Fixed errors in CMake scripts * Attempt at fixing errors on Windows * Added discussion of common compute API to developer guide * Added Windows export macro for common classes * Fixed error in CMMotionRemover * Ubdated travis to newer Ubuntu version * Fixed errors on CPU OpenCL * Fixed Windows linking errors * Added missing pragma for 32 bit atomics * Replaced long long with mm_long * More fixes to Windows linking * Bug fix
-
- 09 Apr, 2019 1 commit
-
-
peastman authored
* Created API for HIPPO force field * Beginning of reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Continuing reference implementation of HIPPO * Completed reference of HIPPO with no cutoff * Beginning cutoffs/PME for reference implementation of HIPPO * Continuing PME for reference implementation of HIPPO * Continuing PME for reference implementation of HIPPO * Continuing PME for reference implementation of HIPPO * Completed reference implementation of HIPPO * Cleanup and optimization to HIPPO reference * Further cleanup to HIPPO * Combined direct space interactions into a single loop * Compute direct space interactions in quasi-internal frame * Beginning of CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Continuing CUDA implementation of HIPPO * Finished CUDA implementation of HIPPO * More features and test cases for HippoNonbondedForce * Serialization and Python API for HippoNonbondedForce * Fixed sign error in computing forces
-
- 12 Mar, 2018 1 commit
-
-
Peter Eastman authored
-
- 12 Feb, 2018 1 commit
-
-
Peter Eastman authored
-
- 13 Oct, 2016 1 commit
-
-
Peter Eastman authored
-
- 14 Sep, 2016 1 commit
-
-
Peter Eastman authored
-
- 27 Jul, 2016 1 commit
-
-
Peter Eastman authored
-
- 25 May, 2016 1 commit
-
-
Peter Eastman authored
-
- 21 Sep, 2015 1 commit
-
-
Peter Eastman authored
-
- 27 Aug, 2015 1 commit
-
-
peastman authored
-
- 10 Aug, 2015 1 commit
-
-
Peter Eastman authored
-
- 07 Jul, 2015 1 commit
-
-
Peter Eastman authored
-
- 06 Mar, 2015 1 commit
-
-
peastman authored
-
- 08 Jul, 2013 1 commit
-
-
peastman authored
Platform specific header files get installed. This allows plugins to be built with just an OpenMM installation, not a full source tree.
-
- 22 Mar, 2013 1 commit
-
-
Peter Eastman authored
-
- 12 Dec, 2012 1 commit
-
-
Peter Eastman authored
-
- 10 Oct, 2012 1 commit
-
-
Peter Eastman authored
OpenCLArray is no longer templatized and doesn't provide a host buffer. This is in preparation for adding mixed/double precision support.
-
- 28 Sep, 2012 1 commit
-
-
Peter Eastman authored
-
- 20 Jul, 2012 1 commit
-
-
Peter Eastman authored
-
- 15 Jun, 2012 1 commit
-
-
Peter Eastman authored
-
- 12 Jun, 2012 1 commit
-
-
Peter Eastman authored
Continuing to implement new CUDA platform: CustomBondForce, CustomAngleForce, CustomTorsionForce, CustomExternalForce, CustomCompoundBondForce
-