hpt-cudakernels 0.1.3

A library implements cuda kernels for hpt
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
#pragma once

template <typename T, typename Func>
struct ProgressUpdater
{
    Func update_func;
    T *data;
    __device__ __forceinline__ ProgressUpdater(Func f, T *data) : update_func(f), data(data) {}
    __device__ __forceinline__ void update() { update_func(data); }
    __device__ __forceinline__ T get() const { return *data; }
    __device__ __forceinline__ void set_ptr(T *data) { this->data = data; }
};