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

[REVIEW] improve device atomic overloads for potential issues #1691

Closed
wants to merge 19 commits into from

Commits on May 9, 2019

  1. Split device_atomics.cuh file

    split the file into `device_atomics.cuh` and `device_operators.cuh`
    separated the difinition of the device operators
    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    6dfb591 View commit details
    Browse the repository at this point in the history
  2. Remove atomicCASImpl(int8 or int16)

    move atomicCASImpl(int8 or int16) into typesAtomicCASImpl
    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    24c42e2 View commit details
    Browse the repository at this point in the history
  3. Simplify atomicAdd

    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    9914f20 View commit details
    Browse the repository at this point in the history
  4. Simplify atomicMin, atomixMax

    simplify atomicMin, atomixMax
    add cudf::bool8 for atomic test case for atomicAdd,Min,Max
    add cudf::bool8 specialization for genericAtomicOperation
    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    d538af5 View commit details
    Browse the repository at this point in the history
  5. Add more test coverage

    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    c3ce65a View commit details
    Browse the repository at this point in the history
  6. Simplify atomicAnd/Or/Xor

    kovaltan committed May 9, 2019
    Configuration menu
    Copy the full SHA
    52c715d View commit details
    Browse the repository at this point in the history

Commits on May 10, 2019

  1. Configuration menu
    Copy the full SHA
    0993907 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    857c552 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    76f30bd View commit details
    Browse the repository at this point in the history
  4. Update changelog

    kovaltan committed May 10, 2019
    Configuration menu
    Copy the full SHA
    59cacf8 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    440d158 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2019

  1. Add '__forceinline__ __device__'

    Add '__forceinline__ __device__' to `W genericAtomicOperator(W)`
    kovaltan committed May 13, 2019
    Configuration menu
    Copy the full SHA
    ab3c2da View commit details
    Browse the repository at this point in the history
  2. add static_assert for long long int size

    Add size check assert between `long long int` and `int64_t`
    kovaltan committed May 13, 2019
    Configuration menu
    Copy the full SHA
    f866f6e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    99bb770 View commit details
    Browse the repository at this point in the history
  4. remove redundant sizeof(T) from CASImpl

    remove redundant `sizeof(T)` when calling 'typesAtomicCASImpl`
    kovaltan committed May 13, 2019
    Configuration menu
    Copy the full SHA
    fa9b617 View commit details
    Browse the repository at this point in the history
  5. remove redundant sizeof(T) from atomic op impl

    remove redundant `sizeof(T)` when calling 'genericAtomicOperationImpl`
    kovaltan committed May 13, 2019
    Configuration menu
    Copy the full SHA
    586d208 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2019

  1. Add genericAtomicOperationImpl(int64_t, Sum)

    Add native atomicAdd(uint64_t) call for sint64_t
    kovaltan committed May 14, 2019
    Configuration menu
    Copy the full SHA
    d3e433c View commit details
    Browse the repository at this point in the history
  2. Add comment for impl of atomicAdd(int64_t)

    Add comment for `genericAtomicOperationImpl<int64_t, DeviceSum, 8>`
     why it uses atomicAdd(uint64) inside
    kovaltan committed May 14, 2019
    Configuration menu
    Copy the full SHA
    96e1037 View commit details
    Browse the repository at this point in the history
  3. Removed genericAtomicOperation(W)

    Removed `genericAtomicOperation(W)` since it is not invoked for
     cudf::wrapper types.
    Merged it into `genericAtomicOperation(T)`
    
    Add size check assert at `type_reinterpret`.
    kovaltan committed May 14, 2019
    Configuration menu
    Copy the full SHA
    edc14cb View commit details
    Browse the repository at this point in the history