Intel® oneAPI Math Kernel Library Developer Reference - C
The following examples illustrate usage of support functions for conditional numerical reproducibility.
#include <mkl.h> int main(void) { int my_cbwr_branch; /* Find the available MKL_CBWR_BRANCH automatically */ my_cbwr_branch = mkl_cbwr_get_auto_branch(); /* User code without Intel MKL calls */ /* Piece of the code where CNR of Intel MKL is needed */ /* The performance of Intel MKL functions might be reduced for CNR mode */ if (mkl_cbwr_set(my_cbwr_branch)!=MKL_CBWR_SUCCESS) { printf("Error in setting MKL_CBWR_BRANCH! Aborting…\n"); return; } /* CNR calls to Intel MKL + any other code */ }
#include <mkl.h> int main(void) { int my_cbwr_branch; /* Piece of the code where CNR of Intel MKL is analyzed */ my_cbwr_branch = mkl_cbwr_get(MKL_CBWR_BRANCH); switch (my_cbwr_branch) { case MKL_CBWR_AUTO: /* actions in case of automatic mode */ break; case MKL_CBWR_SSSE3: /* actions for SSSE3 code */ break; default: /* all other cases */ } /* User code */ }
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |