Table 3.
Performance of SMILES parsing
Run |
Singlethreaded |
Multithreaded |
Multithreaded |
---|---|---|---|
(after profiling) | |||
1 |
17’149 |
10’295 |
7608 |
2 |
15’659 |
7123 |
5488 |
3 |
15’663 |
7248 |
5433 |
4 |
15’880 |
7508 |
5425 |
5 |
15’809 |
7669 |
5534 |
6 |
15’720 |
7197 |
5471 |
7 |
15’665 |
7174 |
5448 |
8 |
15’390 |
7296 |
5513 |
9 |
15’423 |
7687 |
5696 |
10 |
15’523 |
7564 |
5491 |
average | 15’788 | 7676 | 5711 |
Time (in milliseconds) taken to parse part of the ZINC database containing about 350’000 structures on a quadcore laptop. The multi-threaded runs ran on all four cores without further optimization of Scala’s parallel collections settings.