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

using brotli compression on embedded iot with limited RAM #1018

Open
ziv-augury opened this issue Jun 6, 2023 · 1 comment
Open

using brotli compression on embedded iot with limited RAM #1018

ziv-augury opened this issue Jun 6, 2023 · 1 comment

Comments

@ziv-augury
Copy link

hello brotli
i want to use the brotli compression which gave good compression rates on the type of data i need to compress (tested with the cli tool) .
but before digging on how to use brotli compression in my (zephyr OS based) application i want to make sure its possible.
in total the RAM of my device is 64k (ARM cortex M4 64Mhz), so with all the rest of the application i would say that max footprint can be ~4k, preferably smaller (including buffer for input by chunks of 256/512 bytes max).
i do not care so much for speedy compression but rather have compress rate high as possible.

can brotli work in this conditions ?
are the windows and other allocation sizes configurable ?
i read that it uses a dictionary - what size of dictionary will it use for ~32kbyte of data ?

hope to read you soon
best regards
Ziv

@eustas
Copy link
Collaborator

eustas commented Jun 20, 2023

Currently brotli encoder won't fit such tight requirements.
I'd recommend exploring compress_fragment{|_two_pass}.{c|h} it is quite possible making a standalone encoder on the base of those and then continue tuning it to fit the restrictions...

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

No branches or pull requests

2 participants