1. 05 Sep, 2024 1 commit
    • Anton Gorenko's avatar
      Always use hipRTC, support Windows · b9c45d45
      Anton Gorenko authored
      * Unload all loaded modules in HipContext's destructor,
        HIP modules keep file desctriptors opened, but OpenMM never unloads
        modules leaking these file descriptors. This can cause crashinf of
        some scripts like test-openmm-platforms from openmmtools.
      * ROCm 6.0 defines operator* for complex types (that are typedefs for
        float2 and double2), they conflict with operators defined for vectors.
        This is fixed in newer ROCm versions.
      * Revert HIP_DYNAMIC_SHARED back to extern __shared__ (the macro is
        in the headers).
      * Reduce the speed of the HIP platform if there are no HIP devices in
        the system.
      b9c45d45
  2. 01 Sep, 2024 2 commits
    • Anton Gorenko's avatar
      Optimize sorting kernels and tune block sizes · 7279c539
      Anton Gorenko authored
      * Compile kernels with max block size of 256 threads:
        The default hipcc behavior since ROCm 4.2 is to compile kernels
        with 1024 threads unless __launch_bounds__ is specified. This
        significantly increases register pressure especially in heavy kernels
        (double precision, for example), requiring register spilling;
      * Optimize computeRange by using multiple blocks for reduction;
      * Use blocks of 1024 threads for computeBucketPositions - it is executed
        as a single work group so larger block size is faster;
      * Sort up-to lenghtNextPow2 instead of blockDim.x (faster for short
        buckets);
      * Optimize sortShortList2;
      * Optimize sortBuckets with bit instructions;
      * Decrease bucket size for non-uniform sorting: too many buckets may
        have sizes too large to sort in shared memory;
      * Add more sizes in tests.
      7279c539
    • Anton Gorenko's avatar
      Add hipification of CUDA platform · 89d2ff0e
      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: default avatarNick Curtis <nicholas.curtis@amd.com>
      89d2ff0e
  3. 20 Jul, 2023 1 commit
  4. 27 Dec, 2021 1 commit
  5. 04 Oct, 2021 1 commit
  6. 11 Feb, 2021 1 commit
  7. 16 Jun, 2017 1 commit
  8. 29 Mar, 2016 1 commit
  9. 04 Feb, 2016 1 commit
  10. 21 Jan, 2016 1 commit
  11. 13 Dec, 2013 1 commit
  12. 08 Jul, 2013 1 commit
  13. 27 Jun, 2013 1 commit
  14. 24 Jun, 2013 1 commit
  15. 22 Mar, 2013 1 commit
  16. 31 Oct, 2012 1 commit
  17. 28 Sep, 2012 1 commit
  18. 20 Jun, 2012 1 commit
  19. 16 Jun, 2012 1 commit
  20. 05 Jun, 2012 1 commit
  21. 31 May, 2012 1 commit
  22. 11 May, 2012 1 commit
  23. 31 Jan, 2012 1 commit
  24. 13 Jan, 2012 1 commit
  25. 27 Oct, 2011 1 commit
  26. 23 Apr, 2011 1 commit
  27. 21 Apr, 2011 1 commit
  28. 10 May, 2010 1 commit
  29. 20 Jan, 2010 1 commit
  30. 24 Sep, 2009 1 commit
  31. 14 Jul, 2009 1 commit
  32. 21 Apr, 2009 1 commit
  33. 17 Apr, 2009 1 commit
  34. 22 Oct, 2008 1 commit
  35. 25 Apr, 2008 1 commit
  36. 22 Apr, 2008 1 commit
  37. 17 Apr, 2008 1 commit
  38. 16 Apr, 2008 1 commit