[onednn] Enable auto_mixed_precision for fp16 on cpu
Hi @reedwm @penpornk : can you please let me know if there are any comments I can address? Thanks! Looks like there was a failure on Windows:

```
FAIL: //tensorflow/core/grappler/optimizers:auto_mixed_precision_test_cpu

[==========] Running 38 tests from 3 test suites.
[----------] Global test environment set-up.
[----------] 2 tests from AutoMixedPrecisionCpuTest
[ RUN      ] AutoMixedPrecisionCpuTest.Simple
2024-02-21 08:25:59.082520: I tensorflow/core/grappler/clusters/single_machine.cc:361] Starting new session
2024-02-21 08:25:59.084137: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: SSE SSE2 SSE3 SSE4.1 SSE4.2 AVX AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2024-02-21 08:25:59.159407: I tensorflow/core/grappler/optimizers/auto_mixed_precision.cc:2260] Converted 0/12 nodes to float16 precision using 4 cast(s) to float16 (excluding Const and Variable casts)
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 53 in simple regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$": '[' is unsupported.
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 57 in simple regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$": ']' is unsupported.
tensorflow/core/grappler/optimizers/auto_mixed_precision_test.cc(1339): error: Value of: edge.src.node->name()
Expected: contains regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$"
  Actual: "clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-1-AutoMixedPrecision"
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 53 in simple regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$": '[' is unsupported.
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 57 in simple regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$": ']' is unsupported.
tensorflow/core/grappler/optimizers/auto_mixed_precision_test.cc(1339): error: Value of: edge.src.node->name()
Expected: contains regular expression "^clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-[0-9]-AutoMixedPrecision$"
  Actual: "clr2-0-CastToFp16-0-AutoMixedPrecision-0-CastToFp32-0-AutoMixedPrecision"
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 21 in simple regular expression "^allow1-0-CastToFp16-[0-9]-AutoMixedPrecision$": '[' is unsupported.
external/com_google_googletest/googletest/src/gtest-port.cc(828): error: Failed
Syntax error at index 25 in simple regular expression "^allow1-0-CastToFp16-[0-9]-AutoMixedPrecision$": ']' is unsupported.
tensorflow/core/grappler/optimizers/auto_mixed_precision_test.cc(1347): error: Value of: edge.dst.node->name()
Expected: contains regular expression "^allow1-0-CastToFp16-[0-9]-AutoMixedPrecision$"
  Actual: "allow1-0-CastToFp16-0-AutoMixedPrecision"
[  FAILED  ] AutoMixedPrecisionCpuTest.Simple (80 ms)
``` > Looks like there was a failure on Windows:

Thanks @cantonios for pointing me the issue and the error log. I have fixed it. That test shouldn't be running on CPU, like on master. @cantonios : I see "feedback/copybara" has internal failure. Please let me know if anything I can fix. Thanks. > @cantonios : I see "feedback/copybara" has internal failure. Please let me know if anything I can fix. Thanks.

I think we're okay... it looks like there are some preexisting failures at Google. @cantonios - Is it ok to close this PR since the changes are already merged into master? > @cantonios - Is it ok to close this PR since the changes are already merged into master?

Yes, this was merged in 21e9d7292d90db23805585e6f1846693692c0b83. I'm not sure why this PR isn't marked as merged. @kanglant do you know why?

This PR enables AMP FP16 on supporting Intel Xeon CPUs. If there is no GPU available to run FP16, it checks if FP16 can be executed on CPU.
Use config `auto_mixed_precision`  to enable FP16 on CPUs.