SIMD.hpp 699 B

12345678910111213141516171819202122232425262728
  1. ///
  2. /// \file System/SIMD.hpp
  3. ///
  4. /// Support for querying information about a host's SIMD support.
  5. ///
  6. /// \copyright
  7. /// Copyright (c) 2020 Nicholas Corgan
  8. /// SPDX-License-Identifier: BSL-1.0
  9. ///
  10. #pragma once
  11. #include <Pothos/Config.hpp>
  12. #include <string>
  13. #include <vector>
  14. namespace Pothos {
  15. namespace System {
  16. //! Returns the list of features supported by this machine's processor.
  17. POTHOS_API std::vector<std::string> getSupportedSIMDFeatureSet();
  18. //! Used by Pothos's dynamic SIMD dispatchers to choose the most optimal runnable SIMD function.
  19. POTHOS_API std::string getOptimalSIMDFeatureSetKey(const std::vector<std::string>& featureSetKeys);
  20. } //namespace System
  21. } //namespace Pothos