Figure 3: Packet Buffers on the X3522
2 KB
1 MB
copy
copy
RX ring
Super buffers
X3522
Packet buffers
Application buffer
References from
applications using
ef_vi
References from
applications using
Onload zero-copy and
TCPDirect zero-copy
References from
applications using
Onload and
TCPDirect
X26635-061422
Because the receive queues can be shared by more than one client, there must be a trust
relationship between processes on the system. The X3522 should not be used in scenarios where
strict POSIX isolation is necessary.
Transmit
The only method for transmitting packets on the X3522 is Cut-Through Programmed I/O
(CTPIO). This has been heavily updated compared to its predecessors to reduce latency and make
it more robust:
• The X2522 has a single CTPIO transmit aperture per network port. The aperture is shared
between all senders, and so there is a risk of clashes between senders. If CTPIO fails, the
sender must fallback to DMA.
• The X3522 adapter supports up to 16 CTPIO transmit apertures per network port (so 16×4 in
total). The intention is that every sender can have a dedicated CTPIO aperture and so avoid
clashes. If CTPIO fails, fallback automatically occurs to store-and-forward, which will always
succeed.
Chapter 3: What's New
UG1523 (v1.0) October 18, 2022
Alveo X3522 User Guide
15