starpu_parameters.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /* StarPU --- Runtime system for heterogeneous multicore architectures.
  2. *
  3. * Copyright (C) 2011 Université de Bordeaux 1
  4. *
  5. * StarPU is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU Lesser General Public License as published by
  7. * the Free Software Foundation; either version 2.1 of the License, or (at
  8. * your option) any later version.
  9. *
  10. * StarPU is distributed in the hope that it will be useful, but
  11. * WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  13. */
  14. #ifndef _STARPU_PARAMETERS_H
  15. #define _STARPU_PARAMETERS_H
  16. /* Parameters which are not worth being added to ./configure options, but
  17. * still interesting to easily change */
  18. /* The dmda scheduling policy uses
  19. *
  20. * alpha * T_computation + beta * T_communication + gamma * Consumption
  21. *
  22. * Here are the default values of alpha, beta, gamma
  23. */
  24. #define STARPU_DEFAULT_ALPHA 1.0
  25. #define STARPU_DEFAULT_BETA 1.0
  26. #define STARPU_DEFAULT_GAMMA 1000.0
  27. /* How many executions a codelet will have to be measured before we
  28. * consider that calibration will provide a value good enough for scheduling */
  29. #define STARPU_CALIBRATION_MINIMUM 10
  30. /* Assumed relative performance ratios */
  31. /* TODO: benchmark a bit instead */
  32. #define STARPU_CPU_ALPHA 1.0f
  33. #define STARPU_CUDA_ALPHA 13.33f
  34. #define STARPU_OPENCL_ALPHA 12.22f
  35. #define STARPU_GORDON_ALPHA 6.0f /* XXX this is a random value ... */
  36. #endif /* _STARPU_PARAMETERS_H */