Page MenuHomec4science

dls_core.h
No OneTemporary

File Metadata

Created
Fri, May 3, 14:10

dls_core.h

/*********************************************************************************
* Copyright (c) 2018 *
* Ahmed Eleliemy <ahmed.eleliemy@unibas.ch> *
* University of Basel, Switzerland *
* All rights reserved. *
* This code is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
* This program is free software; you can redistribute it and/or modify it *
* under the terms of the license (GNU LGPL) which comes with this package. *
*********************************************************************************/
#ifndef DLS_CORE
#define DLS_CORE
struct Scheduling_params {
int scheduled_tasks;
int total_tasks;
int total_workers;
int step;
int method;
int constant;
int last_chunk;
int minimum_chunk;
int SWR;
int r1;
int count1;
int r2;
int count2;
double my_weight;
int knl_count;
};
void calculate_next_chunk_stateless(struct Scheduling_params params, int * start,int *end);
void STATIC_sl(int number_of_scheduled_tasks,int total_tasks, int * start,int *end,int world_size);
void SS_sl(int number_of_scheduled_tasks,int total_tasks, int * start,int *end,int world_size);
void GSS_sl(int number_of_scheduled_tasks,int total_tasks, int * start,int *end,int world_size);
void FAC_sl(int number_of_scheduled_tasks,int total_tasks, int step, int * start,int *end,int world_size, int last_chunk);
void FSC_sl(int number_of_scheduled_tasks,int total_tasks, int * start,int *end,int world_size, int fixed_chunk);
void TSS_sl(int number_of_scheduled_tasks,int total_tasks, int * start,int *end,int world_size, int fixed_decrement, int last_chunk, int minimum_chunk);
void WF_sl (int number_of_scheduled_tasks,int total_tasks, int step, int * start,int *end,int world_size, int last_chunk, double weight);
void calculate_next_chunk_stateful(struct Scheduling_params params, int * chunk_size);
void STATIC_sf(int total_tasks,int *chunk_size, int world_size);
void SS_sf(int * chunk_size);
void FSC_sf(int * chunk_size, int c);
void GSS_sf(int total_tasks,int step, int * chunk_size, int world_size);
void FAC_sf(int total_tasks,int step, int * chunk_size, int world_size);
void TSS_sf(int total_tasks, int step, int * chunk_size, int world_size, int c, int initial_chunk);
void WF_sf(int total_tasks,int step, int * chunk_size, int world_size, double my_weight);
int helper_FSC(int number_of_workers, int number_of_tasks, double h, double sigmma);
int helper_TSS(int number_of_workers, int number_of_tasks,int F, int l);
double WF_helper(int knl_count, char name [], int total_number_of_cores);
#endif

Event Timeline