|
ATLAS Offline Software
|
Go to the documentation of this file.
121 "nc_resMemPerEventIncrease";
123 "nc_virtMemPerEventIncrease";
134 swap (
a.m_sampleHandler,
b.m_sampleHandler);
135 a.m_jobConfig.swap (
b.m_jobConfig);
136 swap (
a.m_output,
b.m_output);
162 that.m_sampleHandler)),
163 m_output (that.m_output),
164 m_options (that.m_options),
165 m_jobConfig (that.m_jobConfig)
210 algsAdd (std::unique_ptr<IAlgorithmWrapper> val_algorithm)
212 using namespace msgEventLoop;
223 algsAdd (std::unique_ptr<Algorithm> val_algorithm)
225 using namespace msgEventLoop;
231 std::string myname = val_algorithm->GetName();
232 if (myname.empty() ||
algsHas (myname))
235 myname =
"UnnamedAlgorithm";
237 for (
unsigned iter = 1; !unique; ++ iter)
239 std::ostringstream
str;
240 str << myname << iter;
247 if (strlen (val_algorithm->GetName()) > 0)
248 ANA_MSG_WARNING (
"renaming algorithm " << val_algorithm->GetName() <<
" to " << myname <<
" to make the name unique");
249 val_algorithm->SetName (myname.c_str());
250 if (val_algorithm->GetName() != myname)
253 message <<
"failed to rename algorithm " << val_algorithm->GetName() <<
" to " << myname;
258 val_algorithm->sysSetupJob (*
this);
259 algsAdd (std::make_unique<AlgorithmWrapper> (std::move (val_algorithm)));
267 algsAdd (std::unique_ptr<Algorithm> (alg_swallow));
287 algsAdd (std::make_unique<AnaReentrantAlgorithmWrapper> (
config));
306 if (
config.componentType() ==
"AnaAlgorithm")
308 else if (
config.componentType() ==
"AnaReentrantAlgorithm")
310 else if (
config.componentType() ==
"AsgTool")
312 else if (
config.componentType() ==
"AsgService")
378 RCU_REQUIRE2_SOFT (!
outputHas (val_output.
label()), (
"trying to create two output streams with the label " + val_output.
label() +
"\nplease make sure that every output stream has a unique label").c_str());
391 if (iter->label() ==
name)
static const std::string optFilesPerWorker
description: the name of the option for selecting the number of files per batch job.
static const std::string optCondorConf
description: the name of the option for supplying extra parameters for condor systems
static const std::string optMaxEvents
description: the name of the option used for setting the maximum number of events to process per samp...
static const std::string optPerfTree
description: the option to turn on the performance tree in PROOF.
static const std::string optGridAddNthFieldOfInDSToLFN
const JobConfig & jobConfig() const noexcept
the JobConfig object we are wrapping
SH::MetaObject * options()
description: the list of options to the job guarantee: no-fail postcondition: result !...
const IAlgorithmWrapper * getAlgorithm(std::string_view name) const noexcept
get the algorithm with the given name, or nullptr if there is no algorithm with that name
static const std::string optGridExcludedSite
static const std::string optBatchSharedFileSystem
description: batch-specific options rationale: these options are for configuring batch drivers
Job()
effects: standard default constructor guarantee: strong failures: low level errors I
static const std::string optXaodAccessMode
description: the option to select the access mode for xAODs.
friend void swap(Job &a, Job &b)
effects: standard swap guarantee: no-fail
static const std::string optD3PDReadStats
description: the name of the D3PDPerfStats object produced as I gather it, as well as the name of the...
static const std::string optDockerImage
this is the name of the docker image, when using docker with a supported batch driver
static const std::string optPrintPerFileStats
description: the option to turn on printing of i/o statistics at the end of each file rationale: whil...
static const std::string optGridNEventsPerJob
bool algsHas(const std::string &name) const
returns: whether we have the algorithm with the given name guarantee: no-fail
static const std::string optRemoveSubmitDir
description: the name of the option for overwriting the submission directory.
EL::JobConfig m_jobConfig
the JobConfig object we use
static const std::string optD3PDCacheMinEventFraction
static const std::string optGridMaxNFilesPerJob
~Job()
effects: standard destructor guarantee: no-fail
static const std::string optMemResidentPerEventIncreaseLimit
The minimal per-event resident memory increase for triggering an error.
const std::string & label() const
description: the label for this output dataset.
void swap(Job &a, Job &b)
effects: standard swap guarantee: no-fail
static const std::string optXaodAccessMode_class
static const std::string optUserFiles
a list of files that need to be available within the worker job
static const std::string optFactoryPreload
a boolean flag for whether to perform a component factory preload
an object that can create a AnaAlgorithm
std::vector< EL::OutputStream > m_output
bool const RAWDATA *ch2 const
static const std::string optGridMemory
static const std::string optDisableMetrics
description: the option to turn off collection of performance data
static const std::string optGridNFiles
static const std::string optD3PDCacheMinByteFraction
static const std::string optXAODSummaryReport
the option to turn on/off the xAOD summary reporting at the end of the job
static const std::string optGridMaxFileSize
static const std::string optXAODInput
the option to select whether our input is xAODs
SH::SampleHandler m_sampleHandler
description: members directly corresponding to accessors
void algsAddClone(const Algorithm &alg)
add a clone of the given algorithm
static const std::string optBatchSetupCommand
This overrides the asetup command if you need to use a custom one.
static const std::string optRetriesWait
static const std::string optGridShowCmd
static const std::string optGridDisableAutoRetry
#define RCU_REQUIRE_SOFT(x)
static const std::string optGridNoSubmit
static const std::string optGridDestSE
description: grid-specific options rationale: these are named so as to correspond to prun equivalents...
static const std::string optGridSite
the base class for the python configuration of any asg::AsgComponent
static const std::string optCacheSize
description: this option allows to configure the TTreeCache size for this job.
static const std::string optWorkerConfigFile
a python configuration file that will be executed on the worker
static const std::string optResetShell
description: the option to reset the shell on the worker nodes rationale: this is currently only used...
static const std::string optD3PDCacheMinByte
static const std::string optGridNFilesPerJob
static const std::string optBatchSlurmWrapperExec
Append a command before the main executable is called This is useful is you want to execute the comma...
static const std::string optXAODPerfStats
description: the name of the option for turning on XAODPerfStats.
static const std::string optGridPrunShipAdditionalFilesOrDirs
Enables to ship additional files to the tarbal sent to the grid Should be a list of comma separated p...
static const std::string optWorkerPostClosedOutputsExecutable
Optionnal executable to be provided by the user that will be called, by the worker,...
static const std::string optGridNGBPerJob
static const std::string optRetries
these options are defined in SH::MetaNames
void outputAdd(const OutputStream &val_output)
static const std::string optD3PDCacheMinEvent
description: these options configure the D3PDReader TTreeCache settings.
static const std::string optGridWorkingGroup
static const std::string optGridExpress
This module defines the arguments passed from the BATCH driver to the BATCH worker.
static const std::string optNumParallelProcs
the option to specify the number of parallel jobs in LocalDriver (0 = number of hardware cores) (defa...
Job & operator=(const Job &that)
effects: standard assignment operator returns: *this guarantee: strong failures: out of memory II
static const std::string optVoms
static const std::string optCacheLearnEntries
description: this option allows to configure the number of tree entries used for learning cache behav...
static const std::string optMemFailOnLeak
Failure behaviour of the code when a "significant memory leak" is found.
static const std::string optSubmitFlags
description: the name of the option for supplying extra submit parameters to batch systems rationale:...
bool outputHas(const std::string &name) const
returns: whether we have an output with the given name guarantee: no-fail
static const std::string optD3PDPerfStats
description: the name of the option for turning on D3PDPerfStats.
static const std::string optDockerOptions
any extra options we may want to pass to docker
static const std::string optAlgorithmTimer
a boolean flag for whether to add a timer for the algorithms
static const std::string optBatchSlurmExtraConfigLines
The content of this string will be executed in the job script on the worker node before the main exec...
::StatusCode addAlgorithm(std::unique_ptr< IAlgorithmWrapper > &&val_algorithm)
add an algorithm
static const std::string optOfficial
static const std::string optMemResidentIncreaseLimit
The minimal resident memory increase necessary to trigger an error.
static const std::string optGridMergeOutput
static const std::string optBackgroundProcess
the option to do processing in a background process in PROOF
static const std::string histogramStreamName
the name of the histogram output stream
static const std::string optAlgorithmMemoryMonitor
a boolean flag for whether to add a memory monitor for the algorithms
static const std::string optBatchConfigFile
the job submission configuration file (used by some drivers that need more complex configuration)
the job configuration that is independent of driver and dataset
static const std::string optXaodAccessMode_branch
an object that can create a AsgService
static const std::string optCmtConfig
void algsAdd(std::unique_ptr< IAlgorithmWrapper > val_algorithm)
description: the list of algorithms used guarantee: no-fail / strong failures: out of memory II invar...
static const std::string optTmpDir
static const std::string optGridMaxWalltime
#define RCU_REQUIRE2_SOFT(x, y)
void check_root_version()
effects: check whether we are using a consistent root version guarantee: strong failures: version mis...
outputMIter outputBegin()
#define RCU_DESTROY_INVARIANT(x)
static const std::string optXaodAccessMode_athena
void testInvariant() const
effects: test the invariant of this object guarantee: no-fail
void useXAOD()
effects: register this job to use XAODs guarantee: strong failures: out of memory II failures: TEvent...
const SH::SampleHandler & sampleHandler() const
description: the sample handler used guarantee: no-fail / strong failures: out of memory II
static const std::string optGridCpuTimePerEvent
#define RCU_CHANGE_INVARIANT(x)
static const std::string optGridAvoidVP
static const std::string optRootVer
static const std::string optOutputSampleName
the output sample name
static const std::string optGridNJobs
A class that manages a list of Sample objects.
static const std::string optSubmitDirMode
the submit-dir mode (allowed values: "no-clobber", "overwrite", "unique", "unique-link")
static const std::string optGridMaxCpuCount
#define RCU_THROW_MSG(message)
static const std::string optSkipEvents
description: the name of the option used for skipping a certain number of events in the beginning rat...
static const std::string optMemVirtualPerEventIncreaseLimit
The minimal per-event virtual memory increase for triggering an error.
an object that can create a AnaReentrantAlgorithm
static const std::string optUniqueDateFormat
the date-format to use when generating unique submission directory names
#define RCU_READ_INVARIANT(x)
static const std::string optBatchSetupFile
the job submission setup file.
static const std::string optMemVirtualIncreaseLimit
The minimal virtual memory increase necessary to trigger an error.
static const std::string optXAODReadStats
description: the name of the XAODPerfStats object produced as I gather it, as well as the name of the...
static const std::string optEventsPerWorker
description: the name of the option for selecting the number of events per batch job.
static const std::string optGridReporting
whether to use grid reporting even when not running on the grid
#define RCU_NEW_INVARIANT(x)
static const std::string optLocalNoUnsetup
the option not to unsetup the environment in LocalDriver