Re:Genann – Simple neural network library in ANSI C
by conceptoriented on Thursday July 05, 2018 @03:42PM
(#17466187)
> it is pretty much completely inappropriate for production since it uses no vector instructions nor GPU computation
Many platforms do not have GPUs or special instructions, for example, at the edge.
Re:Genann – Simple neural network library in ANSI C
by WoodenChair on Thursday July 05, 2018 @04:04PM
(#17466351)
Sure, but we don't typically do sophisticated machine learning on them. The vast majority of modern CPUs have vector instructions. Even a Raspberry Pi's ARM has NEON.
Re:Genann – Simple neural network library in ANSI C
by fla on Friday July 06, 2018 @02:27AM
(#17469377)
Not necessarily true. You might want to run ANNs on micro-controllers at the edge for many different reasons.
Re:Genann – Simple neural network library in ANSI C
by Qu3tzal on Friday July 06, 2018 @02:28AM
(#17469382)
Excuse me if this sounds stupid but, vector instructions are assembly. I know we can use inline assembly or compile and link assembly alongside C but isn't it the compiler that is in charge of using vector instructions ?
IIRC GCC has -mmx, -sse(2|3|4) options to enable this kind of instructions.
Re:Genann – Simple neural network library in ANSI C
by WoodenChair on Friday July 06, 2018 @03:18AM
(#17469589)
Sure, if the compiler can find optimizations by inserting vector instructions, it will. But, typically you'll want to specifically format your code using matrices/a library like BLAS to maximize performance and use as many vector instructions as possible.
For a similar equivalent in Swift see my project: https://github.com/davecom/SwiftSimpleNeuralNetwork