Earlier quoted context omitted.
Why? Google has certainly researched their floats before committing an entire line of silicon chips. It's easy to just enumerate all possible float16 configurations in a simulator to see which one performs best on a wide range of neural network applications. Then pick the best one. Big data driven organizations do this all the time (brute force through an entire line of solutions, pick best results).
I know nothing about ASIC or CPU simulators but I suspect that it's not as easy as you make it sound: for machine-learning related tasks, performance doesn't only come from raw compute numbers: you'll also want to model the actual data movement costs across the caches hierarchy and registers. Because a lot of time training is not necessarily compute-bound: the relative cost of data transfer (VS compute) can be quite…
Intel Prepares to Graft Google’s Bfloat16 onto Processors
21–30 of 138 posts
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#22Something about Google being able to influence features in consumer grade CPUs rubs me the wrong way.
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#23> At this point, Intel doesn’t have bfloat16 implemented in any of its processors, so they used current AVX512 vector hardware present in its existing processor to emulate the format and the requisite operations. According to the researchers, this resulted in “only a very slight performance tax.” Why implement bfloat if you get just slightly less performance emulating it with AVX512, which already exists? Maybe it’s…
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#24> At this point, Intel doesn’t have bfloat16 implemented in any of its processors, so they used current AVX512 vector hardware present in its existing processor to emulate the format and the requisite operations. According to the researchers, this resulted in “only a very slight performance tax.” Why implement bfloat if you get just slightly less performance emulating it with AVX512, which already exists? Maybe it’s…
AVX512 is expensive. I believe if you have an AVX512-heavy workload it can cause the processor to throttle.
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#25> At this point, Intel doesn’t have bfloat16 implemented in any of its processors, so they used current AVX512 vector hardware present in its existing processor to emulate the format and the requisite operations. According to the researchers, this resulted in “only a very slight performance tax.” Why implement bfloat if you get just slightly less performance emulating it with AVX512, which already exists? Maybe it’s…
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#26Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#27I am sorry for Intel. Perhaps John Gustafson’s 16 bit posits or unums would have made a better choice.
For the same number of bits, posits are quite a bit more expensive to implement in terms of area than traditional floats.
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#28> At this point, Intel doesn’t have bfloat16 implemented in any of its processors, so they used current AVX512 vector hardware present in its existing processor to emulate the format and the requisite operations. According to the researchers, this resulted in “only a very slight performance tax.” Why implement bfloat if you get just slightly less performance emulating it with AVX512, which already exists? Maybe it’s…
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#29Having Nervana and friends on a Xeon chip could be a huge positive change for software. Not only could we toss out the issue of GPU memory transfer, but Nvidia GPUs aren’t so great with concurrency, and here with the linux kernel we might have a chance to beat Nvidia. Naveen sure would like that... Nervana once had a Maxwell compiler that was better than Nvidia’s.
Re: Intel Prepares to Graft Google’s Bfloat16 onto Processors
#30Something about Google being able to influence features in consumer grade CPUs rubs me the wrong way.