CPC G06F 3/0671 (2013.01) [G06F 3/061 (2013.01); G06F 3/0653 (2013.01); G06F 3/0659 (2013.01); G06F 3/0679 (2013.01)] | 17 Claims |
1. A method by a memory system, comprising:
assigning a first set of commands to a first queue of a memory die of a memory sub-system, wherein the first queue is associated with a first priority level, wherein the memory die includes a second queue associated with a second priority level and a third queue associated with a third priority level, wherein the third priority level is greater than the second priority level, and the first priority level is greater than the third priority level, the second queue comprising a second set of commands assigned to the second queue;
instantiating a timer to determine an amount of time that a second command of the second set of commands from the second queue has not issued;
incrementing a counter each time that a command of the first set of commands issues without the second command of the second set of commands issuing from the second queue;
determining that a threshold number of the first set of commands of the first queue have issued without the second command of the second set of commands issuing from the second queue and that a threshold amount of time is satisfied by the timer, wherein the threshold number is selected based at least in part on both previous system performance and current system performance;
determining that the third queue is empty;
issuing, based at least in part on determining that the threshold number of the first set of commands of the first queue have issued without the second command of the second set of commands issuing from the second queue or determining that the third queue is empty, one or more commands of the second set of commands, wherein the one or more commands of the second set of commands comprises the second command; and
issuing, after issuing the one or more commands of the second set of commands, a third command of the first set of commands.
|