| OCR Text |
Show word. Each Boolean expression uses a different value of mask with an appropriate bit set to 1. Four algorithms were executed on 10 Million events. For each event, from 1 to 32 expressions were evaluated, all in the form of D. The case with 32 expressions is the best case for the Unison algorithm and the case with one expression is the worst case. First, the best case for the compiled evaluation was measured. This is the case, when the first condition of D (PC > addr_0) evaluates to FALSE, so a short cut evaluation of D happens. Results are shown in Table 4.6 and plotted in Figure 4.24. Ideally, all points for a single algorithm should lie on a line. Due to the cache influence, this is not true for the measured results. The Unison algorithm is significantly faster than an interpreted evaluation in all cases. Results show that the Unison algorithm is around three and a half times slower than a pure compiled algorithm. But the gain in the execution speed of the compiled algorithm is due to the short cut evaluation of comparisons. If all comparisons are precalculated and at least two Boolean expressions are evaluated, then a compiled algorithm is slower than the. Unison algorithm. This is seen by comparing the results of the Unison algorithm and the results of the compiled evaluation with precalculated comparisons. Table 4.6. Time to Process 10 Million Events on a NeXT Machine with a 25Mhz Motorola 68040 Microprocessor, Best Case for Compiled Evaluation (Time Units: seconds). 114 Number of Expressions 1 2 4 8 16 32 Compiled 6.6 9.4 14.8 25.6 47.0 90.2 Unison Algorithm 22.2 29.3 52.5 85.7 153.4 293.0 Compiled Precalc. 17.7 30.9 55.7 108.2 213.7 486.7 Interpreted 34.2 64.3 124.7 246.9 519.2 1588.8 |