New performance graphs for a couple of grammars #4341
Replies: 2 comments 3 replies
-
For comparison, I've been porting the mysql/Oracle grammar to the rest of the targets. Here's a preliminary graph of the performance of the grammar. On the large SD of the Java ports, the first run of Java for the driver app incurs a large penalty. This, apparently, is caused by anti-virus checking and disk caching. |
Beta Was this translation helpful? Give feedback.
-
Funny, you list antlr4ng as own language. It's TypeScript! What you have as TypeScript target is the JS target. The only TS code there is the generated files. I'm surprised there are differences in the performance of the two columns JavasScript and TypeScript. btw. can you make the graphs larger please? |
Beta Was this translation helpful? Give feedback.
-
I've been composing some graphs of grouped parse time vs target type to better understand performance. The graphs are computed using two scripts using the latest Trash Toolkit.
The first script written for Bash computes the raw data describing runtimes for a grammar, for all the tests in examples/, and with grouped parsing, e.g., java/java/ and sql/postgresql/. te.sh.txt. It simply loops through all assumed targets, builds the target driver, runs a standardized performance script 5 times using "group" parsing each time. "Grouped" parsing performs a warm-up of the parser using the first file, and accumulates additional cache information with each subsequent parse. The output generated by the test also contains the names of the grammar and target, and information about the environment and machine. The PHP target is not tested because it is extremely slow, but I couldn't update my environment for PHP. The CSharp target does an extra step to determine the ambiguities of the grammar. Raw data: data.zip
The second script, written for Bash and Octave, extracts the runtimes and computes a bar graph with standard deviation error bars, and a legend that describes the targets for the graph. gr.sh.txt.
Here are the graphs of the performance for the two grammars.
Some observations about the tests.
Beta Was this translation helpful? Give feedback.
All reactions