Performance Considerations

Training Stage

To get the best overall performance at the Naïve Bayes classifier training stage:

  • If input data is homogeneous:
    • For the training data set, use a homogeneous numeric table of the same type as specified in the algorithmFPType class template parameter.
    • For class labels, use a homogeneous numeric table of type int.
  • If input data is non-homogeneous, use AOS layout rather than SOA layout.

The training stage of the Naïve Bayes classifier algorithm is memory access bound in most cases. Therefore, use efficient data layout whenever possible.

Prediction Stage

To get the best overall performance at the Naïve Bayes classifier prediction stage:

  • For the working data set, use a homogeneous numeric table of the same type as specified in the algorithmFPType class template parameter.
  • For predicted labels, use a homogeneous numeric table of type int.

Optimization Notice

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804

For more complete information about compiler optimizations, see our Optimization Notice.
Select sticky button color: 
Orange (only for download buttons)