The hotspot is, of course, the bytecode interpreter.
There are a number of things I can do to gain some performance:
- Change the register storage from a container to an array.
- Fix the amount of copying. (The 'clone' method.)
- Expand the bytecode a bit since it's minimal but not fast.
- Use multiple inheritance to remove an indirection from arrays of objects.
- Write my own reference counting object.
I changed a few lines of code and implemented the first two steps. Performance increased from seventeen to ten seconds on the example.
No comments:
Post a Comment