https://github.com/root-project/root

sort by:
Revision Author Date Message Commit Date
1c01f9f "Update ROOT version files to v6.25/02." 05 January 2022, 10:12:16 UTC
b5329d6 Catch exceptions in scene updates 05 January 2022, 07:00:22 UTC
f6aff1c Cahanges to REveDataCollectionProxy interface 05 January 2022, 07:00:22 UTC
319e08c Use more descriptive build function names 05 January 2022, 07:00:22 UTC
390f93a Fix selection when lowering the threshold 05 January 2022, 07:00:22 UTC
4bd8368 Corrections in remove filter 05 January 2022, 07:00:22 UTC
737a086 Handle empty filter expression 05 January 2022, 07:00:22 UTC
b98f8f9 Update table conent even if its collection is not visible 05 January 2022, 07:00:22 UTC
e26f375 Create Calo2D and Calo3D empty mesh even if REveCaloData is empty 05 January 2022, 07:00:22 UTC
e51a64c Change warning in EveManager.prototype.removeElements 05 January 2022, 07:00:22 UTC
c49f2c0 Check GL viewer is mapped/visible before rendering 05 January 2022, 07:00:22 UTC
1f4331c Stamp object in UpdateProjection() 05 January 2022, 07:00:22 UTC
4c6ac5d Reset render data even if cell list is empty 05 January 2022, 07:00:22 UTC
7821ed1 [RF] Better implementation of RooAbsCollection::remove(RooAbsCollection) Instead of looping through the entire collection for each element to be removed, loop only once through the collection, checking a predicate. This is beneficial if the collection is very large, and only a few elements are to be removed. Co-authored-by: Stephan Hageboeck <stephan.hageboeck@cern.ch> 22 December 2021, 18:51:48 UTC
730494f [llvm] Fix valgrind report (operlapping memcpy): This is addressed by ecb00a77624c9/da45bd232165e in upstream llvm, but with a much wider scope. Restrict the fix to what matters for llvm9. Addresses: ==1932== Source and destination overlap in memcpy(0xbecac83c, 0xbecac83c, 100) ==1932== at 0x4839989: memcpy (vg_replace_strmem.c:1035) ==1932== by 0x62DD594: void llvm::SmallVectorTemplateBase<char, true>::uninitialized_copy<char const, char>(char const*, char const*, char*, std::enable_if<std::is_same<std::remove_const<char const>::type, char>::value, void>::type*) (SmallVector.h:294) ==1932== by 0x62D5F67: void llvm::SmallVectorImpl<char>::append<char const*, void>(char const*, char const*) (SmallVector.h:392) ==1932== by 0x9413D55: llvm::vfs::RedirectingFileSystemParser::parseEntry(llvm::yaml::Node*, llvm::vfs::RedirectingFileSystem*, bool) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x9413C4E: llvm::vfs::RedirectingFileSystemParser::parseEntry(llvm::yaml::Node*, llvm::vfs::RedirectingFileSystem*, bool) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x9414BA0: llvm::vfs::RedirectingFileSystemParser::parse(llvm::yaml::Node*, llvm::vfs::RedirectingFileSystem*) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x9414FDF: llvm::vfs::RedirectingFileSystem::create(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >, void (*)(llvm::SMDiagnostic const&, void*), llvm::StringRef, void*, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x9415176: llvm::vfs::getVFSFromYAML(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >, void (*)(llvm::SMDiagnostic const&, void*), llvm::StringRef, void*, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x64D7D9D: (anonymous namespace)::collectModuleMaps(clang::CompilerInstance&, llvm::SmallVectorImpl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&) [clone .constprop.575] (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x64D8CAA: (anonymous namespace)::setupCxxModules(clang::CompilerInstance&) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x64DB45A: (anonymous namespace)::createCIImpl(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >, cling::CompilerOptions const&, char const*, std::unique_ptr<clang::ASTConsumer, std::default_delete<clang::ASTConsumer> >, std::vector<std::shared_ptr<clang::ModuleFileExtension>, std::allocator<std::shared_ptr<clang::ModuleFileExtension> > > const&, bool, bool) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) ==1932== by 0x64DD0E9: cling::CIFactory::createCI(llvm::StringRef, cling::InvocationOptions const&, char const*, std::unique_ptr<clang::ASTConsumer, std::default_delete<clang::ASTConsumer> >, std::vector<std::shared_ptr<clang::ModuleFileExtension>, std::allocator<std::shared_ptr<clang::ModuleFileExtension> > > const&) (in /home/sftnight/build/wsincrmaster/LABEL/ROOT-debian10-i386/SPEC/cxx14/build/lib/libCling.so) 21 December 2021, 16:04:46 UTC
3764e5b [IO] Fix RooFit workspace I/O. For a long time, users had to increase their maximum stack size in order to read RooFit workspaces. Otherwise, the process would simply 3nd without any message. The problem is an 8kB stack buffer for the I/O of stl sets, which is always declared but rarely used. Here, the buffer is replaced with a heap buffer. This is an analysis of stack frames at -O2 in the moment of a crash: tot. size call count frame size 5468960 665 8224 libRIO.so`TGenCollectionStreamer::ReadObjects(this nElements b 566576 2083 272 libRIO.so`int TStreamerInfo::ReadBuffer<char**>(TBuffer&, char** 307664 2747 112 libRIO.so`TBufferFile::ReadClassBuffer(this cl pointer 133248 2082 64 libRIO.so`TStreamerInfoActions::GenericReadAction(buf addr config 131856 2747 48 libRIO.so`TBufferFile::ApplySequence(this sequence obj 74480 665 112 libRIO.so`TBufferFile::ReadObjectAny(this clCast at 68064 1418 48 libCore.so`TStreamerBase::ReadBuffer(this b pointer 42560 665 64 libRIO.so`TGenCollectionStreamer::ReadBufferGeneric(this b obj 42560 665 64 libRIO.so`TBufferFile::ReadFastArray(this start cl 31920 665 48 libRIO.so`int TStreamerInfoActions::ReadSTL<&(TStreamerInfoActions::ReadSTLMemberWiseSameClass(TBuffer&, void*, 21280 665 32 libRooFitCore.so`RooAbsArg::Streamer(this R__b at 14592 152 96 libRooFitCore.so`RooRealVar::Streamer(this R__b at 1056 22 48 libRooFitCore.so`RooHistFunc::Streamer(this R__b at 720 15 48 libHistFactory.so`PiecewiseInterpolation::Streamer(this R__b at And after the fix (different number of stack frames, so only compare relative total size or frame size): 54400 200 272 libRIO.so`int TStreamerInfo::ReadBuffer<char**>(this b 29792 266 112 libRIO.so`TBufferFile::ReadClassBuffer(this cl pointer 12864 201 64 libRIO.so`TStreamerInfoActions::GenericReadAction(buf addr config 12768 266 48 libRIO.so`TBufferFile::ApplySequence(this sequence obj 8320 65 128 libRIO.so`TGenCollectionStreamer::ReadObjects(this nElements b 7280 65 112 libRIO.so`TBufferFile::ReadObjectAny(this clCast at 6480 135 48 libCore.so`TStreamerBase::ReadBuffer(this b pointer 4160 65 64 libRIO.so`TGenCollectionStreamer::ReadBufferGeneric(this b obj 4160 65 64 libRIO.so`TBufferFile::ReadFastArray(this start cl 3120 65 48 libRIO.so`int TStreamerInfoActions::ReadSTL<&(TStreamerInfoActions::ReadSTLMemberWiseSameClass(TBuffer&, void*, 2080 65 32 libRooFitCore.so`RooAbsArg::Streamer(this R__b at 960 10 96 libRooFitCore.so`RooRealVar::Streamer(this R__b at 96 2 48 libRooFitCore.so`RooHistFunc::Streamer(this R__b at 96 2 48 libHistFactory.so`PiecewiseInterpolation::Streamer(this R__b at 21 December 2021, 13:36:42 UTC
acba60f [RF] Fix memory leaks in `testRooParamHistFunc` and silence test output The `RooAbsReal::createIntegral()` function returns an owning pointer, so the return value needs to be wrapped in an `std::unique_ptr`. 21 December 2021, 12:43:05 UTC
adc78fa [RF] Use `ULong64_t` for persistent data member `RooDataHist::_curIndex` Both `unsigned long` and `std::size_t` are not the right types for getting a 64-bit unsigned integer on every platform. Following the advice by @pcanal, `ULong64_t` is now used instead. This closes #9468. 21 December 2021, 12:06:08 UTC
37797c3 Disable multi-thread tests when running without imt 21 December 2021, 11:21:37 UTC
47f66c5 [RF] Some code modernization of RooNLLVar * replace `Double_t` with `double` and `Int_t` with `int` * replace `kTRUE` with `true` and `kFALSE` with `false` * remove redundant member initializations * avoid code duplication in internal-use constructors * replace C-style casts with C++ casts * add missing `_binnedPdf->setAttribute("BinnedLikelihoodActive") ;` to one of the internal-use constructors to be consistent with the other internal-use constructor * fix memory leak of a `std::list<Double_t>` * replace `fabs` with `std::abs` 21 December 2021, 09:05:34 UTC
f487a65 [jsroot] do not try to inspect TKey with directory on THttpServer Such object only can be browsed 20 December 2021, 17:03:12 UTC
fa37687 [http] do not list object members when object scanned as container When scanning sub-elements with sniffer, it is allowed to get list of object members. But this should not be performed for container objects like TFolder or TDirectory 20 December 2021, 17:03:12 UTC
b8fd086 [PyROOT] Fix installation of PyROOT Python modules 20 December 2021, 15:33:33 UTC
ff2c0a1 Disable Cling optimizations in TCanvas::SaveSource (#9467) As discussed in https://github.com/root-project/root/issues/9312, long generated functions triggers edge cases in the optimizer passes and takes very long to compile for little to no gain in runtime. * Use C++ raw string for code Co-authored-by: Axel Naumann <Axel.Naumann@cern.ch> 20 December 2021, 12:35:49 UTC
59c7f2e [DF] Avoid passing a useless parameter to RColumnRegister::AddColumn The column knows its name, no need to pass it as parameter. 20 December 2021, 10:22:55 UTC
83f8e61 [DF] Prefer moving to copying a local variable into a data member 20 December 2021, 10:22:55 UTC
de69167 [DF] Remove unused constructor from RColumnRegister 20 December 2021, 10:22:55 UTC
899b95e [DF] Prefer std::unordered_map to std::map in RColumnRegister We don't care about ordering and we prefer faster code for large amounts of booked columns. 20 December 2021, 10:22:55 UTC
c2e0a01 [DF] Rename RBookedDefines -> RColumnRegister We already abuse this class to also keep track of aliases. Soon we will also keep track of defined systematic variations here. Clarify the role of this class with a more appropriate name. 20 December 2021, 10:22:55 UTC
575947c [DF] Improve comments, variable names in RBookedDefines 20 December 2021, 10:22:55 UTC
60516f9 [NFC][DF] Reorder includes in RBookedDefines 20 December 2021, 10:22:55 UTC
702e1ee [DF] Windows needs the fully qualified name 18 December 2021, 10:07:12 UTC
99701af [DF] Avoid calling InitSlot/FinaliseSlot multiple times on RDefines Before this commit, each action and filter was calling InitSlot on all the defines it knew about. As a consequence, RDefine had to keep track of whether InitSlot was already called on it for a given task and a given slot. We can avoid the multiple InitSlot calls on the same objects and the book-keeping of whether the call already happened or not by having RLoopManager call InitSlot on every defined column once per task and per slot. To this end, we need to register RDefine objects with the RLoopManager when they are created and deregister them when they are destroyed. 18 December 2021, 10:07:12 UTC
bc1720b [DF] Store fLoopManager pointer as a data member of RDefineBase It's a pre-requisite to avoid calling InitSlot/FinaliseSlot multiple times on RDefines: we will call InitSlot once on all RDefine objects from the RLoopManager, and they will have to deregister themselves from the RLoopManager upon destruction. 18 December 2021, 10:07:12 UTC
09358df [VecOps] Disable cling nullptr checks in RVec 18 December 2021, 10:06:56 UTC
b45aa4e [jsroot] Several fixes in 6.3.2 version TEfficiency fix Provide TPadPainter.divide method 17 December 2021, 19:55:12 UTC
4ab7215 Fix drag and drop on Linux (x86_64) Add `#ifdefs` to Protect 32 bit specific code in X11 event handling. This fixes an issue with the `drag_and_drop.C` tutorial on Debian 10 & Gnome, [as reported on the Forum](https://root-forum.cern.ch/t/drag-and-drop-in-root-6-24/47789) 17 December 2021, 16:54:40 UTC
b13b1a2 In FirstParse, text size was wrong. (#9451) * In FirstParse, text size was wrong. * Update help of GetX/YSize * Same fix for TMathText * Some code appeared twice. It has been put in GetTextSizePercent. 17 December 2021, 16:28:36 UTC
051b2ac Fix drag and drop on Windows Fix the following side effect with the `drag_and_drop.C` tutorial on Windows: When starting to drag an item from the list tree, the item gets copied inside the list tree, like if it was dropped in the folder of the tree. 17 December 2021, 13:40:32 UTC
305133f fix openmp shadowing declaration of MnPrint print thread-local variable 17 December 2021, 09:56:29 UTC
5af432e [TMVA] Fix compilation warnings on Win64 Fix the following compilation warnings on Win64: ``` BinarySearchTreeNode.cxx(161,39): warning C4311: '<function-style-cast>': pointer truncation from 'const TMVA::BinarySearchTreeNode *' to 'long' BinarySearchTreeNode.cxx(161,39): warning C4302: '<function-style-cast>': truncation from 'const TMVA::BinarySearchTreeNode *' to 'long' BinarySearchTreeNode.cxx(162,86): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::Node *' to 'long' BinarySearchTreeNode.cxx(162,86): warning C4302: '<function-style-cast>': truncation from 'TMVA::Node *' to 'long' BinarySearchTreeNode.cxx(163,89): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::Node *' to 'long' BinarySearchTreeNode.cxx(163,89): warning C4302: '<function-style-cast>': truncation from 'TMVA::Node *' to 'long' BinarySearchTreeNode.cxx(164,92): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::Node *' to 'long' BinarySearchTreeNode.cxx(164,92): warning C4302: '<function-style-cast>': truncation from 'TMVA::Node *' to 'long' DecisionTreeNode.cxx(230,39): warning C4311: '<function-style-cast>': pointer truncation from 'const TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(230,39): warning C4302: '<function-style-cast>': truncation from 'const TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(231,94): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(231,94): warning C4302: '<function-style-cast>': truncation from 'TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(232,92): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(232,92): warning C4302: '<function-style-cast>': truncation from 'TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(233,93): warning C4311: '<function-style-cast>': pointer truncation from 'TMVA::DecisionTreeNode *' to 'long' DecisionTreeNode.cxx(233,93): warning C4302: '<function-style-cast>': truncation from 'TMVA::DecisionTreeNode *' to 'long' ``` 17 December 2021, 09:07:52 UTC
ddcd575 [clad] Extend test coverage with bigaus function. 17 December 2021, 09:02:54 UTC
3f425cc Reset to highest possible value when setting more than max-z-divisions. (#9300) 17 December 2021, 09:00:40 UTC
c561dd0 Provide colz as default draw option for 2D TEfficiency 17 December 2021, 08:16:14 UTC
6a70833 [skip-ci] Remove forgotten debug flag on Win64 17 December 2021, 08:02:53 UTC
2c9842f [TMVA][SOFIE] Fix Conv operator for the 3D case Add also a test for the 3D convolution 17 December 2021, 07:31:12 UTC
bab6bab [roofit] add missing include in multiprocess/src/Config.cxx When compiled with -Ddev=ON options, <cstdio> include is not provided. 17 December 2021, 07:01:23 UTC
8b6dbbb [RF] New `RooBatchCompute::DataKey` to easily change data map keys A RooBatchCompute::DataKey can be constructed with no runtime overhead from the pointer to any class T that implements a casting operator to DataKey. Compared to using the pointer to the object of type T directly, this has the advantage that one can easily change the way the key is constructed from the object, just by changing the implementation of the casting operator. For example, it is trivial to move from using the RooAbsArg pointer to using the unique name pointer retrieved by RooAbsArg::namePtr(). This is to prepare more follow-up developments in which the data maps will actually be keyed by name pointer. 16 December 2021, 19:17:10 UTC
5f26326 reduce number of bins in ND histogram test 16 December 2021, 17:08:59 UTC
1865ce5 make format string platform-independent 16 December 2021, 17:08:59 UTC
7ea52dc add tests for HistoND 16 December 2021, 17:08:59 UTC
5ff622f Add HistoND call to RDF to fill a THnD with arbitrary number of dimensions 16 December 2021, 17:08:59 UTC
dc71b42 replace special cases with more general variadic templates, supporting arbitrary types and number of inputs and mix of scalars and containers 16 December 2021, 17:08:59 UTC
1256415 alternate version of Fill for THn using variadic templates to more closely follow TH1 conventions and allow RDF support 16 December 2021, 17:08:59 UTC
1f2b8db add constructors for variable binning case 16 December 2021, 17:08:59 UTC
afb9521 migrate THn and associated classes from C-style arrays to std::vector this allows default constructors and destructors to be generated 16 December 2021, 17:08:59 UTC
a56c0e1 [RF] Make `roobatchcompute` header files safer The changes in this commit achieve two things: 1. Reduce set of indirectly included headers in other RooFit libraries by including new `RooBatchComputeTypes.h` instead of `RooBatchCompute.h` if only the typedefs in the RooBatchCompute namespace are used. 2. Make sure that no dummy definitions of `__device__` or `__host__` in case no NVidia compiler is used can leak to user code via `roobatchcompute` header files. 16 December 2021, 15:10:19 UTC
e872fc9 [RF] Add RooPolyFunc including unit test and tutorial 16 December 2021, 13:28:33 UTC
0dbe454 [DF] Give more meaningful user-visible names to Fill actions In particular, point out when we are doing something "special", i.e. filling histograms with unkown axes. This requires extra care and extra memory usage in multi-thread runs. 15 December 2021, 23:11:14 UTC
fb2ca5b [TMVA][SOFIE] Fix Conv operator for the 1D convolution Fix the support for 3d input tensors when performing 1d convolution. Add also a test for 1D convolution in TestSofieModels 15 December 2021, 21:44:36 UTC
ad259f8 [RF] Include VDT headers only in source files to avoid exposing VDT to outside users of RooFit Move the inclusion of RooVDTHeaders from BatchCompute.h that is included from the major RooFit classes to the source files 15 December 2021, 17:08:39 UTC
f4ade52 [RF] Fix imt and VDT dependency for roofit BatchCompute library - When imt is off one needs to have still the imt dependency for using TExecutor - Fix correct definition for variable defining location of vdt headers. It should be VDT_INCLUDE_DIRS and not VDT_INCLUDE_DIR and use PRIVATE instead of PUBLIC in target_include_directories 15 December 2021, 17:08:39 UTC
d86a44b [relnotes][skip-ci] Fix v6.26 release notes for RNTuple (NFC) Co-authored-by: Axel Naumann <Axel.Naumann@cern.ch> 15 December 2021, 14:30:18 UTC
5016ef7 [relnotes] Update release notes for v6.26 15 December 2021, 10:08:01 UTC
30f90b8 [ntuple] test/ntuple_types: remove no-op line in `CustomStructLinkDef.h` `#pragma link C++ typedef foo` is only used by rootcling to generate a dictionary for `foo` if it is a typedef for a class/struct. Here, `SG::sgkey_t` is a typedef for a fundamental type, which causes rootcling to print a warning: ``` Warning: Unused class rule: SG::sgkey_t ``` Instead, make cling parse `CustomStruct.hxx` so that the type information becomes available. 15 December 2021, 09:09:25 UTC
e510a12 [ntuple] Add guards to header `tree/ntuple/v7/test/CustomStruct.hxx` 15 December 2021, 09:09:25 UTC
4c6ffac Fix in THStack drawing option "pads" (#9438) 14 December 2021, 14:56:21 UTC
b8df07c [cmake] Fix setting cuda off when is not found When cuda is not found, if teh cmake cuda flag was on it was not switched off, causing an error when building RooFit on a platform without cuda. 14 December 2021, 13:39:19 UTC
1b779ea [RF] Catch general plotting exception in rf409_NumPyPandasToRooFit.py Plotting with matplotlib doesn't work on the CI nodes even if matplotib is installed because there is not `DISPLAY` variable. Hence we should catch a general exception to cover also that case, not only an `ImportError`. 13 December 2021, 22:02:41 UTC
cd5210d [DF] Make sure the Dask scheduler has information about the workers The current implementation of `optimize_npartitions` of the Dask backend queries information about the workers from the Dask client object. The information is stored in the `client.scheduler_info()` return value which is a dictionary that can have the key `workers`. Supposedly, when this key exists it means the Dask client has the needed information. This is not always true. In certain scenarios, for example when waiting for a batch system to return the available workers to the dask client, the `workers` key will be present but its value will be an empty dictionary. This is because the scheduler doesn't already know which nodes of the cluster will become workers (this can be mitigated by calling the `client.wait_for_workers` function beforehand). This commit makes the check a bit stronger, getting the value of the dictionary key `workers` and then checking if that value actually contains something. 13 December 2021, 20:13:34 UTC
57c3fb2 [TMVA][SOFIE] Fix allocation of LSTM and GRU internal data structure. The internal data (tensors) are now created in the constructor of the Session class for LSTM and GRU operators. This provides a 10% improvement in performance and avoid to use a too large stack aize for big models. 13 December 2021, 20:10:16 UTC
c233a8e [TMVA][SOFIE] Fix the correct offset of input LSTM weights and bias In ONNX the LSTM weights are stored in this order: - input gate, output gate, forget gate, cell gate The code was assuming that output gate was instead after forget gate. Same thing also for the bias. With this change the LSTM test of TestSofieModels passes 13 December 2021, 20:10:16 UTC
aa4f610 [TMVA][SOFIE] Fix initialization of tensors for RNN and LSTM. For RNN create internal vectors in the Session class constructor 13 December 2021, 20:10:16 UTC
7a330d7 [VecOps] Pre-allocate vectors of the appropriate size in Combinations That's better than calling emplace_back a bunch of times. 13 December 2021, 18:24:13 UTC
8668c19 [ntuple] RNTupleSerializer::SerializeFeatureFlags: clarify the purpose of the MSb in feature flags (NFC) Co-authored-by: Philippe Canal <pcanal@fnal.gov> 13 December 2021, 17:37:16 UTC
f86795d [ntuple] RNTupleSerialize: do not use two's complement to encode feature flags The RNTuple binary format v1 states that feature flags bitmap is encoded as a sequence of 64-bit integers in which the MSb indicates that another 64-bit block follows. If more than one 64-bit integer is serialized, the MSb of all but the last integer should be 1 and the rest of the bits should preserve their original meaning. Therefore, this commit avoids the use of two's complement in favour of manually setting the MSb. 13 December 2021, 17:37:16 UTC
00e0056 [jsroot] bugfix version 6.3.2 Fix bug in TH1 drawing when minimum or/and maximum was configured for histogram 13 December 2021, 17:28:55 UTC
adf9ea8 [NFC][DF] Fix typo 13 December 2021, 11:09:45 UTC
e04ca64 [tree] Give more unique filenames in entrylist tests 13 December 2021, 08:46:29 UTC
5f3de4b [RF] MultiProcess bugfix: close ZeroMQ context correctly As explained in the comments added in the code in this commit, the zmqSvc().close_context() was called at the wrong moment, namely in the Messenger destructor. When this was called at program exit, it caused dereferencing of a destroyed (and in the meantime randomly overwritten) singleton pointer, which caused a segfault on some systems. This bug probably went unnoticed before because it is a case of "static destruction order fiasco", which makes it build command, OS and probably weather dependent. This also makes the RooMinimizer::cleanup() calls after tests unnecessary; they were used as a workaround for the above problem, because by manually destroying all Jobs (which were held alive inside RooMinimizer::_theFitter, which is deleted by RooMinimizer::cleanup), the JobManager was also destroyed (when all Jobs are destroyed, the JobManager self-destructs as well) before the ZeroMQSvc singleton is destroyed by the exiting of the program (in the phase of destroying static state), so the "random" destruction order problem mentioned above did not occur. Thanks to @Zeff020 for discovering the bug. 12 December 2021, 21:02:12 UTC
e2da141 [RF] add MultiProcess::Config for setting number of workers This commit adds the Config class to provide a user-accessible place set the desired number of workers. The number of workers was previously settable from a static public member of JobManager, but since we do not expose MultiProcess internals to users, it was unreachable from the ROOT interpreter and scripts. Thanks to @Zeff020 for noticing this omission. 12 December 2021, 20:55:44 UTC
9801694 [RF] Use EXPECT_NEAR for batch mode comparisons in testLikelihoodSerial Before, and exact foating point match was required in the LikelihoodSerialTest.BatchedUnbinnedGaussianND unit test. However, the results of the new batch mode can be slightly different numerically, so we introduce a relative tolerance of 1e-14 when comparing the NLL from the new likelihood classes to the batch mode NLL. 12 December 2021, 15:51:00 UTC
ff238f4 [RF] Make old batched evaluation interface available again This makes the old batch mode interface available again in `RooAbsPdf::fitTo` and `RooAbsPdf::createNLL`. It is not for the user, but the developer to easily make performance comparisons. One just has to pass the command argument `RooFit::BatchMode("old")`. The enum class `RooBatchCompute::BatchMode` was also moved to `RooFit::BatchModeOption` because it was never used int the batch computation library. The `Option` was added to the name to avoid a naming collision with the `RooFit::BatchMode` command argument. 12 December 2021, 15:51:00 UTC
31a05be [RF] Refactor likelihood creation code for new batch mode The code that was previously in RooAbsPdf.cxx got moved to a new file BatchModeHelpers.cxx. Furthermore, code duplication in retrieving the configuration parameters is removed. 12 December 2021, 15:51:00 UTC
dbfc076 Optimize RooAbsCollection::containsInstance for RooArgSet 11 December 2021, 22:57:08 UTC
5736fd2 New RooAbsData::split function for smaller datasets in categories 11 December 2021, 20:54:06 UTC
65779a1 [RF] Move ProxyListCache into more efficient position. 11 December 2021, 20:54:06 UTC
c95173a [RF] Caching mechanism to prevent dynamic_cast in RooAbsArg::setProxyNormSet 11 December 2021, 20:54:06 UTC
812cdd7 [RF] Use RooFormula copy constructor in RooFormulaVar copy constructor This speeds up the likelihood creation for the ATLAS Higgs to GG workspace by 20 %. 11 December 2021, 20:52:22 UTC
b150171 [RF] Add utility function to reserve memory for addParameters 11 December 2021, 12:18:53 UTC
720e53e [RF] Disable `DISABLED_IntegrateBins_SubRange` in testTestStatistics The `DISABLED_IntegrateBins_SubRange` test covers the minimization of a `RooBinSamplingPdf` in a sub-range. This test does not work with the new RooFit batch mode yet, and there was no time to fix this issue before the ROOT v6.26 branch point. 11 December 2021, 09:54:51 UTC
7cf85da [RF] Add basic unit test for RooFitDriver (`testRooFitDriver`) 11 December 2021, 09:54:51 UTC
4113a6c [RF] Add support for NaN-packing in new batch mode This excludes the pdfs that are implemented in the BatchComputation library directy, for which we have to find a solution later. The problem is that in CUDA evaluations, the division by the normalization is done on the device, but we have not implemented division with NaN packing in CUDA yet. However, we support now NaN-packing for all pdfs that don't have a `computeBatch` function implemented. In particular, this makes the `testNaNPacker` pass (it involves a RooGenericPdf). 11 December 2021, 09:54:51 UTC
b27ff4b [RF] Use Kahan summation in `RooNLLVarNew` 11 December 2021, 09:54:51 UTC
8ee5e54 [RF] Remove assertion for same layout in `RooDataHist::calcTreeIndex` With the `fast` flag enabled in `RooDataHist::calcTreeIndex`, the caller promises that layout of `coords` is identical to our internal `vars`. Previously, this was verified with an assert in debug mode like this: assert(!fast || coords.hasSameLayout(_vars)); However, there are usecases where the externally provided `coords` have different names than the internal variables, even though they correspond to each other. For example, if the observables in the computation graph are renamed with `redirectServers`, which happens in a RooSimultaneous fit with the new RooFit batch mode. Hence, we can't do a meaningful assert here. 11 December 2021, 09:54:51 UTC
c233c6c [RF] Avoid premature deletion of nodeInfo and buffers for integrals 11 December 2021, 09:54:51 UTC
aec9287 [RF] Support for `BinIntegration()` in new batch mode 11 December 2021, 09:54:51 UTC
e869dcf [RF] RooSimultaneous support in new batchmode with RooFitDriver 11 December 2021, 09:54:51 UTC
35b1ba8 [RF] Split up data in RooFitDriver if there is a RooSimultaneous 11 December 2021, 09:54:51 UTC
84cf5ba [RF] Add constraint term in new batch mode with `RooAddition` 11 December 2021, 09:54:51 UTC
back to top