|
Multi-core Hash Joins
Main-memory hash join implementations for multi-core CPUs
|
Classes | |
| struct | task_t |
| struct | task_list_t |
| struct | task_queue_t |
Typedefs | |
| typedef struct task_t | task_t |
| typedef struct task_list_t | task_list_t |
| typedef struct task_queue_t | task_queue_t |
Functions | |
| task_t * | get_next_task (task_queue_t *tq) __attribute__((always_inline)) |
| void | add_tasks (task_queue_t *tq, task_t *t) __attribute__((always_inline)) |
| task_t * | task_queue_get_atomic (task_queue_t *tq) __attribute__((always_inline)) |
| void | task_queue_add_atomic (task_queue_t *tq, task_t *t) __attribute__((always_inline)) |
| void | task_queue_add (task_queue_t *tq, task_t *t) __attribute__((always_inline)) |
| void | task_queue_copy_atomic (task_queue_t *tq, task_t *t) __attribute__((always_inline)) |
| task_t * | task_queue_get_slot_atomic (task_queue_t *tq) __attribute__((always_inline)) |
| task_t * | task_queue_get_slot (task_queue_t *tq) __attribute__((always_inline)) |
| task_queue_t * | task_queue_init (int alloc_size) |
| void | task_queue_free (task_queue_t *tq) |
| typedef struct task_list_t task_list_t |
Definition at line 24 of file task_queue.h.
| typedef struct task_queue_t task_queue_t |
Definition at line 25 of file task_queue.h.
Definition at line 23 of file task_queue.h.
|
inline |
Definition at line 76 of file task_queue.h.
|
inline |
Definition at line 60 of file task_queue.h.
|
inline |
Definition at line 153 of file task_queue.h.
|
inline |
Definition at line 141 of file task_queue.h.
|
inline |
Definition at line 231 of file task_queue.h.
| void task_queue_free | ( | task_queue_t * | tq | ) |
Definition at line 293 of file task_queue.h.
|
inline |
Definition at line 125 of file task_queue.h.
|
inline |
Definition at line 242 of file task_queue.h.
|
inline |
Definition at line 265 of file task_queue.h.
| task_queue_t * task_queue_init | ( | int | alloc_size | ) |
Definition at line 276 of file task_queue.h.