Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@rakuy0
Copy link
Contributor

@rakuy0 rakuy0 commented Feb 24, 2025

Still very much WIP, but this is some fallout from me testing out pyinstrument.

But some rough numbers so far:

  • rando-pe.exe:
    • Old: ~172 seconds
    • New: ~160 seconds
    • 6.97% decrease
  • vdir.llvm.elf:
    • Old: ~8 seconds
    • New: ~5 seconds
    • New New: ~4 seconds
    • 37.5% decrease
  • PsExec.exe:
    • Old: ~3 seconds
    • New: ~2 seconds
    • 33% decrease
  • libc.elf (64 bit):
    • Old: ~1719 seconds
    • New: ~1632 seconds
    • 5% decrease

So roughly 5-7% decrease in runtime across the board. Gonna be on the hunt for more.

@rakuy0 rakuy0 marked this pull request as draft February 24, 2025 15:57
logger.warning('Invalid Section-Headers Size: should be: %d retrieved: %d', secslen, len(secbytes))

vstruct.VArray(elems=secs).vsParse(secbytes, fast=True)
secs = vstruct.VArray()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if this is the direction, be sure to clean up the creation of secs above. if you don't need it kill sec as well


vstruct.VArray(elems=syms).vsParse(symtab, fast=True)
syms = vstruct.VArray()
[syms.vsAddElement(self._cls_symbol(bigend=self.bigend)) for i in range(count)]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you no longer use sym, defined above as self._cls_symbol(bigend=self.bigend)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants