17 ms·
> 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
by conceptoriented 8y ago
> 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.
- WoodenChair 8y agoSure, 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.
- Qu3tzal 8y agoExcuse 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.
- WoodenChair 8y agoSure, 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.
- fla 8y agoNot necessarily true. You might want to run ANNs on micro-controllers at the edge for many different reasons.