Hi All,
I try to run the code with multi-thread and limited range.
but it fails and gives me error.
Here I provide a simple code which can reproduce the error for me.
// Run on lxplus7
// ensure EnableImplicitMT() works
source /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.20.04/x86_64-centos7-gcc48-opt/bin/thisroot.sh
root -l
> ROOT::EnableImplicitMT();
> using namespace ROOT;
> RDataFrame d(0);
> d.Range(0); // error
......: Range was called with ImplicitMT enabled, but multi-thread is not supported.
by the way, if I use the default ROOT version on lxplus, EnableImplicitMT() does not work
and say I have to build it with some options.
after I run the thisroot.sh, it works for most of cases.
what’s the difference them? even if I use the same version, I still need to run the source command.
Hi @jerryliu,
as the error message says, Range is not available when running on multiple threads. Also see the docs.
The default ROOT version available on lxplus has not been built with imt=ON, so multi-threading is not available. On lxplus, I would suggest to use one of the ROOT versions available with LCG views, e.g.