-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pyflamegpu comparison #9
base: FLAMEGPU2
Are you sure you want to change the base?
Conversation
Added RTC init time to outputs. Requires a means to disable RTC cache, JitifyCache is not currently exposed via SWIG.
These methods have now been exposed to Python in FLAMEGPU master branch
Visualisation appears the same between FLAMEGPU implementations.
Py 3.8, CUDA 12.0, Mavericks (using FLAMEGPU/FLAMEGPU2#1153 branch, as it requires a fix for Schelling)
I've stripped out the repeated Could setup alt bench script which forces RTC to use cache to show the difference. |
Trying to implement repast schelling in the flamegpu style isn't working. It's not well suited to agents communicating over distance without moving. Hence I need to rewrite the model to instead have static cell agents, and mobile bidding agents. The latter will move to bid for the cells, but they will only hold a state/team. |
Runs to completion on Waimu, but need to decide how to validate it.
+minor tweaks to pyfgpu boids
Remove space and store xy pos as an agent variable Init and print timing info only at rank 0 Write output csv to split log file
Not julia script does not log time of first run where model is compiled.
not doing mpi - treating as a separate thing. |
using Random | ||
|
||
# Does not use @bencmark, due to jobs being OOM killed for long-running models, with a higher maximum runtime to allow the required repetitions. | ||
# Does not use @benchmark, due to jobs being OOM killed for long-running models, with a higher maximum runtime to allow the required repetitions. | ||
# enabling the gc between samples did not resolve this BenchmarkTools.DEFAULT_PARAMETERS.gcsample = false | ||
# Runs each model SAMPLE_COUNT + 1 times, discarding hte first timing (which includes compilation) | ||
# Runs each model SAMPLE_COUNT + 1 times, discarding the first timing (which includes compilation) | ||
SAMPLE_COUNT = 10 | ||
SEED = 12 | ||
|
||
# Boids | ||
Random.seed!(SEED) | ||
times = [] | ||
for i in 0:SAMPLE_COUNT |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the changes to this file can be removed when #10 is merged
mpi versionisHappy = (float(same_type_neighbours) / (same_type_neighbours + diff_type_neighbours)) > THRESHOLD