StarPU Internal Handbook
Loading...
Searching...
No Matches
driver_common.h
Go to the documentation of this file.
1/* StarPU --- Runtime system for heterogeneous multicore architectures.
2 *
3 * Copyright (C) 2010-2021 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
4 * Copyright (C) 2013 Thibaut Lambert
5 *
6 * StarPU is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU Lesser General Public License as published by
8 * the Free Software Foundation; either version 2.1 of the License, or (at
9 * your option) any later version.
10 *
11 * StarPU is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 *
15 * See the GNU Lesser General Public License in COPYING.LGPL for more details.
16 */
17
18#ifndef __DRIVER_COMMON_H__
19#define __DRIVER_COMMON_H__
20
23#include <starpu.h>
24#include <starpu_util.h>
25#include <core/jobs.h>
26#include <common/utils.h>
27
28#pragma GCC visibility push(hidden)
29
30void _starpu_driver_start_job(struct _starpu_worker *args, struct _starpu_job *j, struct starpu_perfmodel_arch* perf_arch,
31 int rank, int profiling);
32void _starpu_driver_end_job(struct _starpu_worker *args, struct _starpu_job *j, struct starpu_perfmodel_arch* perf_arch,
33 int rank, int profiling);
34void _starpu_driver_update_job_feedback(struct _starpu_job *j, struct _starpu_worker *worker_args,
35 struct starpu_perfmodel_arch* perf_arch, int profiling);
36
38struct starpu_task *_starpu_get_worker_task(struct _starpu_worker *args, int workerid, unsigned memnode);
40int _starpu_get_multi_worker_task(struct _starpu_worker *workers, struct starpu_task ** tasks, int nworker, unsigned memnode);
41
42void *_starpu_map_allocate(size_t length, unsigned node);
43int _starpu_map_deallocate(void* map_addr, size_t length);
44char* _starpu_get_fdname_from_mapaddr(uintptr_t map_addr, size_t *offset, size_t length);
45void *_starpu_sink_map(char *fd_name, size_t offset, size_t length);
46int _starpu_sink_unmap(uintptr_t map_addr, size_t length);
47
48#pragma GCC visibility pop
49
50#endif // __DRIVER_COMMON_H__
struct starpu_task * _starpu_get_worker_task(struct _starpu_worker *args, int workerid, unsigned memnode)
int _starpu_get_multi_worker_task(struct _starpu_worker *workers, struct starpu_task **tasks, int nworker, unsigned memnode)
Definition jobs.h:74
Definition workers.h:155