Very impressive numbers! If I read right, on your test the PC->device transfer rate went from about 646 KB/sec to 3834 KB/sec, and device->PC went from 571 KB/sec to 5652 KB/sec<br><div class="gmail_extra"><br><br><div class="gmail_quote">
On Thu, Dec 6, 2012 at 10:59 AM, Ralf Kirchner <span dir="ltr"><<a href="mailto:ralf.kirchner@embedded-brains.de" target="_blank">ralf.kirchner@embedded-brains.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Users,<br>
I would like to share some good news.<br>
We have been successful in eliminating a few performance bottlenecks in<br>
the FAT file system. The FAT file system now writes by cluster instead<br>
of writing by sector. Also reading from the device during a file write<br>
has been minimized.<br>
As a result the data rate during a file write went up while the CPU<br>
usage (for example of the USB sub-system) went down.<br>
<br>
Here are some test results. The test setup is:<br>
A simple application loaded to the MPC8313ERDB evaluation board. The<br>
test application provides an ftp server and formats a USB memory stick<br>
with a FAT file system (with 64 sectors per cluster). Then it mounts the<br>
USB memory stick to /work/0 on the target.<br>
Then from a PC the program curl gets used to transfer data from the PC<br>
to the USB memory at the target respectively from the USB memory stick<br>
to the PC.<br>
<br>
Previous status (without the performance optimization):<br>
PC -> MPC8313ERDB<br>
curl -T /dev/zero <a href="ftp://anonymous@192.168.96.93/work/0/zero" target="_blank">ftp://anonymous@192.168.96.93/work/0/zero</a><br>
%    Total   % Received Xferd Average Speed  Time    Time    Current<br>
                              Dload   Upload Total   Spent   Speed<br>
100 78.8M    0 0        78.8M 0       646k  --:--:-- 0:02:04 438k<br>
<br>
MPC8313ERDB -> PC:<br>
curl -o /dev/null <a href="ftp://anonymous@192.168.96.93/work/0/zero" target="_blank">ftp://anonymous@192.168.96.93/work/0/zero</a><br>
%   Total %   Received Xferd Average Speed  Time    Time Current<br>
                             Dload Upload Total   Spent  Speed<br>
100 80.7M 100 80.7M    0     571k      0 0:02:24 0:02:24 567k<br>
<br>
<br>
With FAT optimizations:<br>
PC -> MPC8313ERDB<br>
curl -T /dev/zero <a href="ftp://anonymous@192.168.96.93/work/0/zero" target="_blank">ftp://anonymous@192.168.96.93/work/0/zero</a><br>
%   Total    % Received Xferd Average Speed  Time     Time    Current<br>
                              Dload   Upload Total    Spent   Speed<br>
100 1290M    0 0        1290M 0       3834k  --:--:-- 0:05:44 3914k<br>
<br>
[/work/0] # blkstats /dev/umass-sim-0-0<br>
-------------------------------------------------------------------------------<br>
                               DEVICE STATISTICS<br>
----------------------+--------------------------------------------------------<br>
 READ HITS            | 96202<br>
 READ MISSES          | 328<br>
 READ AHEAD TRANSFERS | 118<br>
 READ BLOCKS          | 788<br>
 READ ERRORS          | 0<br>
 WRITE TRANSFERS      | 1179<br>
 WRITE BLOCKS         | 18539<br>
 WRITE ERRORS         | 0<br>
----------------------+--------------------------------------------------------<br>
<br>
MPC8313ERDB -> PC:<br>
curl -o /dev/null  <a href="ftp://anonymous@192.168.96.93/work/0/zero" target="_blank">ftp://anonymous@192.168.96.93/work/0/zero</a><br>
  % Total    % Received Xferd Average Speed Time    Time    Current<br>
                              Dload  Upload Total   Spent   Speed<br>
100 1291M  100 1291M        0 5652k       0 0:03:53 0:03:53 5900k<br>
<br>
[/work/0] # blkstats /dev/umass-sim-0-0<br>
-------------------------------------------------------------------------------<br>
                               DEVICE STATISTICS<br>
----------------------+--------------------------------------------------------<br>
 READ HITS            | 767190<br>
 READ MISSES          | 7<br>
 READ AHEAD TRANSFERS | 2663<br>
 READ BLOCKS          | 10663<br>
 READ ERRORS          | 0<br>
 WRITE TRANSFERS      | 1<br>
 WRITE BLOCKS         | 1<br>
 WRITE ERRORS         | 0<br>
----------------------+--------------------------------------------------------<br>
<br>
The performance impact will vary depending mostly on your target system<br>
and on the configured number of sectors per cluster.<br>
<br>
Kind Regards<br>
--------------------------------------------<br>
Embedded Brains GmbH<br>
Ralf Kirchner          Dornierstr. 4<br>
D-82178 Puchheim       Germany<br>
email: <a href="mailto:ralf.kirchner@embedded-brains.de">ralf.kirchner@embedded-brains.de</a><br>
Phone: <a href="tel:%2B49-89-18%2094%20741-17" value="+4989189474117">+49-89-18 94 741-17</a><br>
Fax:   <a href="tel:%2B49-89-18%2094%20741-08" value="+4989189474108">+49-89-18 94 741-08</a><br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
<br>
<br>
_______________________________________________<br>
rtems-users mailing list<br>
<a href="mailto:rtems-users@rtems.org">rtems-users@rtems.org</a><br>
<a href="http://www.rtems.org/mailman/listinfo/rtems-users" target="_blank">http://www.rtems.org/mailman/listinfo/rtems-users</a><br>
</blockquote></div><br></div>