This is the mail archive of the
mailing list for the GCC project.
URGENT : elf_update - low performance with large files ? (fwd)
- From: Anitha Boyapati <anithab at sankhya dot com>
- To: gcc-help at gcc dot gnu dot org, <gcc at gcc dot gnu dot org>
- Date: Wed, 25 Jul 2007 15:51:57 +0530 (IST)
- Subject: URGENT : elf_update - low performance with large files ? (fwd)
Firstly, I would say my message is somewhere completely off the topic on
either of the lists. But I dont know where to ask for help. I searched and
searched for all pointers on libelf.
Now, I use an age-old version probably - libelf.so.0.8.2.
I donno from where I got it, but probably from mr511 site only.
So this libelf, I use, in reading and writing elf object files.
While library appears doing the work smartly for smaller files (elf object
files), it sucks at rather too large files ( ~ 100,000). Profiling shows
98% of the time is spent only in elf_update(). ( took nearly 2 hours for
creating objectfile of an 500,000 lined assembly file )
Does anyone have any idea where should I find some tips for avoiding this
? Is it something really to do with libelf only ? Any pointers are really
helpful. This kinda ASAP for me.
Incase required, please mail me removing cc list so as not to spam every
one (Please see the message below for further details).
@S A N K H Y A
---------- Forwarded message ----------
Date: Wed, 25 Jul 2007 15:15:24 +0530 (IST)
From: Anitha Boyapati <firstname.lastname@example.org>
Subject: URGENT : elf_update - low performance with large files ?
I am a user of libelf. I am using libelf to create and update elf object
files by an assembler. Now the biggest problem is - elf_update.
For an assembly file of about 500000 lines, the performance is unusually
low. Profiling shows 98% of the timespent in elf_update !
I use a memory image update (ELF_C_NULL) so as to defer writing to actual
file until much later. What I would like to know is :
* elf_update() depends on memory size of the object file being written ?
* are there any leaks at that point in libelf ?
* Where can I get performance aspects of libelf - like it slows
down if for a large memory image of an object file
Btwn, I am also rather much suprised for not finding anything related
to libelf other than documenatation ( some mailing list-open..I
expected). Maybe I shouldnot have expected something like GCC.
Sorry if I have sounded rude. Nice to have a tool, but having used it I
am struck at some unknown place which left me with nothing much to
contemplate - an awkward situation :(
Any help appreciated deeply. Thanks
@S A N K H Y A