PIFO
Jiahan Zhang
Background
Programming Model
Scheduling transactions
Example
Limitation of single PIFO?
Limitation of single PIFO?
Scheduling tree
Example
Shaping transaction
Discussion - Non-work conserving schedulers
Shashank - “I understand how they are implemented in this abstraction, but I am just confused on the advantages and disadvantages compared to a work conserving scheduler.”
Example: Stop-and-Go - frames packets arriving within a time frame, provides “bounded delay” for real-time applications
Some limitations
Hardware Design - Mesh of PIFO Blocks
Hardware Design - PIFO Block
Hardware Design - Flow Scheduler
Hardware Design - Overhead
Discussion - Flow limitation
Xiao - “While the system scales to 2048 flows, it falls short of fully supporting the 60K flows required for the finest granularity scheduling (such as per-packet scheduling). I wonder whether PIFO can be implemented on programmable switches with line-rate performance.”
Discussion - Usefulness
Asmita - “I wonder if such chips were manufactured, the compiler was written, etc. Also, to what extent is programmable scheduling even needed”
Vinay - “Did network operators provide any insights on if they need to have programmable schedulers and if so, what the design requirements are? As the authors themselves point out, the irony is that pFabric itself could not be implemented in a programmable manner (which is what the authors wanted to do when they started this project)”
Discussion - Formalization
Divya - “One thing I was wondering about was: the authors mentioned that there was no clear check as to whether some algorithm could be implemented using PIFO. I wonder if such a thing has been formalized now.”