|
@@ -1,6 +1,6 @@
|
|
/* StarPU --- Runtime system for heterogeneous multicore architectures.
|
|
/* StarPU --- Runtime system for heterogeneous multicore architectures.
|
|
*
|
|
*
|
|
- * Copyright (C) 2009, 2010 Université de Bordeaux 1
|
|
+ * Copyright (C) 2009-2011 Université de Bordeaux 1
|
|
* Copyright (C) 2010 Centre National de la Recherche Scientifique
|
|
* Copyright (C) 2010 Centre National de la Recherche Scientifique
|
|
*
|
|
*
|
|
* StarPU is free software; you can redistribute it and/or modify
|
|
* StarPU is free software; you can redistribute it and/or modify
|
|
@@ -49,6 +49,8 @@ typedef struct {
|
|
/* Get the device id associated to this node, or -1 if not applicable */
|
|
/* Get the device id associated to this node, or -1 if not applicable */
|
|
int devid[STARPU_MAXNODES];
|
|
int devid[STARPU_MAXNODES];
|
|
|
|
|
|
|
|
+ unsigned nworkers[STARPU_MAXNODES];
|
|
|
|
+
|
|
// TODO move this 2 lists outside starpu_mem_node_descr
|
|
// TODO move this 2 lists outside starpu_mem_node_descr
|
|
/* Every worker is associated to a condition variable on which the
|
|
/* Every worker is associated to a condition variable on which the
|
|
* worker waits when there is task available. It is possible that
|
|
* worker waits when there is task available. It is possible that
|
|
@@ -68,6 +70,8 @@ void _starpu_init_memory_nodes(void);
|
|
void _starpu_deinit_memory_nodes(void);
|
|
void _starpu_deinit_memory_nodes(void);
|
|
void _starpu_set_local_memory_node_key(unsigned *node);
|
|
void _starpu_set_local_memory_node_key(unsigned *node);
|
|
unsigned _starpu_get_local_memory_node(void);
|
|
unsigned _starpu_get_local_memory_node(void);
|
|
|
|
+void _starpu_memory_node_worker_add(unsigned node);
|
|
|
|
+unsigned _starpu_memory_node_workers(unsigned node);
|
|
unsigned _starpu_register_memory_node(starpu_node_kind kind, int devid);
|
|
unsigned _starpu_register_memory_node(starpu_node_kind kind, int devid);
|
|
//void _starpu_memory_node_attach_queue(struct starpu_jobq_s *q, unsigned nodeid);
|
|
//void _starpu_memory_node_attach_queue(struct starpu_jobq_s *q, unsigned nodeid);
|
|
void _starpu_memory_node_register_condition(pthread_cond_t *cond, pthread_mutex_t *mutex, unsigned memory_node);
|
|
void _starpu_memory_node_register_condition(pthread_cond_t *cond, pthread_mutex_t *mutex, unsigned memory_node);
|