| 192 | |
| 193 | template <typename T> |
| 194 | static void MakeSequenceGlobalImpl( |
| 195 | TCudaBuffer<T, NCudaLib::TStripeMapping>& buffer, |
| 196 | ui32 stream) { |
| 197 | auto offset = CreateDistributedObject<T>(0); |
| 198 | for (ui32 dev = 0; dev < offset.DeviceCount(); ++dev) { |
| 199 | offset.Set(dev, buffer.GetMapping().DeviceSlice(dev).Left); |
| 200 | } |
| 201 | |
| 202 | using TKernel = TMakeSequenceKernel<T>; |
| 203 | LaunchKernels<TKernel>(buffer.NonEmptyDevices(), stream, buffer, offset); |
| 204 | } |
| 205 | |
| 206 | #define Y_CATBOOST_CUDA_F_IMPL(T) \ |
| 207 | template <> \ |
nothing calls this directly
no test coverage detected