Skip to content

Investigate performance effects of current structure #18

Description

@ES-Alexander

Motivation:

Every convenience comes at a cost, but quantifying the cost makes it possible to determine whether it's "too expensive".

Suggested Method

Currently use a combination of inheritance and composition, which make modification and new base classes really simple to implement and use, but may come at a performance cost. Would be good to quantify the difference between the current situation and e.g. the 'best-case' performance of VideoReader, LockedCamera, and LockedScreen being implemented with cv2.VideoCapture as their direct parent class.

Possible Resulting Changes

If performance difference is significant, it may be worth

  • making a code-generator that can trade off some program memory for the benefit of fewer function calls at each step
  • changing code structure (hard to recommend - very versatile at the moment, and repetition is a 'bad smell')
  • recommending this library for rapid development, and more optimised code once development is complete (e.g. lower level looping, or just C++ implementation)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions