From: Oliver H. <soc...@ha...> - 2009-09-02 17:05:57
|
Michal Sojka wrote: > On Wednesday 02 of September 2009 18:37:26 Oliver Hartkopp wrote: >> Michal Sojka wrote: >>> The testbed was a Pentium 4 box with a Kvaser quad-head PCI card >>> (SJA1000 based). We have simply connected output 1 to output 2 and >>> measured the time how long it takes for the message to go forth and >>> back. >> The idea behind my setup was to benchmark the chardev vs netdev in general. >> For that reason, i used a PEAK PCMCIA card (which had an exclusive IRQ >> line) and compiled the same driver with and without netdev support: >> >> [...] >> >> Finally the RX path was faster with netdev and the impact of different >> driver implementations or the performance of the drivers TX-handling on the >> SJA1000 was excluded in this benchmark. > > Interesting. We may try to do similar test to check whether the problem is in > PEAK's FIFOs or it is a general property (Lincan is also based on FIFOs filled > from IRQ). If you're planning some more tests, i would be interested what happens if you make the rtt-virtual tests with waits of 0/1/2 ms. When there is a delay between the sent frames, we probably see a completely different behaviour on the virtual CANs. >>> We have used canping [1] tool to generate CAN traffic. >> I tried to figure out how canping was used with SocketCAN in your testbed. >> But i didn't find any socket() call :-) > > In http://rtime.felk.cvut.cz/gitweb/canping.git/blob/HEAD:/src/vca_canping.c, > you can see vca_open_handle() and other vca_*() functions, which are > implemented in libVCA. For socketcan it is in > http://ocera.cvs.sourceforge.net/viewvc/ocera/ocera/components/comm/can/canvca/libvca/vca_isocketcan.c?revision=1.4&view=markup Ah, ok. Regards, Oliver |