p4app-switchML icon indicating copy to clipboard operation
p4app-switchML copied to clipboard

Performance discussion.

Open Catchher opened this issue 3 years ago • 1 comments

Hi, I'm a little confused about packets and folding pipes. One pipeline processes 64 elements data at a time. Is this the limitation of Tofino chip? If yes, can the data of 128 elements or 256 elements only be processed through the 2-fold pipeline and the 4-fold pipeline, or can the data of 128 elements and 256 elements not be processed on the switch with only one pipe.

Catchher avatar Aug 15 '22 07:08 Catchher

My understanding is that this is indeed due to a chip limitation (authors feel free to correct me). You can only parse a few hundred bytes in one go. For any number of elements, if they fit the parse limit they can be processed in 1 pipe, in 1 go. If they exceed it, you can still have 1 pipe but you have to recirculate and reparse the next N elements, and so on. In switch ML they fold the 3 (unused) pipes to avoid this recirculation which slows down pipe 0, in order to get close to the 100G line rate.

gkrls avatar Aug 16 '22 17:08 gkrls

THANKS. I got it.

Catchher avatar Sep 16 '22 06:09 Catchher