SapphireGirl
asked on
Math behind scheduling parallel tasks to minimize the performance time
Does anyone know the math behind how I can figure out how to scheduling parallel tasks to minimize the time to perform all of the required tasks.
Is this an optimization problem. Where can I find out how to do this type if problem?
Thanks in advance
Is this an optimization problem. Where can I find out how to do this type if problem?
Thanks in advance
you can use round robin approach. Some operating systems uses this apprach to process the simultaneous works.
ASKER
I am not clear as to what round robin approach is. What I need is a way basically using logic to understand the idea behind how to solve this type of problem. For example. If I have shared resources and I have tasks on these shared resources to complete, What kind of problem, some type of optimization I am guessing, can I set up to solve this type of scheduling problem.
Does that make sense. I am looking for some examples of problems like this so I can understand the idea behind the logic of solving this type of problem.
Does that make sense. I am looking for some examples of problems like this so I can understand the idea behind the logic of solving this type of problem.
ASKER
For a basic optimization problem, I used the Hungarian method of minimizing. That could work given no constraints.
What happens if I have constraints?
For example, Find the minimum amount of processing time to run 3 programs on 3 computers simultaneously given the fact that computer 1 must be run between 7-9 am and computer 3 must be run between 6-7 pm.
Say the following is true
Computer 1 Computer 2 Computer 3
Application 1 takes 10 minutes 20 30
Application 2 takes 20 10 40
Application 3 takes 5 5 10
Using the Hungarian method to solve the minimize problem I get the following:
Run A1 on C1
Run A2 on C2
Run A3 on C3
Now, given constraints on Computer 1, Computer 2 and Computer 3 and only 1 solution for optimization where do I go from here. Has anyone done this type of problem? I hope I am looking at it in the correct way.
What happens if I have constraints?
For example, Find the minimum amount of processing time to run 3 programs on 3 computers simultaneously given the fact that computer 1 must be run between 7-9 am and computer 3 must be run between 6-7 pm.
Say the following is true
Computer 1 Computer 2 Computer 3
Application 1 takes 10 minutes 20 30
Application 2 takes 20 10 40
Application 3 takes 5 5 10
Using the Hungarian method to solve the minimize problem I get the following:
Run A1 on C1
Run A2 on C2
Run A3 on C3
Now, given constraints on Computer 1, Computer 2 and Computer 3 and only 1 solution for optimization where do I go from here. Has anyone done this type of problem? I hope I am looking at it in the correct way.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
The question was not the most well formed but I appreciate the help.
Thank you
Thank you
ASKER
To answer a minimum question, I set up the problem in a matrices ( must be a square matrices) and used the Hungarian method that can be found in any linear algebra book.