Cloud computing is a new technology, instead of all computer hardware and software that used on desktop, or somewhere within company's network, it's presented as a service by cloud service providers and accessed via the Internet. Exactly where hardware and software are located and how everything works does not matter. In cloud computing there are many jobs that requires to be executed on the available resources to achieve best minimal execution time. Several optimization methods are available for cloud job scheduling. However, the job scheduling process is still need to be optimized. This paper proposes a new job scheduling mechanism using Firefly Algorithm to minimize the execution time of jobs. The proposed mechanism based on information of jobs and resources such as length of job speed of resource and identifiers. The scheduling function in the proposed job scheduling mechanism firstly creates a set of jobs and resources to generate the population by assigning the jobs to resources randomly and evaluates the population using a fitness value which represents the execution time of jobs. Secondly the function used iterations to regenerate populations based on firefly behavior to produce the best job schedule that gives the minimum execution time of jobs. Several scenarios are implemented using Java Language and CloudSim simulator. Different settings have been considered in the evaluation and experimentation phase to examine the proposed mechanism in different workloads. The first phase of the evaluation process describes how the proposed mechanism can be used to minimize the execution time of jobs. The second phase of the evaluation process compares the proposed mechanism with First Come First Serves (FCFS) algorithm. The results revealed that the proposed mechanism minimizes the execution time significantly. Furthermore, the proposed mechanism outperformed the FCFS algorithm.
[1]
Mahmoud Maqableh,et al.
Job Scheduling for Cloud Computing Using Neural Networks
,
2014
.
[2]
Xin-She Yang,et al.
Firefly Algorithm: Recent Advances and Applications
,
2013,
ArXiv.
[3]
Xiaolong Xu,et al.
An ACO-LB Algorithm for Task Scheduling in the Cloud Environment
,
2014,
J. Softw..
[4]
Salim Bitam,et al.
Bees Life Algorithm for Job Scheduling in Cloud Computing
,
2012
.
[5]
Sakshi Kaushal,et al.
Deadline and Budget Distribution based Cost- Time Optimization Workflow Scheduling Algorithm for Cloud
,
2012
.
[6]
Shigen Shen,et al.
Task Scheduling Optimization in Cloud Computing Based on Heuristic Algorithm
,
2012,
J. Networks.
[7]
Rajveer Kaur,et al.
Analysis of Job Scheduling Algorithms in Cloud Computing
,
2014
.
[8]
Arash Ghorbannia Delavar,et al.
RSDC (RELIABLE SCHEDULING DISTRIBUTED IN CLOUD COMPUTING )
,
2012
.
[9]
Pinal Salot,et al.
A SURVEY OF VARIOUS SCHEDULING ALGORITHM IN CLOUD COMPUTING ENVIRONMENT
,
2013
.
[10]
Abdul Hanan Abdullah,et al.
A Discrete Firefly Algorithm for Scheduling Jobs on Computational Grid
,
2014
.
[11]
Amandeep Verma,et al.
Scheduling using improved genetic algorithm in cloud computing for independent tasks
,
2012,
ICACCI '12.
[12]
Lin Wang,et al.
Task Scheduling Policy Based on Ant Colony Optimization in Cloud Computing Environment
,
2013
.
[13]
Hongying Huo,et al.
Improved PSO-based Task Scheduling Algorithm in Cloud Computing
,
2012
.