Package org.apache.lucene.internal.vectorization

## Class VectorizationProvider

- java.lang.Object
- - org.apache.lucene.internal.vectorization.VectorizationProvider

-     public abstract class VectorizationProvider
      extends Object

  A provider of vectorization implementations. Depending on the Java version and availability of vectorization modules in the Java runtime this class provides optimized implementations (using SIMD) of several algorithms used throughout Apache Lucene.
  NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static VectorizationProvider` | `getInstance()` | Returns the default instance of the provider matching vectorization possibilities of actual runtime.
    `abstract VectorUtilSupport` | `getVectorUtilSupport()` | Returns a singleton (stateless) `VectorUtilSupport` to support SIMD usage in `VectorUtil`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getInstance

          public static VectorizationProvider getInstance()

      Returns the default instance of the provider matching vectorization possibilities of actual runtime.
      Throws:
        `UnsupportedOperationException` - if the singleton getter is not called from known Lucene classes.

    - #### getVectorUtilSupport

          public abstract VectorUtilSupport getVectorUtilSupport()

      Returns a singleton (stateless) `VectorUtilSupport` to support SIMD usage in `VectorUtil`.