There are several opportunities for improving the efficiency of tiny-count with Cython. However, Cython cannot be debugged using standard Python tools in its current stage of support/development (and the alternatives are troublesome for Mac users), so the application of Cython must be strategic to minimize the surface area for bugs. Candidates include:
- HTSeq's StepVector (this is already complete and testing shows a very significant improvement in runtime, but we will need to write our own ChromVector to wrap it due to issues with runtime patching for Python extensions)
- Classes in matching.py
- FeatureSelector.choose()
- FeatureCounter.assign_features()
Cython components will need to be moved into Cython-designated package files in order to minimize the extent of debugging preclusion