CpuGenerators.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. #ifndef MANDEL_CPUGENERATORS_H
  2. #define MANDEL_CPUGENERATORS_H
  3. #include "Generators.h"
  4. namespace mnd
  5. {
  6. class CpuGeneratorFloat;
  7. class CpuGeneratorDouble;
  8. class CpuGenerator128;
  9. class CpuGeneratorSse2Float;
  10. class CpuGeneratorSse2Double;
  11. class CpuGeneratorAvxFloat;
  12. class CpuGeneratorAvxDouble;
  13. class CpuGeneratorAvx512Float;
  14. class CpuGeneratorAvx512Double;
  15. }
  16. class mnd::CpuGeneratorFloat : public Generator
  17. {
  18. public:
  19. virtual void generate(const MandelInfo& info, float* data);
  20. };
  21. class mnd::CpuGeneratorDouble : public Generator
  22. {
  23. public:
  24. virtual void generate(const MandelInfo& info, float* data);
  25. };
  26. class mnd::CpuGenerator128 : public Generator
  27. {
  28. public:
  29. virtual void generate(const MandelInfo& info, float* data);
  30. };
  31. class mnd::CpuGeneratorSse2Float : public Generator
  32. {
  33. public:
  34. virtual void generate(const MandelInfo& info, float* data);
  35. };
  36. class mnd::CpuGeneratorSse2Double : public Generator
  37. {
  38. public:
  39. virtual void generate(const MandelInfo& info, float* data);
  40. };
  41. class mnd::CpuGeneratorAvxFloat : public Generator
  42. {
  43. public:
  44. virtual void generate(const MandelInfo& info, float* data);
  45. };
  46. class mnd::CpuGeneratorAvxDouble : public Generator
  47. {
  48. public:
  49. virtual void generate(const MandelInfo& info, float* data);
  50. };
  51. class mnd::CpuGeneratorAvx512Float : public Generator
  52. {
  53. public:
  54. virtual void generate(const MandelInfo& info, float* data);
  55. };
  56. class mnd::CpuGeneratorAvx512Double : public Generator
  57. {
  58. public:
  59. virtual void generate(const MandelInfo& info, float* data);
  60. };
  61. #endif // MANDEL_CPUGENERATORS_H