Skip to content

In-place buffer optimization #23

@BillyDM

Description

@BillyDM

Currently every node is assigned separate output and input buffers. While this is fine most of the time, it does mean that even if a node is bypassed, the input buffers still need to be copied to the output buffers. And even if a node is not bypassed, using in-place buffers may reduce the cache misses and improve performance.

To make this work with our audio graph compilation algorithm, I imagine we could search for any sequential nodes in the graph, and then represent that sequence of nodes as a single "virtual node" in an intermediate representation of the audio graph. Then we compile that intermediate graph representation like before, and then convert all virtual nodes in the resulting schedule into a scheduled "node sequence".

This of course will increase compile times of the audio graph, so we will need to weigh the benefits with the drawbacks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions