Skip to content
Utilization of GPU for Parallel Simulation Computations (Master's Thesis)
C# C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Benchmarks
NOpenCL
Tests
TrafficSimulation
.gitattributes
.gitignore
LICENSE
README.md
TrafficSimulation.sln

README.md

Utilization of GPU for Parallel Simulation Computations

Využití GPU pro paralelní simulační výpočty
Brought to you by @deathkiller

Build Status Tests Code Quality License Lines of Code

The purpose of this thesis is to implement road traffic simulation that uses a GPU for computations and compare simulation run time to a reference implementation that uses a CPU for computations.

The created application allows generating a road network for simulation using model with cellular automaton or car following model. Also, it can compute individual steps of the simulation using a GPU or a CPU. Simulation state can be monitored using simple visualization.

The application is written in C# programming language and uses .NET Framework. The application is using OpenCL technology and NOpenCL library to run computations on a GPU.

In Czech

Tato práce se zabývá implementací simulace silniční dopravy, která pro výpočty využívá jednotku GPU, a porovnáním doby běhu výpočtů simulace s referenční implementací, která pro výpočty využívá jednotku CPU.

Vytvořená aplikace umožňuje vygenerovat silniční síť pro simulaci s využitím modelu s celulárním automatem nebo car following modelu a následně počítat jednotlivé kroky simulace s pomocí jednotky GPU nebo CPU. Stav simulace je možné sledovat pomocí jednoduché vizualizace.

Aplikace je napsaná v jazyce C# a využívá technologii .NET Framework. Pro spouštění výpočtu na jednotce GPU se využívá technologie OpenCL a knihovna NOpenCL.

License

This project is licensed under the terms of the GNU General Public License v3.0.

Uses NOpenCL licensed under the terms of the MIT License.

Uses NBench licensed under the terms of the Apache License 2.0.

You can’t perform that action at this time.