Thread (47 messages) 47 messages, 11 authors, 2018-04-03

Re: [RFC PATCH 0/3] kernel: add support for 256-bit IO access

flat view

From: Ingo Molnar <mingo@kernel.org>
Date: 2018-03-21 06:33:08
Also in: lkml

* Linus Torvalds [off-list ref] wrote:
And even if you ignore that "maintenance problems down the line" issue
("we can fix them when they happen") I don't want to see games like
this, because I'm pretty sure it breaks the optimized xsave by tagging
the state as being dirty.
That's true - and it would penalize the context switch cost of the affected task 
for the rest of its lifetime, as I don't think there's much that clears XINUSE 
other than a FINIT, which is rarely done by user-space.
So no. Don't use vector stuff in the kernel. It's not worth the pain.
I agree, but:
The *only* valid use is pretty much crypto, and even there it has had issues. 
Benchmarks use big arrays and/or dense working sets etc to "prove" how good the 
vector version is, and then you end up in situations where it's used once per 
fairly small packet for an interrupt, and it's actually much worse than doing it 
by hand.
That's mainly because the XSAVE/XRESTOR done by kernel_fpu_begin()/end() is so 
expensive, so this argument is somewhat circular.

IFF it was safe to just use the vector unit then vector unit based crypto would be 
very fast for small buffer as well, and would be even faster for larger buffer 
sizes as well. Saving and restoring up to ~1.5K of context is not cheap.

Thanks,

	Ingo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help