pfalcon / ScratchABit

Easily retargetable and hackable interactive disassembler with IDAPython-compatible plugin API
GNU General Public License v3.0
396 stars 47 forks source link

Load testing #37

Open pfalcon opened 6 years ago

pfalcon commented 6 years ago

ScratchABit generally works well for typical "embedded" size of projects, on the order of 1MB of raw code. It's also written in a way "aware" of potential bottlenecks, e.g. common operations, like browsing around and DB saving are optimized, operation which are known to be "not instant", e.g. complete disassembly write-out or full-text search, have progress indicators.

However, would be useful to perform more dedicated load testing on bigger files. Following areas can be identified:

  1. Opening of structure executable/object formats (currently ELF is supported). For example, parsing ELF files with big string tables may take noticeable time (handled by 3rd-part lib). E.g., would be nice to test performance of loading tens-of-MB ELF files.
  2. Testing saving of projects with 8MB or more of raw binary code.
  3. Like above, but disassembly writing/full-text search.
pfalcon commented 6 years ago

E.g., for text search https://github.com/pfalcon/ScratchABit/issues/21 should be implemented.

pfalcon commented 6 years ago

Testing saving of projects with 8MB or more of raw binary code.

Should be facilitated by https://github.com/pfalcon/ScratchABit/commit/6c554a03c750e864c3a4ec9ddb0e2aa04e9977c3