Posts

Showing posts with the label intel

Deep Learning, and Intel’s MKL-DNN

Image
Intel’s MKL , for those of you who’ve never actually had to worry about math performance, is basically a library of hand-optimized code for  serious math, including Linear Algebra  (BLAS ,  LAPACK , etc.),  FFTs , vector math, and whatnot. And yeah, it’s specific to Intel’s processors (hence “Intel’s MKL ”)  with  effectively free licensing . If you’re doing any kind of heavy lifting in science / math / fintech / etc, you’re probably already using this somewhere in your stack! MKL-DNN  is a library built on MKL which adds in optimizations specific to  Deep Neural Networks  (hence the “DNN” part 😀). It’s been out  since late 2016 , but there are fairly frequent updates as new models and techniques become popular (and boy howdy, is the pace of change rapid in this field!). At heart though, it takes a decent chunk of Neural Network primitive — things like  convolution ,  normalization ,  tensor manipulation , etc. — a...

Flexpoint — float16 with 16-bit mantissa

Image
Intel — as part of their Nervana processors — introduced Flexpoint ( flex16+5 ), for tensor operations. Gory details in the paper below, but think of it as • all the elements of the tensor have the same exponent • the extra 5 bits of precision in a 16bit op can now be allocated to the mantissa. • which means you’re basically doing integer operations on the entire tensor • which can mean faster, and less expensive, hardware • the exponent (and hence the dynamic range) is updated for the tensor as a whole during training The last bit is particularly useful — and fascinating! — since it turns out that during training, tensors  “have a rather peaked (and rightward skewed) distribution sufficiently covered by a 16-bit range. But the positions of these ranges vary from tensor to tensor, and for certain tensors they shift significantly during the course of training”  (image above). Regardless of whether Nervana catches on,  flex16+5  seems like a pretty nifty ...

Spectre Meltdown

Image