Skip to content

Commit 79c60f1

Browse files
committed
Temporarily re-enable the gpu-wf-spec in itsreco-wf
1 parent 08e4039 commit 79c60f1

File tree

3 files changed

+34
-4
lines changed

3 files changed

+34
-4
lines changed

Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingInterface.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,11 @@ class ITSTrackingInterface
4444
void setClusterDictionary(const o2::itsmft::TopologyDictionary* d) { mDict = d; }
4545
void setMeanVertex(const o2::dataformats::MeanVertexObject* v)
4646
{
47-
if (!v) {
47+
if (v == nullptr) {
4848
LOGP(error, "Mean Vertex Object is nullptr");
4949
return;
50+
} else {
51+
LOGP(info, "Mean Vertex set with x: {} y: {}", v->getX(), v->getY());
5052
}
5153
mMeanVertex = v;
5254
}
@@ -73,7 +75,7 @@ class ITSTrackingInterface
7375
bool mRunVertexer = true;
7476
bool mCosmicsProcessing = false;
7577
int mUseTriggers = 0;
76-
TrackingMode mMode = TrackingMode::Sync;
78+
TrackingMode mMode = TrackingMode::Unset;
7779
bool mOverrideBeamEstimation = false;
7880
const o2::itsmft::TopologyDictionary* mDict = nullptr;
7981
std::unique_ptr<Tracker> mTracker = nullptr;

Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ void Vertexer::getGlobalConfiguration()
9191
verPar.PhiBins = vc.PhiBins;
9292

9393
TimeFrameGPUParameters tfGPUpar;
94-
tfGPUpar.nROFsPerChunk = grc.nROFsPerChunk;
94+
// tfGPUpar.nROFsPerChunk = grc.nROFsPerChunk;
9595

9696
mTraits->updateVertexingParameters(verPar, tfGPUpar);
9797
}

Detectors/ITSMFT/ITS/workflow/src/RecoWorkflow.cxx

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,35 @@ framework::WorkflowSpec getWorkflow(bool useMC,
5858
}
5959
if (!trmode.empty()) {
6060
if (useCAtracker) {
61-
specs.emplace_back(o2::its::getTrackerSpec(useMC, useGeom, useTrig, trmode, overrideBeamPosition, dtype));
61+
if (useGPUWF) {
62+
o2::gpu::GPURecoWorkflowSpec::Config cfg;
63+
cfg.runITSTracking = true;
64+
cfg.itsTriggerType = useTrig;
65+
cfg.itsOverrBeamEst = overrideBeamPosition;
66+
67+
Inputs ggInputs;
68+
auto ggRequest = std::make_shared<o2::base::GRPGeomRequest>(false, true, false, true, true,
69+
useGeom ? o2::base::GRPGeomRequest::Aligned : o2::base::GRPGeomRequest::None,
70+
ggInputs, true);
71+
if (!useGeom) {
72+
ggRequest->addInput({"itsTGeo", "ITS", "GEOMTGEO", 0, Lifetime::Condition, framework::ccdbParamSpec("ITS/Config/Geometry")}, ggInputs);
73+
}
74+
75+
auto task = std::make_shared<o2::gpu::GPURecoWorkflowSpec>(&gPolicyData, cfg, std::vector<int>(), 0, ggRequest);
76+
gTask = task;
77+
Inputs taskInputs = task->inputs();
78+
Options taskOptions = task->options();
79+
std::move(ggInputs.begin(), ggInputs.end(), std::back_inserter(taskInputs));
80+
81+
specs.emplace_back(DataProcessorSpec{
82+
"its-tracker",
83+
taskInputs,
84+
task->outputs(),
85+
AlgorithmSpec{adoptTask<o2::gpu::GPURecoWorkflowSpec>(task)},
86+
taskOptions});
87+
} else {
88+
specs.emplace_back(o2::its::getTrackerSpec(useMC, useGeom, useTrig, trmode, overrideBeamPosition, dtype));
89+
}
6290
} else {
6391
specs.emplace_back(o2::its::getCookedTrackerSpec(useMC, useGeom, useTrig, trmode));
6492
}

0 commit comments

Comments
 (0)