Skip to content

Commit 25aabf3

Browse files
committed
GPU Workflow: Add a 'standalone' GPU workflow, currenly basically identical to the processing part of the tpc-reco-workflow, to be extended...
1 parent e3523a9 commit 25aabf3

13 files changed

Lines changed: 172 additions & 45 deletions

File tree

Detectors/GlobalTrackingWorkflow/src/cosmics-match-workflow.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
#include "CommonUtils/ConfigurableParam.h"
1212
#include "Framework/CompletionPolicy.h"
13-
#include "TPCWorkflow/TPCSectorCompletionPolicy.h"
13+
#include "GPUWorkflow/TPCSectorCompletionPolicy.h"
1414
#include "ITSWorkflow/TrackReaderSpec.h"
1515
#include "ITSMFTWorkflow/ClusterReaderSpec.h"
1616
#include "TPCWorkflow/TrackReaderSpec.h"

Detectors/GlobalTrackingWorkflow/src/tpcits-match-workflow.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include "GlobalTrackingWorkflow/MatchTPCITSWorkflow.h"
1212
#include "CommonUtils/ConfigurableParam.h"
1313
#include "Framework/CompletionPolicy.h"
14-
#include "TPCWorkflow/TPCSectorCompletionPolicy.h"
14+
#include "GPUWorkflow/TPCSectorCompletionPolicy.h"
1515
#include "DetectorsRaw/HBFUtilsInitializer.h"
1616

1717
using namespace o2::framework;

Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/tpc-interpolation-workflow.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include "TPCInterpolationWorkflow/TrackInterpolationWorkflow.h"
1212
#include "CommonUtils/ConfigurableParam.h"
1313
#include "Framework/CompletionPolicy.h"
14-
#include "TPCWorkflow/TPCSectorCompletionPolicy.h"
14+
#include "GPUWorkflow/TPCSectorCompletionPolicy.h"
1515
#include "DetectorsRaw/HBFUtilsInitializer.h"
1616

1717
using namespace o2::framework;

Detectors/TPC/workflow/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ o2_add_library(TPCWorkflow
1919
src/TrackReaderSpec.cxx
2020
src/RawToDigitsSpec.cxx
2121
src/LinkZSToDigitsSpec.cxx
22-
src/TPCSectorCompletionPolicy.cxx
2322
src/ZSSpec.cxx
2423
src/CalibProcessingHelper.cxx
2524
src/ClusterSharingMapSpec.cxx

Detectors/TPC/workflow/src/RecoWorkflow.cxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -413,7 +413,7 @@ framework::WorkflowSpec getWorkflow(CompletionPolicyData* policyData, std::vecto
413413
//
414414
// selected by output type 'tracks'
415415
if (runTracker) {
416-
o2::gpu::GPUWorkflow::Config cfg;
416+
o2::gpu::gpuworkflow::Config cfg;
417417
cfg.decompressTPC = decompressTPC;
418418
cfg.decompressTPCFromROOT = decompressTPC && inputType == InputType::CompClusters;
419419
cfg.caClusterer = caClusterer;
@@ -428,7 +428,7 @@ framework::WorkflowSpec getWorkflow(CompletionPolicyData* policyData, std::vecto
428428
cfg.processMC = propagateMC;
429429
cfg.sendClustersPerSector = isEnabled(OutputType::SendClustersPerSector);
430430
cfg.askDISTSTF = askDISTSTF;
431-
specs.emplace_back(o2::gpu::getGPURecoWorkflowSpec(policyData, cfg, tpcSectors, tpcSectorMask));
431+
specs.emplace_back(o2::gpu::getGPURecoWorkflowSpec(policyData, cfg, tpcSectors, tpcSectorMask, "tpc-tracker"));
432432
}
433433

434434
//////////////////////////////////////////////////////////////////////////////////////////////

Detectors/TPC/workflow/src/TPCSectorCompletionPolicy.cxx

Lines changed: 0 additions & 25 deletions
This file was deleted.

Detectors/TPC/workflow/src/TrackReaderWorkflow.cxx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
#include "Framework/PartRef.h"
1919
#include "Framework/ConcreteDataMatcher.h"
2020
#include "TPCWorkflow/RecoWorkflow.h"
21-
#include "TPCWorkflow/TPCSectorCompletionPolicy.h"
2221
#include "DataFormatsTPC/TPCSectorHeader.h"
2322
#include "Algorithm/RangeTokenizer.h"
2423
#include "CommonUtils/ConfigurableParam.h"

Detectors/TPC/workflow/src/tpc-reco-workflow.cxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
#include "Framework/PartRef.h"
2222
#include "Framework/ConcreteDataMatcher.h"
2323
#include "TPCWorkflow/RecoWorkflow.h"
24-
#include "TPCWorkflow/TPCSectorCompletionPolicy.h"
24+
#include "GPUWorkflow/TPCSectorCompletionPolicy.h"
2525
#include "DataFormatsTPC/TPCSectorHeader.h"
2626
#include "Algorithm/RangeTokenizer.h"
2727
#include "CommonUtils/ConfigurableParam.h"
@@ -94,7 +94,7 @@ void customize(std::vector<o2::framework::CompletionPolicy>& policies)
9494
policies.push_back(CompletionPolicyHelpers::defineByName("tpc-cluster-decoder.*", CompletionPolicy::CompletionOp::Consume));
9595
policies.push_back(CompletionPolicyHelpers::defineByName("tpc-clusterer.*", CompletionPolicy::CompletionOp::Consume));
9696
// the custom completion policy for the tracker
97-
policies.push_back(o2::tpc::TPCSectorCompletionPolicy("gpu-reconstruction.*", o2::tpc::TPCSectorCompletionPolicy::Config::RequireAll, &gPolicyData, &gTpcSectorMask)());
97+
policies.push_back(o2::tpc::TPCSectorCompletionPolicy("tpc-tracker.*", o2::tpc::TPCSectorCompletionPolicy::Config::RequireAll, &gPolicyData, &gTpcSectorMask)());
9898
}
9999

100100
#include "Framework/runDataProcessing.h" // the main driver

GPU/Workflow/CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,10 @@ o2_add_executable(display
2727
O2::TPCReconstruction
2828
O2::GlobalTrackingWorkflowHelpers)
2929
target_include_directories(${targetName} PUBLIC "include")
30+
31+
o2_add_executable(reco-workflow
32+
COMPONENT_NAME gpu
33+
TARGETVARNAME targetName
34+
SOURCES src/gpu-reco-workflow.cxx
35+
PUBLIC_LINK_LIBRARIES O2::GPUWorkflow
36+
O2::GlobalTrackingWorkflowHelpers)

GPU/Workflow/include/GPUWorkflow/GPUWorkflowSpec.h

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
#define O2_GPU_WORKFLOW_SPEC_H
1818

1919
#include "Framework/DataProcessorSpec.h"
20-
#include <utility> // std::forward
20+
#include <string>
21+
#include <vector>
2122

2223
namespace o2
2324
{
@@ -28,7 +29,7 @@ struct CompletionPolicy;
2829

2930
namespace gpu
3031
{
31-
namespace GPUWorkflow
32+
namespace gpuworkflow
3233
{
3334
struct Config {
3435
bool decompressTPC = false;
@@ -47,7 +48,7 @@ struct Config {
4748
bool askDISTSTF = true;
4849
};
4950
using CompletionPolicyData = std::vector<framework::InputSpec>;
50-
} // namespace GPUWorkflow
51+
} // namespace gpuworkflow
5152

5253
/// create a processor spec for the CATracker
5354
/// The CA tracker is actually much more than the tracker it has evolved to a
@@ -65,7 +66,7 @@ using CompletionPolicyData = std::vector<framework::InputSpec>;
6566
///
6667
/// @param specconfig configuration options for the processor spec
6768
/// @param tpcsectors list of sector numbers
68-
framework::DataProcessorSpec getGPURecoWorkflowSpec(GPUWorkflow::CompletionPolicyData* policyData, GPUWorkflow::Config const& specconfig, std::vector<int> const& tpcsectors, unsigned long tpcSectorMask);
69+
framework::DataProcessorSpec getGPURecoWorkflowSpec(gpuworkflow::CompletionPolicyData* policyData, gpuworkflow::Config const& specconfig, std::vector<int> const& tpcsectors, unsigned long tpcSectorMask, std::string processorName);
6970

7071
o2::framework::CompletionPolicy getCATrackerCompletionPolicy();
7172
} // end namespace gpu

0 commit comments

Comments
 (0)