diff options
-rw-r--r-- | src/til.c | 9 | ||||
-rw-r--r-- | src/til.h | 1 |
2 files changed, 9 insertions, 1 deletions
@@ -795,9 +795,16 @@ int til_module_setup_finalize(const til_module_t *module, const til_settings_t * } -/* generic fragmenter using a horizontal slice per cpu according to context->n_cpus (multiplied by a constant factor) */ +/* generic fragmenter using a horizontal slice per cpu according to context->n_cpus */ int til_fragmenter_slice_per_cpu(til_module_context_t *context, const til_fb_fragment_t *fragment, unsigned number, til_fb_fragment_t *res_fragment) { + return til_fb_fragment_slice_single(fragment, context->n_cpus, number, res_fragment); +} + + +/* generic fragmenter using a horizontal slice per cpu according to context->n_cpus * 16 */ +int til_fragmenter_slice_per_cpu_x16(til_module_context_t *context, const til_fb_fragment_t *fragment, unsigned number, til_fb_fragment_t *res_fragment) +{ /* The *16 is to combat leaving CPUs idle waiting for others to finish their work. * * Even though there's some overhead in scheduling smaller work units, @@ -54,6 +54,7 @@ int til_module_setup(const til_settings_t *settings, til_setting_t **res_setting int til_module_setup_randomize(const til_module_t *module, til_settings_t *settings, unsigned seed, til_setup_t **res_setup, char **res_arg); int til_module_setup_finalize(const til_module_t *module, const til_settings_t *module_settings, til_setup_t **res_setup); int til_fragmenter_slice_per_cpu(til_module_context_t *context, const til_fb_fragment_t *fragment, unsigned number, til_fb_fragment_t *res_fragment); +int til_fragmenter_slice_per_cpu_x16(til_module_context_t *context, const til_fb_fragment_t *fragment, unsigned number, til_fb_fragment_t *res_fragment); int til_fragmenter_tile64(til_module_context_t *context, const til_fb_fragment_t *fragment, unsigned number, til_fb_fragment_t *res_fragment); #endif |