Tool/software: Linux
Dear all,
for an upcoming product we need to evaulate the performance of the 10 Gigabit Ethernet interface of the Keystone II (namely an AMK2E04). Specifically we want to know the outgoing throughput when sending data through a standard userspace application under Linux.
I found the following thread:
10 GigE performance and recipes to use RTM-BOC with K2H EVM
which nicely describes the evaulation process for a K2H eval module. At the end of that thread, Rex Chang states that he reached a throughput of 7.6 Gbps egress and 6 Gbps ingress. Great! So maybe we can skip out own evaluation and directly continue designing our product? But I have my doubts, that the ARM CPUs of the Keystone II can really achieve this data rate.
My questions are:
- Is this a realistic value when using userspace applications (i.e. Linux SW which simply uses the standard Posix socket API)?
- If yes, how can such a value be reached? For instance:
- Can one ARM CPU core reach this throughput or do we need all 4 CPU cores?
- Are any non-standard operations in userspace neccessary such as using proprietary DMA drivers or whatever?
- Does this value apply to all Keystone II devices?
In addition to that: Are there any sample projects, maybe as part of the MCSDK which demonstrate the use of the 10Gbe interface under Linux?
And finally: What's the difference between K2E and K2H (in terms of CPU and Ethernet performance)?
Cheers,
Gerald