1c01f9f | Axel Naumann | 05 January 2022, 10:12:16 UTC | "Update ROOT version files to v6.25/02." | 05 January 2022, 10:12:16 UTC |
b5329d6 | Alja Mrak Tadel | 04 December 2021, 06:29:32 UTC | Catch exceptions in scene updates | 05 January 2022, 07:00:22 UTC |
f6aff1c | alja | 14 December 2021, 19:20:28 UTC | Cahanges to REveDataCollectionProxy interface | 05 January 2022, 07:00:22 UTC |
319e08c | Alja Mrak Tadel | 10 December 2021, 20:26:10 UTC | Use more descriptive build function names | 05 January 2022, 07:00:22 UTC |
390f93a | Alja Mrak Tadel | 07 December 2021, 06:50:26 UTC | Fix selection when lowering the threshold | 05 January 2022, 07:00:22 UTC |
4bd8368 | Alja Mrak Tadel | 07 December 2021, 06:26:28 UTC | Corrections in remove filter | 05 January 2022, 07:00:22 UTC |
737a086 | Alja Mrak Tadel | 06 December 2021, 23:12:00 UTC | Handle empty filter expression | 05 January 2022, 07:00:22 UTC |
b98f8f9 | Alja Mrak Tadel | 23 November 2021, 01:58:23 UTC | Update table conent even if its collection is not visible | 05 January 2022, 07:00:22 UTC |
e26f375 | Alja Mrak Tadel | 23 November 2021, 01:51:11 UTC | Create Calo2D and Calo3D empty mesh even if REveCaloData is empty | 05 January 2022, 07:00:22 UTC |
e51a64c | Alja Mrak Tadel | 19 November 2021, 22:28:33 UTC | Change warning in EveManager.prototype.removeElements | 05 January 2022, 07:00:22 UTC |
c49f2c0 | Alja Mrak Tadel | 19 November 2021, 19:18:50 UTC | Check GL viewer is mapped/visible before rendering | 05 January 2022, 07:00:22 UTC |
1f4331c | Alja Mrak Tadel | 09 November 2021, 22:55:40 UTC | Stamp object in UpdateProjection() | 05 January 2022, 07:00:22 UTC |
4c6ac5d | Alja Mrak Tadel | 09 November 2021, 22:54:37 UTC | Reset render data even if cell list is empty | 05 January 2022, 07:00:22 UTC |
7821ed1 | Nicolas Morange | 22 December 2021, 18:51:48 UTC | [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 | Axel Naumann | 21 December 2021, 11:00:35 UTC | [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 | Stephan Hageboeck | 20 December 2021, 12:01:33 UTC | [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 | Jonas Rembser | 21 December 2021, 11:47:50 UTC | [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 | Jonas Rembser | 20 December 2021, 16:13:22 UTC | [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 | moneta | 17 December 2021, 16:44:09 UTC | Disable multi-thread tests when running without imt | 21 December 2021, 11:21:37 UTC |
47f66c5 | Jonas Rembser | 25 October 2021, 22:00:12 UTC | [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 | Sergey Linev | 20 December 2021, 14:37:06 UTC | [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 | Sergey Linev | 20 December 2021, 14:34:10 UTC | [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 | Enric Tejedor Saavedra | 20 December 2021, 12:51:32 UTC | [PyROOT] Fix installation of PyROOT Python modules | 20 December 2021, 15:33:33 UTC |
ff2c0a1 | Jonas Hahnfeld | 20 December 2021, 12:35:49 UTC | 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 | Enrico Guiraud | 29 October 2021, 15:05:09 UTC | [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 | Enrico Guiraud | 29 October 2021, 13:23:07 UTC | [DF] Prefer moving to copying a local variable into a data member | 20 December 2021, 10:22:55 UTC |
de69167 | Enrico Guiraud | 29 October 2021, 13:22:26 UTC | [DF] Remove unused constructor from RColumnRegister | 20 December 2021, 10:22:55 UTC |
899b95e | Enrico Guiraud | 28 October 2021, 19:31:08 UTC | [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 | Enrico Guiraud | 27 October 2021, 18:30:24 UTC | [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 | Enrico Guiraud | 27 October 2021, 18:23:53 UTC | [DF] Improve comments, variable names in RBookedDefines | 20 December 2021, 10:22:55 UTC |
60516f9 | Enrico Guiraud | 27 October 2021, 18:17:23 UTC | [NFC][DF] Reorder includes in RBookedDefines | 20 December 2021, 10:22:55 UTC |
702e1ee | Enrico Guiraud | 28 October 2021, 16:14:46 UTC | [DF] Windows needs the fully qualified name | 18 December 2021, 10:07:12 UTC |
99701af | Enrico Guiraud | 26 October 2021, 08:28:14 UTC | [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 | Enrico Guiraud | 26 October 2021, 08:33:31 UTC | [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 | Enrico Guiraud | 16 December 2021, 17:42:31 UTC | [VecOps] Disable cling nullptr checks in RVec | 18 December 2021, 10:06:56 UTC |
b45aa4e | Sergey Linev | 17 December 2021, 15:15:14 UTC | [jsroot] Several fixes in 6.3.2 version TEfficiency fix Provide TPadPainter.divide method | 17 December 2021, 19:55:12 UTC |
4ab7215 | Bertrand Bellenot | 17 December 2021, 13:33:03 UTC | 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 | Olivier Couet | 17 December 2021, 16:28:36 UTC | 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 | Bertrand Bellenot | 17 December 2021, 10:14:12 UTC | 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 | Konstantin Gizdov | 24 November 2021, 08:46:57 UTC | fix openmp shadowing declaration of MnPrint print thread-local variable | 17 December 2021, 09:56:29 UTC |
5af432e | Bertrand Bellenot | 09 December 2021, 07:49:17 UTC | [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 | Vassil Vassilev | 21 September 2021, 19:19:40 UTC | [clad] Extend test coverage with bigaus function. | 17 December 2021, 09:02:54 UTC |
3f425cc | ferdymercury | 17 December 2021, 09:00:40 UTC | Reset to highest possible value when setting more than max-z-divisions. (#9300) | 17 December 2021, 09:00:40 UTC |
c561dd0 | Sergey Linev | 16 December 2021, 17:32:59 UTC | Provide colz as default draw option for 2D TEfficiency | 17 December 2021, 08:16:14 UTC |
6a70833 | Bertrand Bellenot | 17 December 2021, 07:55:34 UTC | [skip-ci] Remove forgotten debug flag on Win64 | 17 December 2021, 08:02:53 UTC |
2c9842f | lmoneta | 16 December 2021, 19:14:26 UTC | [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 | Sergey Linev | 16 December 2021, 17:38:56 UTC | [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 | Jonas Rembser | 16 December 2021, 16:39:02 UTC | [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 | Josh Bendavid | 16 December 2021, 15:01:24 UTC | reduce number of bins in ND histogram test | 16 December 2021, 17:08:59 UTC |
1865ce5 | Josh Bendavid | 16 December 2021, 15:00:56 UTC | make format string platform-independent | 16 December 2021, 17:08:59 UTC |
7ea52dc | Josh Bendavid | 11 November 2021, 00:17:02 UTC | add tests for HistoND | 16 December 2021, 17:08:59 UTC |
5ff622f | Josh Bendavid | 09 November 2021, 20:05:09 UTC | Add HistoND call to RDF to fill a THnD with arbitrary number of dimensions | 16 December 2021, 17:08:59 UTC |
dc71b42 | Josh Bendavid | 14 March 2021, 17:14:17 UTC | 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 | Josh Bendavid | 14 March 2021, 17:12:05 UTC | 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 | Josh Bendavid | 11 November 2021, 01:36:33 UTC | add constructors for variable binning case | 16 December 2021, 17:08:59 UTC |
afb9521 | Josh Bendavid | 11 November 2021, 01:35:33 UTC | 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 | Jonas Rembser | 16 December 2021, 12:51:17 UTC | [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 | rahulgrit | 16 December 2021, 11:59:24 UTC | [RF] Add RooPolyFunc including unit test and tutorial | 16 December 2021, 13:28:33 UTC |
0dbe454 | Enrico Guiraud | 13 December 2021, 16:56:49 UTC | [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 | lmoneta | 15 December 2021, 11:55:59 UTC | [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 | lmoneta | 15 December 2021, 14:00:49 UTC | [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 | lmoneta | 15 December 2021, 10:11:08 UTC | [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 | Javier Lopez-Gomez | 15 December 2021, 12:30:17 UTC | [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 | Javier Lopez-Gomez | 14 December 2021, 16:15:59 UTC | [relnotes] Update release notes for v6.26 | 15 December 2021, 10:08:01 UTC |
30f90b8 | Javier Lopez-Gomez | 14 December 2021, 14:02:56 UTC | [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 | Javier Lopez-Gomez | 14 December 2021, 17:37:35 UTC | [ntuple] Add guards to header `tree/ntuple/v7/test/CustomStruct.hxx` | 15 December 2021, 09:09:25 UTC |
4c6ffac | Olivier Couet | 14 December 2021, 14:56:21 UTC | Fix in THStack drawing option "pads" (#9438) | 14 December 2021, 14:56:21 UTC |
b8df07c | moneta | 14 December 2021, 10:55:02 UTC | [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 | Jonas Rembser | 05 December 2021, 16:13:51 UTC | [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 | Vincenzo Eduardo Padulano | 13 December 2021, 13:19:49 UTC | [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 | lmoneta | 13 December 2021, 18:44:10 UTC | [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 | lmoneta | 13 December 2021, 17:36:30 UTC | [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 | lmoneta | 13 December 2021, 16:41:19 UTC | [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 | Enrico Guiraud | 03 December 2021, 14:18:51 UTC | [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 | Javier Lopez-Gomez | 13 December 2021, 13:51:35 UTC | [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 | Javier Lopez-Gomez | 11 December 2021, 19:35:25 UTC | [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 | Sergey Linev | 13 December 2021, 17:10:31 UTC | [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 | Enrico Guiraud | 13 December 2021, 10:03:59 UTC | [NFC][DF] Fix typo | 13 December 2021, 11:09:45 UTC |
e04ca64 | Vincenzo Eduardo Padulano | 11 December 2021, 08:53:32 UTC | [tree] Give more unique filenames in entrylist tests | 13 December 2021, 08:46:29 UTC |
5f3de4b | E. G. Patrick Bos | 09 December 2021, 12:35:23 UTC | [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 | E. G. Patrick Bos | 10 December 2021, 11:56:25 UTC | [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 | Jonas Rembser | 12 December 2021, 11:42:52 UTC | [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 | Jonas Rembser | 12 December 2021, 02:57:50 UTC | [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 | Jonas Rembser | 12 December 2021, 02:01:29 UTC | [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 | Nicolas Morange | 11 December 2021, 18:41:01 UTC | Optimize RooAbsCollection::containsInstance for RooArgSet | 11 December 2021, 22:57:08 UTC |
5736fd2 | Nicolas Morange | 10 December 2021, 13:12:34 UTC | New RooAbsData::split function for smaller datasets in categories | 11 December 2021, 20:54:06 UTC |
65779a1 | Stephan Hageboeck | 10 December 2021, 15:28:25 UTC | [RF] Move ProxyListCache into more efficient position. | 11 December 2021, 20:54:06 UTC |
c95173a | Nicolas Morange | 10 December 2021, 13:37:21 UTC | [RF] Caching mechanism to prevent dynamic_cast in RooAbsArg::setProxyNormSet | 11 December 2021, 20:54:06 UTC |
812cdd7 | Jonas Rembser | 11 December 2021, 12:52:38 UTC | [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 | Nicolas Morange | 11 December 2021, 00:13:46 UTC | [RF] Add utility function to reserve memory for addParameters | 11 December 2021, 12:18:53 UTC |
720e53e | Jonas Rembser | 09 December 2021, 00:15:58 UTC | [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 | Jonas Rembser | 08 December 2021, 23:14:02 UTC | [RF] Add basic unit test for RooFitDriver (`testRooFitDriver`) | 11 December 2021, 09:54:51 UTC |
4113a6c | Jonas Rembser | 19 November 2021, 10:10:56 UTC | [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 | Jonas Rembser | 17 November 2021, 17:00:32 UTC | [RF] Use Kahan summation in `RooNLLVarNew` | 11 December 2021, 09:54:51 UTC |
8ee5e54 | Jonas Rembser | 19 November 2021, 16:43:14 UTC | [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 | Jonas Rembser | 19 November 2021, 00:41:44 UTC | [RF] Avoid premature deletion of nodeInfo and buffers for integrals | 11 December 2021, 09:54:51 UTC |
aec9287 | Jonas Rembser | 19 November 2021, 00:03:01 UTC | [RF] Support for `BinIntegration()` in new batch mode | 11 December 2021, 09:54:51 UTC |
e869dcf | Jonas Rembser | 12 November 2021, 13:07:13 UTC | [RF] RooSimultaneous support in new batchmode with RooFitDriver | 11 December 2021, 09:54:51 UTC |
35b1ba8 | Jonas Rembser | 12 November 2021, 08:40:20 UTC | [RF] Split up data in RooFitDriver if there is a RooSimultaneous | 11 December 2021, 09:54:51 UTC |
84cf5ba | Jonas Rembser | 09 November 2021, 09:02:45 UTC | [RF] Add constraint term in new batch mode with `RooAddition` | 11 December 2021, 09:54:51 UTC |