Root planning meeting
Present: The ROOT team, Marco, Andrea, Aleandro, Andreas, Peter, Marco, Benedikt, Bill (R)
ACTIONS:
Vasil: push a fix today about LHCb failure 4) to test it tonight in the builds
ROOT: converge on a convention for the normalized type names for unsigned or
long (long) integer values used as template parameters.
o Vasil:
- To have some of the improvements of codegen we may be forced to upgrade the llvm and
therefore, as the tool switched to c++11, switch to c++11.
o Marco:
- Issue with several statics in a template: this is delayed to link time and resolved by then.
One problem is that ROOT has no real linking phase.
- 2 blockers last week, now 4:
1) Mismatch in translation units used for new and delete in Python. This can be demoted
to important if the I/O is guaranteed to be consistent. A workaround in PyROOT from Wim
would be appreciated. But the bug must be fixed in ROOT at some point, upfront.
Observation by Philippe: the problem could appear in the IO if an object created in Python
is added to a branch in a tree. Probably LHCb does not have such cases.
2) Preload of something which replaces malloc and free leads to segfaults: google profilers,
tcmalloc. We endup with something like allocating with tcmalloc and deallocating with glibc
and viceversa. Workaround with preloading libCling.so: this is not a fix, a hack.
An other idea could be the usage of an env variable to decide the mode of dlopening libCling.
--> We need to make a decision for ROOT6.
It will stay as it is for the LHCb tag and beta3.
3) Resolution of methods in Python: should be fixed by Wim. Now hidden by blocker 4)
4) Segfault in the incremental executor due to handling of a pointer which happens to be null.
Vasil will try a fix for tonight. See actions.
--> *IF* the fix of Vasil for 4) is effective and reveals that the fix of Wim worked, we can tag.
o Peter:
- Proposes an update of results next week.
o Bill:
- Many problems fixed, for example:
1) Optimisation in calling TClass:new made the relval tests much faster, a major breakthrough
- ROOT needs to decide which convetion to adopt for the normalized type names for unsigned or
long (long) integer values used as template parameters.
- 4 errors to be iron out:
1) An issue linked to double32 fixed by Philippe
2) Multiple dimension arrays: understood. CMS needs to incorporate this fix from Paul in the
ROOT patch of CMS.
3) Checksums mismatch
4) Mismatch in the number of bytes: HCalCholeskyMatrix