Project
Loading...
Searching...
No Matches
GPUTPCNNClusterizer.cxx
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
14
15#include "GPUReconstruction.h"
17#include "GPUTPCNNClusterizer.h"
18#include "GPUSettings.h"
19
20using namespace o2::gpu;
21
23
25
27{
33 }
35
39 }
43 }
46 }
47 }
51 }
55 }
58 }
59 }
60 }
61 }
64 }
65 return mem;
66}
67
68// std::vector<int32_t> GPUTPCNNClusterizer::pointerSizes() {
69// std::vector<int32_t> sizes(7, -1);
70// if (mNnClusterizerBatchedMode > 0) {
71// if (mNnInferenceInputDType == 0 && mNnClusterizerElementSize > 0) {
72// sizes[0] = mNnClusterizerBatchedMode * mNnClusterizerElementSize; // inputData16
73// } else if (mNnInferenceInputDType == 1 && mNnClusterizerElementSize > 0) {
74// sizes[1] = mNnClusterizerBatchedMode * mNnClusterizerElementSize; // inputData32
75// }
76// sizes[2] = 2 * mNnClusterizerBatchedMode; // mClusterFlags
77// if (mNnClusterizerModelClassNumOutputNodes > 0) {
78// sizes[3] = mNnClusterizerBatchedMode * mNnClusterizerModelClassNumOutputNodes; // modelProbabilities
79// }
80// if (!mNnClusterizerUseCfRegression) {
81// if (mNnClusterizerModelReg1NumOutputNodes > 0) {
82// sizes[4] = mNnClusterizerBatchedMode * mNnClusterizerModelReg1NumOutputNodes; // outputDataReg1
83// }
84// if (mNnClusterizerModelReg2NumOutputNodes > 0) {
85// sizes[5] = mNnClusterizerBatchedMode * mNnClusterizerModelReg2NumOutputNodes; // outputDataReg2
86// }
87// }
88// }
89// if (mNnClusterizerTotalClusters > 0) {
90// sizes[6] = mNnClusterizerTotalClusters; // mOutputDataClass
91// }
92// return sizes;
93// }
94
GPUReconstruction * mRec
static void computePointerWithAlignment(T *&basePtr, S *&objPtr, size_t nEntries=1)
int16_t RegisterMemoryAllocation(T *proc, void *(T::*setPtr)(void *), int32_t type, const char *name="", const GPUMemoryReuse &re=GPUMemoryReuse())
const GPUSettingsProcessing & GetProcessingSettings() const
OrtDataType::Float16_t * mInputData_16
OrtDataType::Float16_t * mOutputDataReg2_16
void SetMaxData(const GPUTrackingInOutPointers &)
OrtDataType::Float16_t * mModelProbabilities_16
OrtDataType::Float16_t * mOutputDataReg1_16