Thread: [Iaida-issues] Segmentation fault
iAIDA is a C++ implementation of the AIDA interfaces.
Brought to you by:
apfeiffer
From: Javier O. A. <Jav...@if...> - 2009-06-24 14:31:49
|
With geant4.9.2.p01 (latest stable version), the advanced hadrontherapy example that comes with the source, and aida 1.0.17. If I try to modify the code of the example to save the output data in XML AIDA native format, I get a segmentation fault for any number of simulated events => 30, for less events it works OK saving in this format. Feel free to ask for any other specific information you could need about this issue if you need it. Thanks. |
From: Andreas P. <and...@ce...> - 2009-06-24 16:37:13
|
Hi Javier, On Wed, Jun 24, 2009 at 3:31 PM, Javier Ors Ania<Jav...@if...> wrote: > With geant4.9.2.p01 (latest stable version), the advanced > hadrontherapy example that comes with the source, and aida 1.0.17. > If I try to modify the code of the example to save the output data in XML > AIDA native format, I get a segmentation fault for any number of > simulated events => 30, for less events it works OK saving in this format. > > Feel free to ask for any other specific information you could need about > this issue if you need it. Which operating system and compiler version are you using ? What exactly are your changes (could you send me a diff or the new file(s)) ? Thanks, cheers, andreas |
From: <ja...@if...> - 2009-06-24 17:10:15
|
Quoting Andreas Pfeiffer <and...@ce...>: Hi, I am using latest release of Ubuntu (jaunty) for x86_64 architecture (although I've been able to reproduce the issue also in i686 with the same Ubuntu release), I'm using the default compiler that comes with it (gcc 4.3.3), and iAida compiled without Grace neither CERNLIB neither ROOT, just the essential. The changes in the code are simple and straightforward, in the file src/HadrontherapyAnalisisManager.cc just apply this patch: 129c129 < G4String fileName = "hadrontherapyOutput.hbk"; --- > G4String fileName = "hadrontherapyOutput.aida"; 134,135c134,135 < theTree = treeFact -> create(fileName,"hbook",false,true); < theTree = treeFact -> create(rootFileName,"ROOT",false,true,opts); --- > theTree = treeFact -> create(fileName,"xml",false,true); > //theTree = treeFact -> create(rootFileName,"ROOT",false,true,opts); And that's all, if you are not able to reproduce the issue with your system I may try to help debugging it within mine. > Hi Javier, > > On Wed, Jun 24, 2009 at 3:31 PM, Javier Ors > Ania<Jav...@if...> wrote: >> With geant4.9.2.p01 (latest stable version), the advanced >> hadrontherapy example that comes with the source, and aida 1.0.17. >> If I try to modify the code of the example to save the output data in XML >> AIDA native format, I get a segmentation fault for any number of >> simulated events => 30, for less events it works OK saving in this format. >> >> Feel free to ask for any other specific information you could need about >> this issue if you need it. > > Which operating system and compiler version are you using ? > What exactly are your changes (could you send me a diff or the > new file(s)) ? > > Thanks, > cheers, andreas > ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. |
From: Andreas P. <and...@ce...> - 2009-06-24 17:19:53
|
Hi Javier, On Wed, Jun 24, 2009 at 7:10 PM, <ja...@if...> wrote: > Quoting Andreas Pfeiffer <and...@ce...>: > > Hi, I am using latest release of Ubuntu (jaunty) for x86_64 architecture > (although I've been able to reproduce the issue also in i686 with the same > Ubuntu release), I'm using the default compiler that comes with it (gcc > 4.3.3), and iAida compiled without Grace neither CERNLIB neither ROOT, just > the essential. The changes in the code are simple and straightforward, in > the file src/HadrontherapyAnalisisManager.cc just apply this patch: > > 129c129 > < G4String fileName = "hadrontherapyOutput.hbk"; > --- >> >> G4String fileName = "hadrontherapyOutput.aida"; > > 134,135c134,135 > < theTree = treeFact -> create(fileName,"hbook",false,true); > < theTree = treeFact -> create(rootFileName,"ROOT",false,true,opts); > --- >> >> theTree = treeFact -> create(fileName,"xml",false,true); >> //theTree = treeFact -> create(rootFileName,"ROOT",false,true,opts); > > And that's all, if you are not able to reproduce the issue with your system > I may try to help debugging it within mine. Thanks for this info, I'll try to set it up and reproduce (may take a day or two as I'm a bit busy with other things) ... cheers, andreas |
From: Andreas P. <and...@ce...> - 2009-06-28 19:51:04
|
Hi Javier, sorry, took a little longer to get my (virtual) box set up properly. But I managed to reproduce the problem. At present my debugging hints at a problem in the system (maybe expat, maybe I/O buffering), I'll have to do some more studies on this. A workaround (although not a nice one) is to write the output file in uncompressed mode. To do this, just modify: theTree = treeFact -> create(fileName,"xml",false,true); to: theTree = treeFact -> create(fileName,"xml",false,true,"uncompressed"); (i.e. add "uncompressed" as the last (optional) parameter in the call). With this, I could run 300 events w/o problem (the uncompressed output file was about 110 kB, so still manageable. Please let me know if you have a problem with this. Thanks, cheers, andreas |
From: Javier O. A. <Jav...@if...> - 2009-06-29 09:48:04
|
Ok, thanks a lot for answering so quick, don't worry about me, this issue is not critical for my work. I had other alternatives but I prefer the one you have just given to me, so thanks again. I prefer iAida and XML format over other alternatives becouse it lets me to compile the binary statically and without any other dependencies, the build system of OpenScientist for instance doesn't create static libraries. Thanks for your work and your efforts. Sincerely yours, Javier. |
From: Andreas P. <and...@ce...> - 2009-06-29 10:03:39
|
Hi Javier, > Ok, thanks a lot for answering so quick, don't worry about me, this issue is > not critical for my work. I had other alternatives but I prefer the one you > have just given to me, so thanks again. I prefer iAida and XML format over > other alternatives becouse it lets me to compile the binary statically and > without any other dependencies, the build system of OpenScientist for > instance doesn't create static libraries. OK. Thanks for this additional information ! Having the possibility of static libraries is one of the aims ("flexibility") of iAIDA ... :) > Thanks for your work and your efforts. Thanks for your feedback ! And don't hesitate to ask again if you find other issues ! cheers, andreas |