taihulight / clqueue Goto Github PK
View Code? Open in Web Editor NEWThis project forked from cassianokc/clqueue
Implementing a Job Scheduler for GPUs in OpenCL
This project forked from cassianokc/clqueue
Implementing a Job Scheduler for GPUs in OpenCL
Implementing a Job Scheduler for GPUs in Opencl Graphics Processors can now be used as a computational plataform. The parallel nature of modern Graphics Processing Units added to the fact that almost every modern computer has a GPU make them very usefull on solving data-parallel problems. GPUs nowadays have more transistors then CPUs, most of those transistores are employed on more Single Instruction Multiple Data(SIMD) unites, while on CPUs almost two thirds of those transistors are used to implement cache memory and cache logic. One of the challenges of most parallel implementations on GPUs is to minimize the communication between the CPU(host) and the GPU(device), because the IO overhead is too large. Another common problem is the need to minimize the idle time on the GPU working groups. One idea to solve this problems is to implement a job scheduler on the GPU. This way, as long as the scheduler data structure is not empty there will be no idle working groups, the number of kernel calls will also be lower, implying possibly in better run times. This project implements a queue on the GPU memory, each GPU working group will dequeue jobs from this queue and will process them. Hopefully, by implementing this job scalonator the number of kernel calls and the number of idle working groups will be lower and there will be a greater speed up. After the implementation, this data structure will be used on a GPU ray tracing engine.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.