apertium / apertium/apertium-python

Parsing slows down with each subsequent parse

Open
#102 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
35
Forks
27
PR merge metrics
No merged PRs in 30d

Description

Python 3.8.10
apertium-python 0.2.3
apertium 3.8.1
Ubuntu 20.04 (running under WSL)

Reproducing code:
```
import apertium
import time

i = 0
parser = apertium.Analyzer('eng')
while True:
then = time.time()
parser.analyze("Why does this keep getting slower?")
now = time.time()
print("Parsing {} took {}".format(i, now - then))
i += 1
```
When I run this code, the time taken for the same parse gradually increases. In the first few iterations it takes about 0.0009 seconds per parse, but by iteration 1000 it takes about 0.03 seconds, and it increases from there. Moving `parser = apertium.Analyzer('eng')` within the loop doesn't solve the problem. If I use the `hfst` library to run the transducer instead, no slowdown is observed.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.