flamegpu / flamegpu2-concurrency-benchmark Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
A bug/limitation of flamegpu2.0.0a1 limits the number of species in some cases due to an arbitrary limit.
For now, the LargePopsFalloff benchmark has been adjusted to avoid this runtime error. Once this is fixed within FLAME GPU 2 this can be increased back to match the brute force example.
See FLAMEGPU
std::mt19937
should be switched to std::mt19937_64
to support wider seed values.
The seed is currently provided by CLI, which if not specified will default to the current seed. Instead, to match other benchmark models we should seed with the reptition number for reproducible benchmarks (although ideally it should be cli-overrideable, but that is not currently possible for CUDASimulation
s)
As the DeviceMaxed
benchmark uses a fixed population, irrispective of occupancy and the device used it is poorly named.
It would be better to either rename it, or make it actually max out the device (i.e. launch the maximum number of resiident threads, which will be achieved in some but not all parts of the benchmark due to occupancy constraints such as register use in some components)
CSV files should be written into the workding directory, not ../Results which may not exist depending on where the executable is called from.
Instructions may need tweaking / the plotting script moving etc, and more assumptions may need changing.
Ideally this should also not overwrite files taht exist already without a flag / user input, and not just append to files.
The large poopulation falloff benchmaks each require ~ 42 minutes of RTC compilation time in total (2 kernels * ~5s per kernel * 257 species).
This accounts for a suprisingly large amount of the total benchmark runtime.
Switching to non-RTC would remove this cost, but increase actual runtime. For spatial this change will be relatively minimal. Bruteforce would see a more significant increase (without other planned optimistaions such as shared mem curve)
Several files are commit into the build directory, this should not be the case.
Falloff experiment is not described in the readme. Either should be included or removed and data purged.
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.