Skip to content

AdKnow/Parallel-Task-Scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Parallel Task Scheduler

Overview

This project is a parallel job scheduler with multiple levels of multiple queues i.e. A two-level job Scheduler with complete locking, synchronization & load balancing addressed in C++ with a hybrid scheduling algorithm and variety of generated tasks.

Features

  • Multiple Queues: The system utilizes multiple sub-queues to distribute jobs.
  • Combination of Round-Robin Scheduling and Priority based Scheduling: Jobs within a sub-queue are processed in a round-robin or priority fashion depening on task characteristics.
  • Synchronization: : Synchronization between initial 1st level queues, middleware routing queue and task scheduling queues.
  • Thread Management: The code utilizes multiple threads for concurrent job processing and queue management.
  • Random Task Generation: Task are generated randomly with varying lengths and priorities.

Compile & Run

  1. Clone the repository

  2. Compile: Use a C++ compiler (like g++) to compile the code. For Example:

    g++ Multilevel.cpp -o job_scheduler
  3. Run: Execute the compiled program:

    ./job_scheduler

Requirements

  • C++11 or later standard
  • A C++ compiler (e.g., g++)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages