Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recognize app with sub-native performance #272

Closed
serverless83 opened this issue Nov 3, 2022 · 4 comments
Closed

Recognize app with sub-native performance #272

serverless83 opened this issue Nov 3, 2022 · 4 comments

Comments

@serverless83
Copy link

linuxserver.io

Due to the fact that the docker is Alpine based, the recognize app (required by the photos apps like photos and memories) is running in JavaScript mode instead using native speed with AVX instructions.

Desired Behavior

The Recognize app should take advantage of the AVX instrutction for native speed recognition

Current Behavior

The Recognize app uses javascript mode that is much slower

Alternatives Considered

For native speed:
Processor: x86 64-bit (with support for AVX instructions)
System with glibc (usually the norm on Linux; Alpine linux and FreeBSD are not such systems)

@project-bot project-bot bot added this to To do in Issue & PR Tracker Nov 3, 2022
@github-actions
Copy link

github-actions bot commented Nov 3, 2022

Thanks for opening your first issue here! Be sure to follow the bug or feature issue templates!

@aptalca
Copy link
Member

aptalca commented Nov 3, 2022

It would be helpful if you provided some links or references at the very least. I have no idea what the recognize app is or what avx vs javascript mode means.

@serverless83
Copy link
Author

It would be helpful if you provided some links or references at the very least. I have no idea what the recognize app is or what avx vs javascript mode means.

Here is the link to the app: https://apps.nextcloud.com/apps/recognize

As per the description the app is used by the photos app since NC 25 to provide face and object recognition.

Here the requirements:

PHP 7.4 and above
App "collaborative tags" enabled
For native speed:
Processor: x86 64-bit (with support for AVX instructions)
System with glibc (usually the norm on Linux; Alpine linux and FreeBSD are not such systems)
For sub-native speed (using JavaScript mode):
Processor: x86 64-bit, arm64, armv7l (no AVX needed)
System with glibc or musl (incl. Alpine linux)
~4GB of free RAM (if you're cutting it close, make sure you have some swap available)

@nemchik
Copy link
Member

nemchik commented Nov 3, 2022

System with glibc (usually the norm on Linux; Alpine linux and FreeBSD are not such systems)

Our image is alpine based. We would not be able to include glibc without rebuilding the image using another base. We do not have an nginx based image on any other base OS, and currently do not plan to add one.

The JavaScript mode is the only supported option when using our image, unless the maintainers of Recognize find a way to support musl (Alpine).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

3 participants