# Order-Preserving Multiple Pattern Matching in Parallel
## 4 Experimental Results
Figure 4: Comparison of execution times of \(AC\) and \(pAC\) varying \(k\) for randomly generated strings when \(n=100\),000 and \(m=9\). Figure 3: Comparison of execution times of \(AC\) and \(pAC\) varying \(n\) for randomly generated strings when \(m=9\) and \(k=100\). Figure 5 shows the execution times of \(FT\) and \(pFT\) for randomly generated strings according to \(n\) when \(m=9\) and \(k=100\). \(pFT\) was faster than \(FT\) in all cases. For instance, when \(n=100\),000, \(m=9\), and \(k=100\), the execution time of \(FT\) was around 8.6 ms, while that of \(pFT\) was around 5.39 ms, indicating that \(pFT\) was approximately 1.6 times faster than \(FT\). However, as with \(pAC\), the execution time of \(pFT\) also increased as \(n\) increased due to the limitation of the number of available GPU cores. Figure 6 shows the execution times of \(FT\) and \(pFT\) for randomly generated strings according to \(k\) when \(n=100\),000 and \(m=9\). In this case, as in the previous case, \(pFT\) was faster than \(FT\) in all cases. Experiment (2). Comparison of execution times of \(pKR\), \(pAC\), and \(pFT\) for randomly generated strings: Table 2 presents the execution times of \(pKR\), \(pAC\), and \(pFT\) for randomly generated strings with varying parameter settings. In all cases, \(pKR\) and \(pFT\) performed faster than \(pAC\), and \(pKR\) and \(pFT\) exhibited comparable execution times. When \(n=100\),000, \(m=9\), and \(k=1000\), the execution times of \(pKR\) and \(pFT\) were approximately 1.98 and 2.03 times faster, respectively, than those of pAC. Table 2a presents the execution times of \(pKR\), \(pAC\), and \(pFT\) according to \(m\) when \(n=100\),000 and \(k=1000\). As the length of patterns \(m\) increased, the creation time of the Aho-Corasick automaton increased, leading to an increase in the total execution time of \(pAC\). The length of patterns \(m\) did not significantly affect the execution times of \(pFT\) and  
Figure 5: Comparison of execution times of \(FT\) and \(pFT\) according to \(n\) for randomly generated strings when \(m=9\) and \(k=100\). Figure 6: Comparison of execution times of \(FT\) and \(pFT\) according to \(k\) for randomly generated strings when \(n=100\),000 and \(m=9\). \(pKR\). Table 2b presents the execution times of \(pKR\), \(pAC\), and \(pFT\) according to \(k\) when \(n=100\),000 and \(m=9\). The execution times of all algorithms increased as \(k\) increased. Experiment (4). Comparison of execution times of \(pKR\), \(pAC\), and \(pFT\) for ECG data: Table 4 presents the execution times of \(pKR\), \(pAC\), and \(pFT\) according to the parameters for electrocardiogram data. In all cases, \(pKR\) and \(pFT\) performed faster than \(pAC\), and \(pKR\) and \(pFT\) exhibited comparable execution times. When \(n=100\),000, \(m=10\), and \(k=1000\), the execution times of \(pKR\) and \(pFT\) were around 2.13 times and 2.16 times faster than that of \(pAC\). Overall, it showed a similar result to that of Experiments 2 and 3. \begin{table}
\begin{tabular}{c c c c} \hline \hline \multicolumn{4}{c}{(a) Comparison of execution times varying \(m\) when \(n=100\),000, \(k=1000\)} \\ \hline \multicolumn{4}{c}{Execution times of the algorithms (unit: ms)} \\ \hline \(m\) & \(pAC\) & \(pKR\) & \(pFT\) \\ \hline
6 & 41.31 & 21.58 & 22.62 \\
9 & 44.83 & 22.64 & 21.98 \\
12 & 49.07 & 22.18 & 22.51 \\
15 & 52.49 & 22.16 & 22.52 \\ \hline \hline \multicolumn{4}{c}{(b) Comparison of execution times varying \(k\) when \(n=100\),000, \(m=9\)} \\ \hline \multicolumn{4}{c}{Execution times of the algorithms (unit: ms)} \\ \hline \(k\) & \(pAC\) & \(pKR\) & \(pFT\) \\ \hline
100 & 19.35 & 2.22 & 2.24 \\
500 & 31.07 & 11.25 & 11.47 \\
1000 & 44.83 & 22.64 & 21.98 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Comparison of execution times of \(pAC\), \(pKR\), and \(pFT\) for random strings.