Re: Libraw1394 question
Brought to you by:
aeb,
bencollins
From: Andreas B. <and...@mu...> - 2000-05-12 23:35:24
|
On Tue, May 09, 2000 at 04:32:37PM -0400, Olivier Daigle wrote: > Hi Ashok, > I managed to exchange raw data between 2 computers by using an FCP-like > method and libraw1394. Mainly, I copied FCP code and extended it to allow data > being transferred by chunks of 2k (instead of 512 bytes with bare FCP code). > This was pretty easy. Problem is: there is a long delay between every data > transfer and even with fast machines (Pentium III 450MHz) and I can't manage to > get data transferred faster than 2.5 Mbytes/sec. By using Frank Bonin's > implementation of IP-over-1394 (which use async transactions), I can > ftp-transfer as fast as 15Mbytes/sec with slow machines (pentium 200MMX) so I > guess I should be able to do as fast as him... Depends on how you implemented the transfer protocol. FCP is more expensive since request and response are each full 1394 write transactions consisting of request and response packets themselves, theoretically this makes FCP take up twice as much packets as low level transactions. Have you tried to minimize the requests? Don't require responses for every FCP write but only for every dozen or so (which contains the individual responses all at once) and a response on timeout (in case not enough packets are around). This should enhance throughput (but might decrease responsiveness a little since responses might be delayed). Additionally, at a lower level, you can also send out multiple packets without waiting for the hardware to actually do it. Use raw1394_start_write() without raw1394_loop_iterate() after each packet. -- Andreas E. Bombe <and...@mu...> DSA key 0x04880A44 http://home.pages.de/~andreas.bombe/ http://linux1394.sourceforge.net/ |