01-31-2007 12:51 PM
02-01-2007 07:56 PM
02-02-2007 07:34 AM
Hi Nick,
I connected the GPIB packet sniffer to analyze the performance in more detail
on the lower level. What I found that it seems that write delays are caused by
the FW, which tries to processes the packets as it receives them. Thus, when I
combine all my messages into one, and write all this at once it takes several milliseconds
to do so, and it is very consistent. In fact I see that all the data is
transmitted over the wire during this time, so it is not buffered somewhere in
the driver. So, I am not concerned with the writing performance any more.
Inconsistent reading still bothers me, but it seems that I found a really big
problem - which is the delay between when FW sends the data, and when I receive
Notify callback from NI driver. I see the data being transferred over the wire
almost instantaneously, but I get the NI Notify call in my C# assembly 60-100 ms later!
To answer your question - there is no heavy processing on the
SW side. So, it seems that either NI driver itself, or its interface to C# is
very inefficient. Of course there is a third option that I am doing something
wrong 🙂
Best regards,
Michael
02-06-2007 11:59 AM