Configure LIBXSMM with default arguments (#28)
Configure LIBXSMM with default arguments (#28)

* Fixed AVX-512 intrinsic implementation.

* OR'ed LIBXSMM_DNN_CONV_OPTION_OVERWRITE into convolution options, which folds zeroing the input buffer on first use. This removes the call to libxsmm_dnn_zero_buffer in case of LIBXSMM_DNN_COMPUTE_KIND_FWD.

* Rely on libxsmm_hash rather than std::hash. Brought xsmm_conv2d.cc up-to-date with TF/master.

* Code cleanup: use LIBXSMM_DNN_CONV_OPTION_WU_EXT_FILTER_REDUCE_OVERWRITE rather than assembling the option from separate flags.

* Avoid to destroy the handle in case of LIBXSMM_DNN_WARN_FALLBACK since the next iteration may double-delete the same handle. One would need to update the handle-cache to allow destruction at this place. However, all handles are destructed when TF terminates (cache cleanup).

* Rely on default configuration arguments, and thereby lower the dependence from LIBXSMM internals.

hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm,hfp/tensorflow-xsmm