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

sort by:
Revision Author Date Message Commit Date
0ce7176 make version v5-34-10. 29 August 2013, 14:42:02 UTC
b0814f8 Revert "UseCache()" removal, to avoid API change in patch branch. 29 August 2013, 14:40:29 UTC
dd55a0f mark ReAlloc(void*,size_t) as obsolete for v6-02-00 as it is non-safe. 28 August 2013, 13:19:55 UTC
e13d913 Finally remove TFile::UseCache() which was marked for removal by v5-32-00. 28 August 2013, 13:19:32 UTC
d914270 expand comment of ReAlloc(). Explains ROOT-5115. 28 August 2013, 11:25:03 UTC
927de44 Protection added in case the remote file is not accesible. 28 August 2013, 10:36:19 UTC
3d0f151 Silence CID 52143: don't deref NULL ptr 28 August 2013, 09:46:46 UTC
89790c9 Silence CID 52142: check dynamic_cast NULL retval 28 August 2013, 09:46:46 UTC
e6585ba The option "A" in the `Draw()` was not cleaning properly the current pad. 28 August 2013, 08:38:53 UTC
0108a43 Undo previous fix, it generated an extra page in pdf files. Better fix under investigation. 28 August 2013, 06:56:05 UTC
d994cae Fix warning on Windows 27 August 2013, 21:53:17 UTC
31b06bc Synchronize TPacketizerUnit with 'master' 27 August 2013, 21:08:23 UTC
bb3894f fix name completion for instances 27 August 2013, 18:58:58 UTC
d83c1b3 Fix warning 27 August 2013, 15:27:19 UTC
f69bcb5 Add missing forward declaration 27 August 2013, 15:21:13 UTC
0c16ab2 No bloating IgProf output and clearer profile type Now the tag to invoke IgProf performance profiling is "igprof-pp" and no longer "igprof" alone. Leaves some space for adding IgProf memory profiling. 27 August 2013, 13:32:37 UTC
a99badd PROOF: automatic igprof-analyse for IgProf pp logs 27 August 2013, 13:32:37 UTC
dad0eac Some debug in PROOF log retrieval 27 August 2013, 13:32:37 UTC
1c50887 PROOF GUI support for log filtering via pipe cmd 27 August 2013, 13:32:37 UTC
00e7d78 Added quotes for igprof cmd in PROOF-Lite 27 August 2013, 13:32:37 UTC
29f86f4 Added PROOF logfiles preprocessing before sending 27 August 2013, 13:32:37 UTC
c601e3e No newline in PROOF logfiles retrieval progress 27 August 2013, 13:32:36 UTC
37f79c1 Fixed PROOF pct of completion when getting logs 27 August 2013, 13:32:36 UTC
12aea14 PROOF: tag identifying additional logfiles Tags are now used for the Valgrind and IgProf wrappers, generating additional logfiles. They are appended to the "ordinal" number both for the master line and the workers lines. Appending tags to ordinals also incidentally fixes a bug leading to having the additional logfile concatenated to the ordinary logfile while getting the first. 27 August 2013, 13:32:36 UTC
ce6fa9c Started working on integrating IgProf in PROOF 27 August 2013, 13:32:36 UTC
243899f Fix https://sft.its.cern.ch/jira/browse/ROOT-4516 The option "A" in the `Draw()` was not cleaning properly the current pad. 27 August 2013, 13:27:17 UTC
292cf1f Protection added in UnZoom 27 August 2013, 11:10:43 UTC
f3bbd87 provide symbolic values for different styles as suggested here: https://sft.its.cern.ch/jira/browse/ROOT-4910 27 August 2013, 10:55:17 UTC
b371aca Add mnemonic constants: kHAlignLeft=10, kHAlignCenter=20, kHAlignRight=30, kVAlignBottom=1, kVAlignCenter=2, kVAlignTop=3 They allow to write: object->SetTextAlign(kHAlignLeft+kVAlignTop) 27 August 2013, 08:17:48 UTC
a05d022 Fix typo in dependency 25 August 2013, 15:46:04 UTC
32c0de1 Update version number 25 August 2013, 09:42:37 UTC
926e422 Use uniform naming scheme for scope rc vars Conflicts: proof/proof/src/TProofServ.cxx 24 August 2013, 09:39:07 UTC
5bdfb65 Fix warning found by EC 24 August 2013, 08:43:49 UTC
dfe63b8 Master-side logic for controlled output sending 23 August 2013, 23:29:12 UTC
2c865b6 Fine-tune patch c56ca1b to control output sending 23 August 2013, 23:29:07 UTC
1d15023 Add status bit for output request 23 August 2013, 23:29:02 UTC
f99558e Implement server-side logic for controlled output sending 23 August 2013, 23:28:56 UTC
4b7ab81 Add list for ready-to-send workers 23 August 2013, 23:28:51 UTC
b809989 Add message type for output sendign control 23 August 2013, 23:28:44 UTC
cb26dc6 Merge fixes related to branch offset and io rules into v5-34-00-patches 23 August 2013, 19:03:41 UTC
4fe9fae Fix fOffset calculation when encountering cached elements Update the StreamerElement search in TBranchElement::InitializeOffsets to always try to find a StreamerElement that points to one of the member of the actual class. This allows for properly finding the offset of the local object within the outer object. The previous version was somtimes looking at 'cached' StreamerElement; however their local offset are (often) different that the non-cached version and the main offset is very often different. The previous code was then applying this offset to both the actions for the cached StreamerElement and for the regular StreamerElement. For the cached element the two actions compensated each other. For the regular element if the local object had an object within the main object, this was leading to the 'reading' of the local object overwriting content in the main object. Now the offset is calculated for the local object in regard to the outer object using one the StreamerElement that points to one of the member of the actual class *and* AddToOffset is not applied to the cached object (since they are never part of an outer object the offset is always zero). This fixes ROOT-5437 23 August 2013, 18:44:51 UTC
c7e5849 Add proper support for writing in the presence of io rules. In the case a read rule applies to the current StreamerInfo, which is used for writing, there was no good StreamerElement describing the location and means to write the data member (unless there was a repating element). Now, in this case we introduce yet another StreamerElement and mark it as a 'Write' element. We also ignore it in the 'right' places and similarly ignore the caching and artificial element when writing. For example with writeTree.C in roottest/root/io/datamodelevolution/misc we get: StreamerInfo for class: MyClass, version=1, checksum=0x36b5f1f8 MyClass@@1 @@alloc offset= 0 type=1001 TObject BASE offset= 0 type=66 Basic ROOT object TObjArray fArray offset= 24 type=61 (cached) TObjArray fArray offset= 0 type=61 (write) TObjArray fArray offset= 16 type=1000 MyClass@@1 @@dealloc offset= 0 type=1002 i= 0, @@alloc type=1001, offset= 0, len=1, method=0 i= 1, TObject type= 66, offset= 0, len=1, method=0 i= 2, fArray type= 61, offset= 24, len=1, method=0 [cached] i= 3, fArray type= 61, offset= 0, len=1, method=0 [write] i= 4, fArray type=1000, offset= 16, len=1, method=0 i= 5, @@dealloc type=1002, offset= 0, len=1, method=0 23 August 2013, 18:44:06 UTC
f078d99 Extent StreamerElement printing. Add the information about whether a StreamerElement is designed for writing. Factor the collection of this information into a single routine TStreamerElement::GetSequenceType to centralize and normalize the generation of this string (instead of being partially duplicated in 4 places). 23 August 2013, 18:43:35 UTC
d56754b Improve the spacing between lines. Due to the way the vertical text centring is done (bounding based) the spacing between lines may appeared irregular in some cases.. 23 August 2013, 14:06:33 UTC
ae3b744 Remove duplicate fTotal++; Remove duplicate fTotal++; which is already incremented in the base class (TGLVContainer) Solving a bug reported on the ROOT forum (http://root.cern.ch/phpBB3/viewtopic.php?f=3&t=16971&sid=25ac93dfe11c8ea903e260b159f49519) 23 August 2013, 13:22:30 UTC
af5eeb4 Fix off by one error in out-of-bound check. Avoid reading pass the end of an array in TTreeFormula. This fixes http://root.cern.ch/phpBB3/viewtopic.php?t=16969. 23 August 2013, 11:51:13 UTC
763c322 In TMultiGraph::Add(TMultiGraph *multigraph, Option_t *chopt) If "chopt" is defined all the graphs in "multigraph" will be added with the "chopt" option. If "chopt" is undefined each graph will be added with the option it had in "multigraph". 23 August 2013, 11:36:44 UTC
6d55f86 fix https://sft.its.cern.ch/jira/browse/ROOT-5431 22 August 2013, 14:36:52 UTC
70b6d47 Fix: https://sft.its.cern.ch/jira/browse/ROOT-4999 22 August 2013, 13:52:36 UTC
d62c92e Added protection for ROOT-5428 22 August 2013, 08:53:03 UTC
f5e0a2a doc update 22 August 2013, 07:00:23 UTC
ca133fb Add a protection to fix the problem described here: https://sft.its.cern.ch/jira/browse/ROOT-5429 22 August 2013, 05:28:30 UTC
4325ad1 from M. Schiller: add win32 fix to RooChebychev.cxx, clean up fix in RooMath.h 21 August 2013, 20:43:16 UTC
f7e7c3a Add fix for Windows (definition of __func__ is in RooMath.h) 21 August 2013, 15:06:52 UTC
db2dde7 Display the bin error for 2D histograms in the status bar. 21 August 2013, 13:42:49 UTC
6a569b7 Added dependency to Smatrix (header files). Removed the dependency to Smatrix (library) since it is only a dictionary and Smatrix is all inlined. 21 August 2013, 11:52:18 UTC
bc9af65 Add SMatrix dependency for Cholesky decomposition 21 August 2013, 10:39:17 UTC
01df9fb add explicit linking to libpthread as RooFitCore now uses pthread_mutex. 21 August 2013, 10:23:00 UTC
8ceb78e fix win32 issue Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 10:11:20 UTC
0eda633 o RooComplex - Add ctor from std::complex<Double_t> so that return values from new RooFit code can be automatically converted to RooComplex as to not break existing code o RooMath - Silence a warning message 21 August 2013, 08:43:25 UTC
ee009cb refactor crc32 code to allow hashes to be updated with new data, include FNV1a hashes (32 and 64 bit versions) for applications where speed and/or good diffusion for short strings is important Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:46 UTC
58d1e1f save bin boundaries in sorted vector instead of set - bin lookup now O(log(nbin)) instead of O(nbin) This patch uses O(log(nbin)) cost bin number lookups in a sorted std::vector throughout instead of scanning though a std::set with an O(nbin) algorithm; the old version could incur an additional penalty due to the fact that the elements of the set are saved in dynamically allocated memory that might be scattered all over the address space of the process, thus leading to cache misses. The downside of the new version is that altering the binning is more expensive. Still, with the more efficient bin lookups, we gain around 5% in speed (typically), although the gain is likely more pronounced in applications which have binnings with many bins, and a lot of bin number lookups happening. Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:46 UTC
56e33ac implement analytical integrals and provide maximum for RooKeysPdf Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:46 UTC
117b432 patch from Thomas Bird <Thomas.Bird@cern.ch>: expose the plotOn method which takes a RooLinkedList as argument for callers which have long lists of CmdArgs to pass Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:45 UTC
053162a when using SumW2, make RooNLLVar keep two offsets, one for NLLs evaluated with the weights, one for NLLs evaluated with the weights squared Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:45 UTC
cb56eb7 if the correction formula for SumW2 corrected covariances is correct, the result must be positive definite and symmetric, so use tools which ensure that (and refuse to work when the pos. def. requirement is violated) The reasoning here is: If the covariance obtained by the fit where the weights enter linearly is positive definite and called V, and the Hesse matrix evaluated with the weights entering squared is called C, then C and VCV have exactly the same number of negative eigenvalues, since V cannot flip the sign of the eigenvalues of C - V positive definite. The idea of a proof is to consider the bilinear form <v, w>_M = v^T M w. If M is pos. def., then <v,v>_M > 0 for all vectors v != 0, and the bilinear form induces a norm. To see that each negative eigenvalue of C induces a negative eigenvalue in VCV, you consider the corresponsing eigenvectors of C, use that V is invertible, and arrive at non-zero vectors v- for which <v-, v-> < 0. The code that is used to obtain C from the corresponding covariance matrix is tuned for symmetric pos. def. matrices, and has been used for ages in practically all track fits done in LHCb. Therefore, it's robust, well tested, and quite fast. Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:45 UTC
04a6502 Fix bug in which extended term in PDF might not get calculated. Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:44 UTC
fe5566d Propagate Kahan summation carries over process boundaries when using more than one core. Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:44 UTC
6cb88f6 make RooRealMPFE and the whole process of forking children a lot less chatty Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:43 UTC
1dc055e rewrite RooRealMPFE to use BidirMMapPipe, take care to make the communications protocol as efficient as possible (as few trips through the pipe as can be achieved) To this end, the only commands in the parent which flush the buffers to the other end are the "calculate" command which causes the child to start the calculation, and the "retrieve result" command which causes the child to send the result of the calculation. All other commands are queued in the parent until the "calculate" command is sent, and the child gets them when all buffers are flushed after the "calculate" command has been sent as one huge string of requests. In the child, the only reply which flushes the internal buffers is the reply to "retrieve result" which sends the result and any evaluation errors that may have occurred in the child in one go. The advantage of this mode of operation is that both ends may block in the OS while trying to read from the pipe until there is a significant amount of work to be done, resulting in less latency because the OS only has the schedule the end that becomes runnable once instead of scheduling it every time the other end sends a tiny request like a parameter change notification, for example. This makes it explicit that these "little" requests are nothing more than options to the one CPU-intensive request which we really want the child process to perform: the evaluation of the PDF over a certain subset of events. [FIXME:] One more thought on persistency: This class should be rewritten somewhat, because persistency is tricky: you cannot persist the child processes along with the class in the ROOT file and recreate them on the machine which reads the RooRealMPFE class. That means any reference to child processes, pids, file descriptors and other communication structures are meaningless once the class is read back on the target machine. I can see two ways out: Either we forbid persisting this class altogether, or we need some special hooks which always write the persisted version of the class in the Initialize state (irrespective of the actual state) which will force creation of the child processes on the target machine when needed. Since the old class had the exact same issue, I didn't fix this just yet... Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:43 UTC
709d44d Have EvalError contain strings, not fixed sized arrays (which are a waste of space) This patch is in preparation for the RooRealMPFE rewrite using BidirMMapPipe. It will simplify issues with fixed size buffers in the IPC there considerably. This has no impact on the persisted format of classes since EvalErrors are not persisted as far as I can tell. Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:43 UTC
45b3a4e new class BidirMMapPipe, a bidirectional communications channel between a parent process and its child, which buffers communications intenally, and tries to minimise the time spent in the OS (except when you want to block there) This class offers an interface very similar to the familiar read/write syscalls, has a flush operation to flush internal buffers to the other end, and a poll method which allows a parent process with several open pipes to block until an event occurs on any of those pipes (events would be pipe becomes readable, writable, is closed by the other end), allowing for fairly efficient I/O multiplexing on those pipes. In addition to that, it overloads the familiar operator<< and operator>> methods to allow binary I/O over the channel for the basic data types (char, short, int, long, long long and their unsigned counterparts, double and float), C-style zero-terminated strings and std::string, and raw pointers (which are sent as addresses). Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:42 UTC
031f2e6 patch modified from solution provided by Sascha Stahl <sascha.stahl@cern.ch>, fixes JIRA ROOT-5229: fix RooFit's treatment of weighted datasets in conjunction with simultaneous PDFs Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:42 UTC
74277fd some code cleanups, mostly to guard against future typos (if (0 == i) vs if (i = 0)) and to have the nice version of for loops (variable declared only inside for loop, ++i vs i++) Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:42 UTC
76fe14c patch by Thomas Bird <thomas.bird@cern.ch> and Rob Lambert <Rob.Lambert@cern.ch>: have "master process" delegate all compute jobs to children in multi-CPU mode (advantage is that the master process can in theory keep children busy without blocking on some long-running computation itself) Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:42 UTC
afcb876 patch from Thomas Bird <thomas.bird@cern.ch>, Rob Lambert <Rob.Lambert@cern.ch>, with some slight robustness improvements and better error checking by Manuel Schiller <manuel.schiller@nikhef.nl>: implement analytical integrals for Chebychev polynomials Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:41 UTC
6ac853f patch from Thomas Bird <thomas.bird@cern.ch> and Rob Lambert <Rob.Lambert.cern.ch>: allows to project a region and produce an asymmetry plot of it Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:41 UTC
aaf1bcf Use continued fraction approximation in Faddeeva function for large |z|, as it's slightly faster, and just as accurate in that regime Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:41 UTC
c1c22ca deprecate RooComplex class, adapt rest of RooFit code base to use std::complex instead, clean up RooMath interface while I'm at it The old RooFit functions all had "error function" somewhere in their name, which was incorrect. They all calculated w(z)=exp(-z^2)*erfc(-i*z). The new functions all have different names. If you used to call one of the old functions in your code, the new functions you want to call are either faddeeva_fast (which correspond to the fast interpolated version in the old RooFit code), or faddeeva. The new code also implements the (complementary) error function erf(z) (erfc(z)) for complex arguments z. Since RooComplex is never persisted anywhere in RooFit, the class can be dropped in a future release. New code should use std::complex and the faddeeva, faddeeva_fast, erf, erf_fast, erfc and erfc_fast routines in RooMath directly. The old routines in RooMath and the RooComplex constructor print deprecation warnings. The deprecation warnings for RooComplex and old style RooMath calls are designed for maximum annoyance (every use of a deprecated function prints a warning to stdout, so users change their code), but there is an upper bound to cause minimum offence (after 4096 warning messages, the printout of warning messages stops, so log files will not fill up disks, and jobs can still be run). Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:40 UTC
a6b75bd follow usual unix return code convention: 0 return from main means all tests good, return value > 0 counts number of failed tests (helpful as part of a git bisect script) Signed-off-by: Wouter Verkerke <verkerke@nikhef.nl> 21 August 2013, 07:51:40 UTC
fa2d8d4 Fix documentation about use of Minos in RooAbsPdf::fitTo, see #ROOT-5423 20 August 2013, 19:23:14 UTC
52da4ff Added ${PYTHIA6_DIR} from command line as a location for Pythia6 20 August 2013, 14:34:56 UTC
9f9054a use forward declaration instead of include 19 August 2013, 14:37:03 UTC
aa19e0f Fix https://sft.its.cern.ch/jira/browse/ROOT-5413 19 August 2013, 07:28:30 UTC
20a7411 Fix https://sft.its.cern.ch/jira/browse/ROOT-5053 16 August 2013, 14:11:30 UTC
96d2385 Add basic implementation for GetColumns. Fixes ROOT-5332. Patch by Oliver Freyermuth. 16 August 2013, 13:33:05 UTC
6314876 Apply fix suggested here: http://root.cern.ch/phpBB3/viewtopic.php?f=14&t=16930 16 August 2013, 12:08:20 UTC
881fe40 fix memory leak in HistFactory::Sample 16 August 2013, 08:50:59 UTC
074f911 Add missing protection in OptimizeBasket. Some of the branch (because they have been disabled for example) may not have any entry. So we now protect against this case (actually seen in stress). This fixes ROOT-5410 15 August 2013, 19:20:04 UTC
6fd8155 Fix the cloning of the OneDimMultiFunctionAdapter. The X vector was not copied. See http://root.cern.ch/phpBB3/viewtopic.php?f=15&t=16824 15 August 2013, 14:11:55 UTC
bf8ca3c Merge branch 'v5-34-00-patches' of github.com:gganis/root into v5-34-00-patches 15 August 2013, 13:24:36 UTC
3f17c35 Harmonized a couple of R_ASSERTs 15 August 2013, 13:24:05 UTC
782625f Fixed CID 52067 and retval of PollForNewWorkers() 15 August 2013, 13:24:04 UTC
036acf4 Merge pull request #3 from dberzano/v5-34-00-proof-dynamic-workers Coverity fix and better consistency checks 15 August 2013, 13:18:12 UTC
a5248ff Harmonized a couple of R_ASSERTs 15 August 2013, 11:39:53 UTC
eb06ab4 Fixed CID 52067 and retval of PollForNewWorkers() 15 August 2013, 11:39:53 UTC
649d259 In TGraph2DPainter::PaintLevels the colour levels used to paint the triangles did not match the minimum and maximum set by the user on the TGraph2D. 15 August 2013, 11:08:54 UTC
b52f175 Protection added to avoid a Seg Fault on ".q" when SetHistogram is called on a TGraph2D. 14 August 2013, 15:40:57 UTC
9f2233c only run sqlitetest when sqlite plugin has been build. 14 August 2013, 11:06:04 UTC
57b52e7 fix typo. 14 August 2013, 10:56:46 UTC
back to top