FLAMEGPU2
FLAMEGPU2 copied to clipboard
FLAME GPU 2 is a GPU accelerated agent based modelling framework for CUDA C++ and Python
Allow models with more than 128 wide layers to run without error, by not using a fixed number of `CUDAStreamCompactionConfig`. Closes #727 ## Todo + [x] Add tests which expose...
[HPC SDK](https://developer.nvidia.com/hpc-sdk) packages the curand headers in a separate math include directory, as of CMake 3.20. This is not added to the include path, so `curand_kernel.h` is not found at...
When scattering we currently read coalesced, and write scattered. Performance of the scatter may be improved it we read scattered and write coalesced, although the logic for doing that is...
We should introduce a nice convenient way of tracing the performance of FLAME GPU as commits progress. Both for the examples suite (although changing behaviours would lead to loss of...
As RTC / python support is going to require it's own test suite, being able to run all tests with a single command (or visual studio project) is probably worthwhile....
CMake is not correctly setting the output location for the static libraries created for googletest and tinyxml2 correctly. `libgtest.a` and `libtinyxml2.a` are being output into `lib/` rather than `lib/Release` for...
CINECA hackathon exposed that the loop inside [`Curve::getVariable(const VariableHash variable_hash)`](https://github.com/FLAMEGPU/FLAMEGPU2/blob/eb03a165c93c78fd1c5309b69181edb8c7296efe/include/flamegpu/runtime/cuRVE/curve.h#L753) has a significant impact on performance for the non-rtc brute force model. Running ~163k agents on V100s. The default configuration...
Other than brute-force messaging, messages are sorted during post-processing (i.e. PBM construction for spatial, but this applies to bucket and array messaging too). When agents access these messages, performance is...
@ptheywood has been suggesting support HDF5 data import/export, especially for a standalone visualisation. This is an experimental consideration at this stage, this issue will track notes/progress. ## Licensing: HDF5 uses...
Useful for conflict resolution *during* message iteration, Currently using atomics, but this does result in non-determinism, but performs relatively well.