Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-05-20 | JIT: factor out push/pop frame into macros. | Josh Haberman | |
2011-05-10 | Fix JIT for new interface. | Joshua Haberman | |
2011-05-08 | More renaming. | Joshua Haberman | |
2011-05-08 | Decoder redesign in preparation for packed fields and start/endseq. | Joshua Haberman | |
2011-05-06 | Refactor varint encoding/decoding. | Joshua Haberman | |
2011-04-15 | Calculate and print string sizes in test messages. | Joshua Haberman | |
2011-04-14 | Fix GDB JIT registration on Linux. | Joshua Haberman | |
2011-04-06 | JIT now works on OS X! | Joshua Haberman | |
Had to fix the case where the jump table was allocated in a >4GB address. | |||
2011-04-06 | Disable GDB JIT interface on OS X. | Josh Haberman | |
OS X doesn't use ELF, so our little trick doesn't work there. | |||
2011-04-04 | Speed up parsetostruct by using type-specialized callbacks. | Joshua Haberman | |
2011-04-02 | JIT passes all tests! | Joshua Haberman | |
2011-04-01 | First rough version of the JIT. | Joshua Haberman | |
It can successfully parse SpeedMessage1. Preliminary results: 750MB/s on Core2 2.4GHz. This number is 2.5x proto2. This isn't apples-to-apples, because proto2 is parsing to a struct and we are just doing stream parsing, but for apps that are currently using proto2, this is the improvement they would see if they could move to stream-based processing. Unfortunately perf-regression-test.py is broken, and I'm not 100% sure why. It would be nice to fix it first (to ensure that there are no performance regressions for the table-based decoder) but I'm really impatient to get the JIT checked in. |