|
If I have my assumptions are correct. Their assumption is memory is cheap. When memory is cheap go heap. However, properly managing memory is almost always a good thing. I have worked on systems that where in 8kb range back in the old days. Too long ago to recall the details, but required.
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
I still deal with systems with 8KB of RAM, and LVGL works in like 48KB of RAM - the entire library mind you, not just my font engine, which must share the RAM with that library. with 48KB of RAM at say 80% usage the heap frag struggle is real. I think.
To err is human. Fortune favors the monsters.
|
|
|
|
|
Yikes. You think are right! Heap or not. I am still learning LVGL, but I have no memory issues for my interests.
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
48 kB of RAM is 8 of our most powerful SoCs in parallel, or 3 of the ones which supposedly will become our standard (if the supplier finishes developing it before the end of the century).
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
|
I'm working on systems with 3kB now. Memory isn't cheap in deep embedded.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
honey the codewitch wrote: they do a lot of little heap allocations without a custom allocator scheme. That's not entirely true, looks like there is a memory pool and allocations implementation. There is room for improvement here, but it's there.
lvgl/lv_malloc_builtin.c
lvgl/lv_tlsf.c
LVGL is using the Two-Level Segregated Fit memory allocator (as a conditional compilation)
honey the codewitch wrote: "how do you even run on systems with 48KB of RAM?" The scheme LVGL is using gives them complete control over memory usage. I like what I see.
|
|
|
|
|
Randor wrote: That's not entirely true, looks like there is a memory pool and allocations implementation. There is room for improvement here, but it's there.
Weird, I was just going by what the author of LVGL told me. Maybe I misunderstood him, or he me.
To err is human. Fortune favors the monsters.
|
|
|
|
|
honey the codewitch wrote: Weird, I was just going by what the author of LVGL told me. Wierd, I know. Some might say it's a complete mystery.
|
|
|
|
|
I'm going to chalk it up to a misunderstanding. Gabor knows LVGL pretty darn well.
To err is human. Fortune favors the monsters.
|
|
|
|
|
How did you create your lvlg dev environment.
I downloaded there packages both VS and Codeblocks, but it's a basket load of chaos.
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
It depends on what you're building for. I build the tests and stuff on linux, but when I use it with platform IO i can use it from windows, just using the PIO libraries. I recommend using platform IO. The only reason I build for linux is I'm contributing.
I hope you're not using this for desktop graphics. There are a lot better options out there for that. As a rule of thumb this is for little LCDs that usually connect to MCUs via SPI or similar.
To err is human. Fortune favors the monsters.
|
|
|
|
|
what options do you recommend?
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
It really depends on what you want to do. Without knowing what you're even trying to build, I can't tell you anything at all.
Edit: Never mind. Your other response cleared it up.
I don't do graphics on the desktop so I am not the one to ask. I've seen graphics libraries on code project.
I do know that SDL is probably the most popular desktop class cross platform graphics library around.
But if it's not IoT, I don't touch it.
To err is human. Fortune favors the monsters.
|
|
|
|
|
I was considering the desktop graphics as target. I looked at the platform IO stuff but too cryptically documented At least for my eyes.
I currently use glvw library for my graphics, but it's pretty low level. I really like the looks of vglv stuff, but I functionality overrides. I guess I'll return to glfw.
I am working on a GLFW driven windows console. Stupid, but trying to get away from windows driven windows console for my big application.
At least I can create (from bitmaps, yes ) and control the fonts I like. Thanx for your quick feed back.
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
Don't use LVGL for desktop graphics.
To err is human. Fortune favors the monsters.
|
|
|
|
|
understood. thanx
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
Wordle 449 6/6
⬜🟨🟨⬜⬜
⬜⬜⬜⬜⬜
⬜🟩⬜🟨⬜
⬜🟩⬜🟨🟩
🟩🟩⬜⬜🟩
🟩🟩🟩🟩🟩
"If we don't change direction, we'll end up where we're going"
|
|
|
|
|
Wordle 449 3/6
⬛⬛🟨🟨⬛
🟩⬛🟨🟨⬛
🟩🟩🟩🟩🟩
|
|
|
|
|
Wordle 449 4/6
🟨⬜🟨⬜⬜
🟨⬜🟨🟩⬜
🟩🟨🟩⬜⬜
🟩🟩🟩🟩🟩
|
|
|
|
|
Wordle 449 5/6
⬛🟩⬛⬛⬛
⬛🟩⬛⬛⬛
⬛🟩⬛⬛⬛
🟨🟩⬛⬛🟨
🟩🟩🟩🟩🟩
|
|
|
|
|
Wordle 449 5/6
⬜⬜🟨⬜🟨
⬜🟨🟨⬜⬜
🟩⬜🟨🟩⬜
🟩🟩⬜🟩⬜
🟩🟩🟩🟩🟩
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
Wordle 449 4/6
🟨⬜⬜⬜⬜
🟨⬜⬜🟨⬜
⬜🟨🟩🟩🟨
🟩🟩🟩🟩🟩
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Wordle 449 4/6
🟨⬜🟨⬜⬜
⬜⬜⬜🟨⬜
🟨⬜⬜⬜⬜
🟩🟩🟩🟩🟩
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
Wordle 449 4/6
⬜⬜🟨⬜⬜
🟨🟨⬜⬜🟨
🟨🟨🟨⬜⬜
🟩🟩🟩🟩🟩
Life should not be a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside in a cloud of smoke, thoroughly used up, totally worn out, and loudly proclaiming “Wow! What a Ride!" - Hunter S Thompson - RIP
|
|
|
|