495_interoperability.doxy 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /* StarPU --- Runtime system for heterogeneous multicore architectures.
  2. *
  3. * Copyright (C) 2018 Inria
  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. * See the GNU Lesser General Public License in COPYING.LGPL for more details.
  15. */
  16. /*! \page InteroperabilitySupport Interoperability Support
  17. In situations where multiple parallel software elements have to coexist within
  18. the same application, unconcerted accesses to computing units may lead such
  19. parallel software elements to collide and interfere. The purpose of the
  20. Interoperability routines of StarPU, implemented along the definition of the
  21. Resource Management APIs of Project H2020 INTERTWinE, is to enable StarPU to
  22. coexist with other parallel software elements without resulting in computing
  23. core oversubscription or undersubscription. These routines allow the
  24. programmer to dynamically control the computing resources allocated to StarPU,
  25. to add or remove processor cores and/or accelerator devices from the pool of
  26. resources used by StarPU's workers to execute tasks. They also allow multiple
  27. libraries and applicative codes using StarPU simultaneously to select distinct
  28. sets of resources independently. Internally, the Interoperability Support is
  29. built on top of Scheduling Contexts (see \ref SchedulingContexts).
  30. \section ResourceManagement StarPU Resource Management
  31. This section will present the 'starpurm' module.
  32. All functions are defined in \ref API_Interop_Support.
  33. \subsection InitExit Initialization and Shutdown
  34. TODO
  35. */