I recreated some MathJax Timing Data on my computer, and also ran the same tests in jqMath. For each test, I emptied the brower’s cache, then ran the test, and then revisited (not reloaded) the page to run the test again, presumably getting items from the browser’s cache on the second run. I used an iMac running Mac OS 10.5.8, with a 2.66 GHz Intel Core 2 Duo CPU, and 4 GB of 1067 MHz DDR3 RAM. For Internet Explorer, I used Parallels Desktop 4 virtualization software, Windows Vista Business SP2 32-bit, and 1 GB of RAM. I rebooted each machine before starting. The browsers were Chrome 10.0.648.204 and Internet Explorer 8.0.6001.19019 (without using a MathPlayer plugin). All times are in milliseconds. For more information on these tests, and the columns in the MathJax table below, see the MathJax Timing Data page.
| Chrome | Internet Explorer 8 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Equations | Total | Process | Reprocess | Revisit Total | Process | Reprocess | Total | Process | Reprocess | Revisit Total | Process | Reprocess |
| 10 | 2857 | 1934 | 159 | 849 | 260 | 160 | 6719 | 4672 | 766 | 2241 | 1382 | 796 |
| 30 | 4245 | 2736 | 689 | 1955 | 809 | 693 | 15994 | 12416 | 2672 | 7020 | 4267 | 2688 |
| 100 | 16588 | 8776 | 7036 | 14735 | 7278 | 7021 | 74066 | 52442 | 18609 | 67516 | 49015 | 18407 |
| Chrome | Internet Explorer 8 | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Equations | Load | Convert | L+C | /MathJax | Revisit Load | Convert | L+C | /MathJax | Load | Convert | L+C | /MathJax | Revisit Load | Convert | L+C | /MathJax |
| 10 | 598 | 30 | 628 | 0.23 | 73 | 24 | 97 | 0.14 | 776 | 172 | 948 | 0.16 | 62 | 203 | 265 | 0.18 |
| 30 | 383 | 71 | 454 | 0.13 | 74 | 77 | 151 | 0.12 | 735 | 531 | 1266 | 0.10 | 78 | 585 | 663 | 0.15 |
| 100 | 464 | 227 | 691 | 0.07 | 74 | 212 | 286 | 0.04 | 593 | 1625 | 2218 | 0.04 | 94 | 1837 | 1931 | 0.04 |
The /MathJax columns give $(\Load + \Convert)_\jqMath ∕ (\Total - \Reprocess)_\MathJax$, the approximate ratio of the jqMath and MathJax required times. As you can see, jqMath is roughly 10 times faster than MathJax. This is because MathJax actually measures and formats all the mathematical expressions and subexpressions itself, whereas jqMath just converts them to simple HTML and CSS, which is then formatted by the browser’s native code.