DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] More KNI performance
@ 2015-06-05 15:27 Jay Rolette
  2015-06-05 17:00 ` Matthew Hall
  0 siblings, 1 reply; 2+ messages in thread
From: Jay Rolette @ 2015-06-05 15:27 UTC (permalink / raw)
  To: DPDK

Follow-up to my long email about KNI performance so we don't have
chapter-length quotes in any discussion...

Increasing HZ to 1000 helped, but I'd really like a way to wake the KNI
kernel thread up on demand. I'm hoping someone with more Linux kernel
experience than I have might have some ideas.

Is there some mechanism available that the KNI kernel thread could sleep
periodically, but somehow be awoken from user space?

Basically looking for something to simulate the HW interrupt that network
drivers normally rely on. When KNI packet rates are relatively low, that
1-4 ms latency from the KNI kernel thread sleeping becomes painfully
obvious. If my DPDK app knows that KNI traffic is light, it would be nice
to "kick" the KNI kernel thread to get to work.

So far it looks like adding a syscall is about the only path to let a
user-space app kick a kernel thread. I haven't gotten as far as figuring
out the details to make sure this all works in practice.

Any suggestions or guidance here would be welcome.

Thanks,
Jay

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [dpdk-dev] More KNI performance
  2015-06-05 15:27 [dpdk-dev] More KNI performance Jay Rolette
@ 2015-06-05 17:00 ` Matthew Hall
  0 siblings, 0 replies; 2+ messages in thread
From: Matthew Hall @ 2015-06-05 17:00 UTC (permalink / raw)
  To: Jay Rolette; +Cc: DPDK

On Fri, Jun 05, 2015 at 10:27:21AM -0500, Jay Rolette wrote:
> Is there some mechanism available that the KNI kernel thread could sleep
> periodically, but somehow be awoken from user space?

This is wildly unvalidated, but futex and SysV semaphore appear to be 
accessible from the kernel side. SysV semaphore sounds a bit cleaner for what 
you're attempting.

http://stackoverflow.com/questions/17391276/shared-semaphore-between-user-and-kernel-spaces

> So far it looks like adding a syscall is about the only path to let a
> user-space app kick a kernel thread. I haven't gotten as far as figuring
> out the details to make sure this all works in practice.

Matthew.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-06-05 17:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-05 15:27 [dpdk-dev] More KNI performance Jay Rolette
2015-06-05 17:00 ` Matthew Hall

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).