Skip to content

Removed usage of copy array for a couple of effects#7

Open
alekseinovikov wants to merge 1 commit into
AlexGyver:masterfrom
alekseinovikov:master
Open

Removed usage of copy array for a couple of effects#7
alekseinovikov wants to merge 1 commit into
AlexGyver:masterfrom
alekseinovikov:master

Conversation

@alekseinovikov

Copy link
Copy Markdown

Столкнулся с проблемой. Не хватало памяти для всего скетча с размером светодиодов = 300
Выпилил эффекты, которые мне не понравились, но проблему это не решило.
Нашел 2 эффекта, которые используют глобальный двумерный массив, переписал их без его использования.
В проекте все еще есть эффекты, которые используют его, но если их выпилить, тогда можно избавиться от ledsX массива. Это существенно экономит память и появляется возможность управлять намного большим количеством светодиодов (~400-500).

Мой пулл реквест - всего лишь один шаг по выпиливанию зависимости от двумерного массива и снижению потребления памяти. Просто решил поделиться, вдруг кто то тоже столкнется с подобным - будет меньше мароки.

@alekseinovikov

Copy link
Copy Markdown
Author

Related issue: #6

@alekseinovikov

Copy link
Copy Markdown
Author

Существенный потребитель памяти: массив ledsX

@0xb0ba

0xb0ba commented Oct 18, 2021

Copy link
Copy Markdown

для качественного экономия памяти есть смысл взглянуть на https://alexgyver.ru/microled/
еще можно глянуть форк https://github.com/0xb0ba/girland

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Просто можно скопировать элемент leds[i] = leds[icw]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

а можно весь массив двинуть с помощью memmove

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants