AnsweredAssumed Answered

SocketCAN performance problems

Question asked by Edward Karpicz on Aug 18, 2015
Latest reply on Nov 23, 2015 by Edward Karpicz



As everyone CAN'er knows, good old CAN operates at up to 1MHz bit rate clock, one extended ID message is roughly 100 bit times long. That's up to 10k messages per second, which is a piece of cake to handle on 16bit S12 operating at much less than 25MHz bus clock. 10k msgs / sec is also piece of cake for bare metal Vybrid app. But unfortunately it is not a piece of cake for Linux and SocketCAN.

SocketCAN, VF61, 3.13 kernel, no user app working, 5-6 kmsgs / sec on CAN bus. Htop shows ~30% CPU usage... Start one app, which just selects and waits for CAN socket and pulls messages from SocketCAN - CPU usage rises to ~70%... And I would like to have few similar CAN apps operating simultaneously...


Thanks for ideas.