From 9eb4d695c49a85f7f72ad68c3c31affd61fef984 Mon Sep 17 00:00:00 2001 From: Joshua Haberman Date: Fri, 1 Apr 2011 15:40:06 -0700 Subject: First rough version of the JIT. 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. --- src/upb_glue.c | 3 --- 1 file changed, 3 deletions(-) (limited to 'src/upb_glue.c') diff --git a/src/upb_glue.c b/src/upb_glue.c index 41f974b..b6a0273 100644 --- a/src/upb_glue.c +++ b/src/upb_glue.c @@ -29,7 +29,6 @@ void upb_strtomsg(upb_string *str, upb_msg *msg, upb_msgdef *md, upb_stringsrc_uninit(&strsrc); upb_decoder_uninit(&d); - upb_handlers_uninit(&h); } void upb_msgtotext(upb_string *str, upb_msg *msg, upb_msgdef *md, @@ -53,7 +52,6 @@ void upb_msgtotext(upb_string *str, upb_msg *msg, upb_msgdef *md, upb_stringsink_uninit(&strsink); upb_textprinter_free(p); - upb_handlers_uninit(&h); } void upb_parsedesc(upb_symtab *symtab, upb_string *str, upb_status *status) { @@ -72,7 +70,6 @@ void upb_parsedesc(upb_symtab *symtab, upb_string *str, upb_status *status) { upb_decoder_decode(&d, status); - upb_handlers_uninit(&h); upb_stringsrc_uninit(&strsrc); upb_decoder_uninit(&d); } -- cgit v1.2.3