230 likes | 314 Views
BLQF Algorithm. An Algorithm which guarantees 100% throughput for a general class of scheduling problems Term Project, EE384Y Kevin Ross. Talk Outline. Model Definition BLQF Algorithm introduction Example Simulation Results. Model Definition.
E N D
BLQF Algorithm An Algorithm which guarantees 100% throughput for a general class of scheduling problems Term Project, EE384Y Kevin Ross
Talk Outline • Model Definition • BLQF Algorithm introduction • Example • Simulation Results
Model Definition • The packet switching problem is a special case of a more general scheduling problem with: • A number of queues • A set of available service configurations • At any time a single configuration must be chosen
Model Illustration Queues
Model Illustration: 2 x 2 switch Service Configurations Queues S1 S2 1 0 0 1 0 1 1 0
Model Illustration: General Service Configurations Queues S1 S2 S3 S4 1 0 0 1 0 1 1 0 2 0 1 0 4 0 0 0
The Standard LQF Algorithm • At any time, we choose the service configuration S* which maximizes the inner product S*=argmax < S,X > over all service configuration vectors S. where X is the vector of queue lengths S is a service vector
The BLQF Algorithm • At any time, we choose the service configuration S* which maximizes the inner product S*=argmax < S, BX > over all service configuration vectors S. where X is the vector of queue lengths B is a matrix S is a service vector
Example: a 3 x 3 switch • Consider a 3 x 3 switch with VOQ's • We have: • 9 VOQ's • 6 Service configurations • Consider the BLQF algorithm with the following B matrices
Example: BLQF Algorithm B1 B2 B1 is diagonal, applying different weights to different queues B2 is the same as B1 except for some off-diagonal elements
Example 3 x 3 switch Input,Output Weights with B=I (standard LQF) (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 1 0 1 2 1 0 0 1
Example 3 x 3 switch Input,Output Weights with B=I (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 1 0 1 2 1 0 0 1
Example 3 x 3 switch Input,Output Weights with B=B1 (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 3 0 7 6 10 0 0 1 B1
Example 3 x 3 switch Input,Output Weights with B=B1 (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 3 0 7 6 10 0 0 1 B1
Example 3 x 3 switch Input,Output Weights with B=B2 (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 3 0 7 4 6 0 0 1 B2
Example 3 x 3 switch Input,Output Weights with B=B2 (1,1) (1,2) (1,3) (2,1) (2,2) (2,3) (3,1) (3,2) (3,3) 2 3 0 7 4 6 0 0 1 B2
Cone Structure of BLQF • The choice of service vector is invariant under scalar multiplication • Eg. A 2-queue system:
Effect of the Matrix B B = B =
Key Result: Stability • The BLQF guarantees 100% throughput for all traffic with admissible long-term average arrival rates and matrix B which: • is Positive Definite • is Symmetric • has nonpositive off-diagonal elements • Arrivals need only be integrable for any trace