QOS,Comparison of BNP Scheduling Algorithms with Expanded Fuzzy System

Parallel processing is a filed in which different systems run together to save the time of the processing and to increase the performance of the system. It has been also seen that it works somewhat up to the load balancing concept. Previous algorithms like HLFET ,MCP, DLS ,ETF , have shown that they can reduce the burden of the processor by working simultaneous working system .In our research work , we have combined HLFET ,MCP, DLS ,ETF with FUZZY logic to check out what effect it makes to the parameters which has been taken from the previous work done like Makespan, SLR ,Speedup , Process Utilization.It has been found that the fuzzy logic system works better than the single algorithm.


INTRODUCTION
Parallel processing is one of the emerging concepts that is used to execute number of tasks on different number of processors at the same [5] time.With the help of parallel processing one is able to solve complex and computation intensive problems in an effective way.Depending upon nature of nodes the parallel processing system can be divided into two categories known as homogenous or heterogeneous parallel system.In homogenous environment the number of processor used for executing the different tasks are similar in capacity and in case of heterogeneous environment the tasks are allocated on various processors of different capacity and speed.
Independent of the environment the objective of parallel processing is to improve the execution speed and to minimize the makespan of task execution.This is done by using the different precious and competent task scheduling algorithm.The objective of task scheduling algorithm is to allocate the different tasks to different processor so that execution speeds of the task increases and the overall execution time of the task decreases.Task scheduling algorithms take care of all the above said factors and can be represented by Directed Acyclic Graphs (DAG) [15] .

II. MULTIPROCESSOR SCHEDULING ALGORITHMS [3]
A. Bounded Number of Processors (BNP) scheduling algorithms: These algorithms schedule the DAG to a bounded number of processors directly.The processors are assumed to be fully-connected.D. Arbitrary Processor Network (APN) scheduling algorithms: These algorithms perform scheduling and mapping on the target architectures in which the processors are connected via a network of arbitrary topology.In this paper, BNP scheduling algorithms are discussed and their performance is analyzed.BNP class of algorithms is categorized into two categories: Static Algorithms [2] : These algorithms use list scheduling approach.Therefore in static algorithms once the task prioritization phase is finished then and only then the processor selection phase begins.

HLFET Algorithm
It is one of the simplest algorithms.Here the HLFET stands for Highest Level First with Estimated Time.www.ijacsa.thesai.org

Algorithm Steps:
1) Calculate the static Level of the nodes in the DAG.
2) Insert all the nodes into a list and sort the list according to descending order of Static Level of the nodes.
3) While not the end of the list do  Remove the node from the list. Compute the earliest start execution time of for all the processor present in the system. Map the node to the processor that has the least early start execution time.

MCP Algorithm
MCP stands for Modified Critical Path.It uses the Latest Start Time attribute for mapping the nodes to processors.

Algorithm Steps:
1) Calculate the Latest Start Time (LST) of all the nodes in the DAG.
2) Insert all the nodes into a list and sort the list according order of Latest Start Time.
3) While not the end of the list do  Remove the node from the list  Compute the earliest start execution time of for all the processors present in the system. Map the node to the processor that has the least early start execution time.Dynamic Algorithms: These algorithms also use list scheduling approach.In Dynamic algorithms both the task prioritization phase and processor selection phase goes on side by side.

ETF Algorithm
ETF stands for Earliest Task First.This algorithm computes the earliest execution start time for all nodes and selects one with lowest value for scheduling.In this algorithm the ready node stands for that node which has all its parents scheduled.

Algorithm Steps:
1) Calculate the Static Level of each node in the DAG.
2) In the beginning the ready node list contains only the entry node.
3) While the ready node list is not empty do  Compute the earliest start time of all the nodes in the ready node list on each processor. Select the node with earliest start time.If two or more nodes have same earliest execution start time values then the node with highest Static Level is selected. Map the selected node to the processor. Add new ready nodes to the ready node list.

DLS Algorithm
DLS stands for Dynamic Level Scheduling.It uses the Dynamic Level attribute for scheduling the nodes.

Algorithm Steps:
1) Calculate the Static Level of node in DAG.
2) In the beginning the ready node list contains only the entry node.
3) While the ready node list is not empty do  Compute the earliest start time of every node in the ready node list on each processor. Calculate the Dynamic Level of every node in the list  Select the node with the largest Dynamic Level. Schedule the node onto the processor. Add new ready nodes to the ready node list.

III. DAG MODEL:
The DAG is generic model of a parallel program consisting of a set of processes among which there are dependencies.Each process is an indivisible unit of execution, expressed by node.A node has one or more inputs and can have one or more output to various nodes.When all inputs are available, the node is triggered to execute.After its execution, it generates its output.In this model, a set of node ( ) are connected by a set of a directed edges, which are represented by ( ) where is called the Parent node and is called the child node.A node without parent is called an Entry node and a without child node called an Exit node.The weight of a node, denoted by w ( ), represents the process execution time of a process.Since [3] each edge corresponds to a message transfer from one process to another, the weight of an edge, denoted by c( ),is equal to the message transmission time from node .Thus, c( )becomes zero when are scheduled to the same processor because intraprocessor communication time is negligible compared with the inter processor communication time.The node and edge weights are usually obtained by estimations.Some [15] variations in the generic DAG model are described below: IV.FUZZY LOGIC Fuzzy logic is a rigorous mathematical field, and it provides an effective vehicle for modeling the uncertainty [29] in human reasoning.Fuzzy set is uniquely determined by its membership function (MF), and it is also associated with a linguistically meaningful term.Fuzzy logic provides a systematic tool to incorporate human experience.It is based on three core concepts, namely, fuzzy sets, linguistic variables, www.ijacsa.thesai.organd possibility distributions.The importance of fuzzy logic derives from the fact that most modes of [32] human thinking and especially common sense reasoning are approximate in nature.The essential features of fuzzy logic are as follows:  In fuzzy logic everything is a matter of degree. Any logical system can be fuzzified. In fuzzy logic, knowledge is interpreted as a collection of elastic or, equivalently, fuzzy constraint on a collection of variables. Inference is viewed as a process of propagation of elastic constraints.

V. EXPERIMENTAL RESULTS AND DISCUSSIONS
The analytical results of the entire algorithms under all three case scenarios are determined.Following parameters are implemented for given scheduling algorithms and results are shown graphically: Makespan: It is defined as the completion time of the algorithm.Lesser the Makespan less time to execute the algorithm more efficient is the algorithm.Makespan is calculated by measuring the finishing time of the exit task by the algorithm.
Processor Utilization: In multiprocessor system, processor work in parallel.There can be some scenario when large amount of work is done by one processor and lesser by others, which the work distribution is not proportionate Processor Utilization (%) = (total time taken of Scheduled tasks/Makespan)*100 Speed Up: It is defined as the ratio of time taken by serial algorithm work to the time taken by the algorithm to perform the same work.

Speed Up = Time taken by serial algorithm/Time taken by parallel Algorithm
Scheduled length Ratio (SLR): It is defined as the ratio of Makespan of the algorithm to Critical Path values of the DAG.The lesser the values of SLR the more efficient is the algorithm, but The SLR cannot be less than the Critical path values.

Scenario 1: 5 Task Nodes :
From the graphs shown below ,we can say that results from all the algorithms using 5 Task Nodes the parameters Makespan, SLR, SpeedUp are throughout the same. Makespan of DLS showed large increase in amount with 10 nodes and MCP for 15nodes. Process Utilization remained same for 5 nodes.MCP,ETF,DLS utilized process efficiently than HLFET for 10 nodes with 15 nodes.MCP proved to be better than other algorithms whereas ETF showed large drop in utilization rate. SLR remained the same for 5 nodes while HLFET for 10 nodes and ETF for 15 nodes showed lesser SLR. ETF was the algorithm with higher Speedup.

VII. FUTURE SCOPE
Although fuzzy logic is very interesting to be implemented but it has a loop hole into it.There is a rule base for each and every type of architecture into it.If we would be introducing a new random node into the system, the fuzzy logic won't have any information about it unless and until we don't mention it into the program by creating a new rule base.Hence in future, if somebody can find a method to optimize the rule set on run time so that the system takes a slight less time to create those rule sets which would make a system little smoother.This task can be achieved with the help of some of the latest methods formally known as Neural Classifications.There are some other methods also which can be tried for genetic algorithm such as PS,PSO,BFO.

Fig. 1 .
Fig. 1.Multiprocessor scheduling algorithms B. Unbounded Number of Clusters (UNC) scheduling algorithms: These algorithms schedule the DAG to an unbounded number of clusters.The processors [1][26] are assumed to be fully-connected.The technique employed by these algorithms is also called clustering.C. Task Duplication Based (TDB) scheduling algorithms: These algorithms also schedule the DAG to an unbounded number of clusters but employ task duplication technique to further reduce the completion time.