libftdi Archives

Subject: performance of different versions of libftdi

From: Vanheesbeke Stefaan <Stefaan.Vanheesbeke@xxxxxxxxxxxxxx>
To: "libftdi@xxxxxxxxxxxxxxxxxxxxxxx" <libftdi@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Fri, 23 Aug 2013 13:42:25 +0000

Someone can comment on this? How can I boost performance of the libftdi 1.0 to come closer to the 0.20 release?

 

Some benchmarks on the target (1GHZ single core AMD-processor, running  windows XP)

 

The test is just looping a read call, latency set to 1, so theoretically, 1000 loops / second should be performed. No data is transferred.

Written in c and compiled with gcc.

 

         TimerMsec t;

         t.Start();

         while (1)

         {

                 ret = ftdi_read_data(ftdi2, temp, 1024);

                 if (ret < 0)

                         printf("Error reading\n");

                 loops++;

                 if (t.Peek() > 1000)

                 {

                         t.Start();

                         printf("%d loops\n", loops);

                         loops = 0;

                 }

         }

 

- libftdi 1.0 + WinUSB driver --> ~920 loops/second and > 25% cpu-load

- libftdi 0.20 + libusb-win32 driver --> ~900 loops/second and 6 to 8% cpu-load.

 

Same test on my desktop pc does not reveal these differences (multi

 core, more cache, modern operating system, ...)

 



libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx


Current Thread