[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [microblaze-uclinux] Performance with EMAC core



Hi Steve,

The following things have made a big difference in similar designs - 

1. Having a large I and D-cache (>= 16K) 
2. Using MCH caches with multi-channel memory controllers instead of OPB
caches.
3. Turning on the hardware multiplier and barrel shifter on MicroBlaze.
4. Enabling scatter-gather DMA
5. Use zero-copy sendfile API for transmitting packets

1 to 3 are general tips for improving the performance of any MicroBlaze
system. Other things that can help squeeze out the last bit of
performance - 

1. Lock critical functions into BRAM if available 
2. Increase the optimization level of the kernel and user code
3. Turn off assertions in the Xilinx drivers (Add -DNDEBUG)

As far as I know, there is no clean automated way to do the last 3 steps
right now, but you can get by with hacking linker scripts and Makefiles.

hth,
Vasanth

> -----Original Message-----
> From: owner-microblaze-uclinux@xxxxxxxxxxxxxx
[mailto:owner-microblaze-
> uclinux@xxxxxxxxxxxxxx] On Behalf Of Kapp, Steve
> Sent: Monday, November 28, 2005 9:16 AM
> To: microblaze-uclinux@xxxxxxxxxxxxxx
> Subject: [microblaze-uclinux] Performance with EMAC core
> 
> Has anyone gathered hard numbers concerning network performance
(either
> raw
> or TCP/IP) when using the Xilinx EMAC core. We are running the
Microblaze
> at
> 72 MHz (yes that includes the OPB) and can only transmit (UDP traffic
via
> netcat) at approximately 350 Kbyte/s, or 2.8 Mbit/s. Our test setup
uses a
> 100 Mbit/s link on a point-to-point network with a dedicated laptop.
> 
> Any and all hard numbers would be appreciated, as would be tips for
> increasing performance. I have read some of the Ethernet related posts
in
> this mailing list over the last two years. None of them spoke of high-
> speed
> networking. Our goal is a sustained 3 Mbyte/s over UDP and right now
we
> are
> an order of magnitude away...
> 
> Regards,
> 
>    Steve
> ___________________________
> microblaze-uclinux mailing list
> microblaze-uclinux@xxxxxxxxxxxxxx
> Project Home Page :
http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
> Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-
> uclinux/
> 



___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/