dax: add an instance manager#10688
Conversation
|
Can one of the admins verify this patch?
|
|
test this please |
lgirdwood
left a comment
There was a problem hiding this comment.
@checkupup are you able to add more inline comments describing the flow/mechanism and log when we have to fallback to pass through mode. How would priority be set by users, i.e. using topology tuples would mean same dax/sof binaries could be used but with different priorities depending on target.
5af4619 to
a50b365
Compare
Sure, see my latest commit. |
a50b365 to
2b0800b
Compare
|
To maintain code readability, I have extracted the entire instance resource handling logic into the file |
|
Code Logic: Assume that instance 1 is created first. While Instance 1 is running, Instance 2 requests to be created. If Instance 2 has a higher priority than Instance 1, then during Instance 1's process loop, Once Instance 2 finishes its work and releases the memory, if Instance 1 is still active, Note: The speaker instance has a higher priority than the headphone instance. |
When multiple DAX components are running simultaneously, instance resources may be insufficient. In this case, DAX instance manager ensures that higher-priority DAX components are always granted instance resources. For DAX components that cannot obtain instance resources in a timely manner, `dax_process` will operate in pass-through mode. Signed-off-by: Jun Lai <jun.lai@dolby.com>
2b0800b to
8b8da99
Compare
kv2019i
left a comment
There was a problem hiding this comment.
Thanks @checkupup , looks good now!
|
Hi, @johnylin76 @lgirdwood Could you please review this change? Thx. |
When multiple DAX components are running simultaneously, instance resources may be insufficient. In this case, DAX instance manager ensures that higher-priority DAX components are always granted instance resources. For DAX components that cannot obtain instance resources in a timely manner,
dax_processwill operate in pass-through mode.