MCPcopy Create free account
hub / github.com/catboost/catboost / Run

Method Run

catboost/cuda/methods/pairwise_kernels.cpp:24–48  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22}
23
24void TMakeLinearSystemKernel::Run(const TCudaStream& stream) const {
25 const ui32 systemSize = LinearSystem.ObjectSize();
26 const ui32 rowSize = GetRowSizeFromLinearSystemSize(systemSize);
27 CB_ENSURE(rowSize > 1, systemSize);
28 const ui32 leavesCount = rowSize / 2;
29
30 CB_ENSURE(systemSize == (rowSize + rowSize * (rowSize + 1) / 2));
31 CB_ENSURE(BlockFeaturesSlice.Size() <= HistogramLineSize);
32 CB_ENSURE(BlockFeaturesSlice.Size() == LinearSystem.ObjectCount());
33 const bool useWeights = PointwiseHistogram.ObjectSize() == 2;
34
35 NKernel::MakePointwiseDerivatives(PointwiseHistogram.Get(), HistogramLineSize,
36 PartStats.Get(),
37 useWeights,
38 rowSize,
39 BlockFeaturesSlice.Left, BlockFeaturesSlice.Size(),
40 LinearSystem.Get(), stream.GetStream());
41
42 NKernel::MakePairwiseDerivatives(PairwiseHistogram.Get(),
43 leavesCount,
44 BlockFeaturesSlice.Left, BlockFeaturesSlice.Size(),
45 HistogramLineSize,
46 LinearSystem.Get(),
47 stream.GetStream());
48}
49
50void TExtractMatricesAndTargetsKernel::Run(const TCudaStream& stream) const {
51 const ui32 rowSize = GetRowSizeFromLinearSystemSize(LinearSystem.ObjectSize());

Callers 3

mode_metadataFunction · 0.45
mainFunction · 0.45
MainMethod · 0.45

Calls 11

ZeroMeanFunction · 0.85
CholeskySolverFunction · 0.85
CopyMemoryAsyncFunction · 0.85
CalcScoresFunction · 0.85
ObjectSizeMethod · 0.80
GetForObjectMethod · 0.80
SizeMethod · 0.45
ObjectCountMethod · 0.45
GetMethod · 0.45
GetStreamMethod · 0.45

Tested by

no test coverage detected