On Wed, 16 Dec 1998, Rene Brun wrote: > Hi Chris, > There are several differences between your options and the options > I use to build Root with KCC under SGI. See my options below. Hi, <snip> > PLATFORM = sgi As I said, the problems I had were on Linux. There is a peculiarity that I have observed whereby a given problem (of the sort which causes a memory overwrite) does not cause a crash on SGI but it does on Linux. This is not to say the problem isn't there on SGI, but that the overwrite doesn't cause a segfault. You would therefore need to run *on linux* to properly determine whether the problem is still there (or use purify on sgi, but that isn't 100% reliable either). As far as I can tell, the only differences with your options that aren't directly due to the difference in platform at the fact that the C++ is optimized at the K3 level and the C is not optimized at all, although I could be wrong. Cheers, Chris. > > CXX = KCC > CC = cc > CXXFLAGS = --signed_chars --display_error_number --diag_suppress 68 > \ > --diag_suppress 191 +K3 > CFLAGS = -signed > CINTCXXFLAGS = --signed_chars --display_error_number --diag_suppress 68 > \ > --diag_suppress 191 -DG__REGEXP1 -DG__UNIX > -DG__SHAREDLIB \ > -DG__OSFDLL -DG__SIGNEDCHAR -DG__DECCXX -DG__ROOT \ > -DG__REDIRECTIO +K3 > CINTCFLAGS = -signed -w -DG__REGEXP1 -DG__UNIX -DG__SHAREDLIB \ > -DG__OSFDLL -DG__SIGNEDCHAR -DG__DECCXX -DG__ROOT \ > -DG__REDIRECTIO > OPT = -g > NOOPT = > LD = KCC > LDFLAGS = $(OPT) -Wl,-u,__builtin_new -Wl,-u,__builtin_delete \ > -Wl,-u,__nw__FUiPv > SOFLAGS = > SOEXT = so > SYSLIBS = -lg++ -lm -ldl > SYSXLIBS = -lX11 -lm -lPW -ldl > XLIBS = $(ROOTSYS)/lib/libXpm.a -lX11 > CILIBS = -lm -ltermcap -lbsd -ldl > > > Chris Green wrote: > > > > > I have now a few comments concerning Chris Green's mail. > > > We do not play any special trick in TClonesArray. We simply exploit > > > at best a standard (and not well known) C++ functionality. > > > Chris mentions reliability problems with TClonesArray. > > > Could you forward to us any evidence/description of these problems? > > > > Hi, Rene. > > > > I wasn't suggesting you used any `tricks'. I was merely trying to suggest > > that it may be possible to write an allocator for an STL container which > > will do the same intelligent things regarding object/memory reuse as your > > TClonesArray. It may not, of course -- I haven't studied either > > TClonesArray or STL allocators in the required detail. > > > > As for the problems, I was using 2.00/13 compiled with KCC v3.3f on Linux > > glibc2 using gcc 2.7.2.3 for the C compiler at optimization levels K2 (for > > C++) and O2 (for C) (I re-wrote the other makefiles slightly to cope with > > OPTS and COPTS). The compile flags were as follows: > > > > CXXFLAGS = --signed_chars -D_EXTERN_INLINE=inline \ > > --display_error_number \ > > --diag_suppress 191 -fPIC -I$(OPENGL)/include -DR__GLIBC > > CFLAGS = -Wall -fPIC -DR__GLIBC > > CINTCXXFLAGS = --signed_chars -D_EXTERN_INLINE=inline \ > > --display_error_number \ > > --diag_suppress 191 -fPIC -DG__REGEXP -DG__UNIX > > -DG__SHAREDLIB \ > > -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO > > CINTCFLAGS = -Wall -fPIC -DG__REGEXP -DG__UNIX -DG__SHAREDLIB \ > > -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO > > > > The dictionaries were copied rather than generated -- they could not be > > generated successfully. > > > > I compiled Pasha's benchmarking program (K2 or K0, it doesn't matter). > > When running (eg) 10000 events of 1000 nodes, the program crashes in the > > constructor for TObject after 2094 events. I would suggest though, that > > you try to do the same thing with your latest version of ROOT rather than > > duplicate my problem with an older version. > > > > I hope this is enough information to allow you to reproduce the problem. > > > > Cheers, > > Chris. > > > > -- > > Chris Green. HEP, Purdue University. CDF SVXII project. > > Based at Fermilab. MAIL greenc@fnal.gov; PHONE (630) 840-2308 > -- Chris Green. HEP, Purdue University. CDF SVXII project. Based at Fermilab. MAIL greenc@fnal.gov; PHONE (630) 840-2308
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:41 MET