1387506511
try printing out gpu timesteps
...
this seems to just print all 0 on my laptop.
maybe it'll work better on a newer GPU.
following the example in Embark's rust-gpu:
runners/wgpu/src/compute.rs
2022-09-26 21:33:38 -07:00
6d1fb5d614
stim: fix Sinusoid tests
2022-09-25 18:05:48 -07:00
d7364fe682
region: add a WedgeZ
primitive
...
later i use this to Intersect a torus,
thereby creating a torus which only sweeps out one particular arc angle.
2022-09-13 00:48:32 -07:00
ea3ea63488
ColorTermRenderer: print the measurement name, not just the value
2022-09-01 21:44:38 -07:00
e868f493fb
region: add a Rotate
operation
2022-09-01 21:39:11 -07:00
216a5d8d76
region: ElongatedTorus: fix accidental doubling of length
2022-09-01 21:38:44 -07:00
f737a4c916
region: add an ElongatedTorus type
...
this is needed for when we want to couple some cores,
but require a narrower space to do so in.
2022-09-01 18:39:32 -07:00
ea07a8d5a6
sim: spirv: tests: cleanup unused imports
2022-08-30 15:43:30 -07:00
ff1342ff8a
sim: spirv: get the ray_propagation
test working
2022-08-30 15:25:57 -07:00
a45d27a2e9
spirv: test: prototype a ray_propagation test
...
it needs some more work to be useful
2022-08-28 02:02:06 -07:00
538db399a9
Stimulus: Sinusoid: remove the amp
component
2022-08-28 02:01:33 -07:00
769c90cf9e
stim: fix issue where Exp would cause NaNs for very negative t
2022-08-27 01:31:06 -07:00
cc1bdba280
Stimulus: leave a TODO for what to do about Exp & NaN/Inf
2022-08-25 15:32:13 -07:00
1cfef7cac6
stimulus: remove unused Stimulus
impl for RegionGated
2022-08-24 15:49:46 -07:00
2c68a53668
rename StimExt
to TimeVaryingExt
2022-08-24 15:44:12 -07:00
a2ee85d03f
stim: remove the unused Stimulus impl for Shifted
2022-08-24 15:42:37 -07:00
7f089bad45
stim: break apart into smaller modules
2022-08-24 15:27:40 -07:00
488d0fe62a
sim: spirv: remove apply_stimulus
test-only function
2022-08-24 01:51:32 -07:00
dd6f598e44
spirv tests: reorganize
2022-08-24 01:42:10 -07:00
4168b9e4c6
spirv: uncomment some old tests
...
one of them fails, but it fails 600+ steps into the test.
not sure how problematic this really is, yet.
2022-08-24 00:16:26 -07:00
e94dc49d0f
spirv test: mb_ferromagnet tests both e and h fields
...
we have to lessen the bounds a little bit.
no surprise: *not testing h* caused them to differ substantially.
i'd like to test more strenuously, but that would likely require
enabling R64 on the gpu side.
2022-08-24 00:04:20 -07:00
ab6496d5f6
backfill Vec2::rotate tests
2022-08-23 23:49:43 -07:00
b16316b75b
Driver: remove the unecessary Box
ing of RenderedStimulus
...
no obvious perf diff one way or the other, yet
2022-08-23 23:33:22 -07:00
4525bbde56
remove unused lazy_static
dependency
2022-08-23 23:29:47 -07:00
a51c3a1d14
sim: remove the unused StaticSim
type alias
2022-08-23 23:25:08 -07:00
8e48414d68
SimMeta: make the fields private
2022-08-23 23:23:49 -07:00
17446cdc6b
sim: remove unused AbstractSim::to_static
method
2022-08-23 23:13:15 -07:00
2af754bf29
sim/legacy: remove
...
that crazy tangle of legacy code evolved over 2+
years into the beast it is today.
but it has no relevance in the GPU-enabled world of today,
particularly one with more rigid Material abstractions.
good things come to an end. i'll try not to be too sentimental.
2022-08-23 23:01:29 -07:00
1891a72df3
spirv tests: no longer test against the legacy simulation:
...
test the CPU impl against the GPU impl.
it's a different class of test. but it provides some value yet and most
importantly, allows us to strip out the legacy simulation code without
losing *too much* test coverage.
2022-08-23 20:05:30 -07:00
e7ed46bb89
spirv tests: clean up the code layout a bit
2022-08-23 19:23:02 -07:00
c8735ce164
legacy: mark port status of remaining tests
2022-08-23 19:15:44 -07:00
397eaa5a24
sim: port conductor-related legacy tests to spirv
2022-08-23 19:09:32 -07:00
4024ee3316
sim: port legacy test to spirv: sane_boundary_conditions
2022-08-23 16:56:35 -07:00
5c7ce8437a
sim: port legacy energy_conservation_over_time
test to spirv
...
the original had a suspect dimension (it was apparently applying a
stimulus *outside* the simulation). i've rectified that, but left a note
to ensure this doesn't happen again...
2022-08-23 16:38:24 -07:00
dcd7079c5f
meas: Energy: allow non-meas code to query a simulation's energy
...
this is especially useful in test
2022-08-23 16:37:31 -07:00
f47c713e0e
stimulus: add a structure to sum together two stimuli of different types
...
this may resemble the original List stuff. only it's more specialized,
for only summing two of a thing.
2022-08-23 16:35:29 -07:00
3326acd125
Driver: update TODOs
2022-08-23 01:27:03 -07:00
3c30ac33aa
Driver: replace the other ThreadPool with a JobPool
...
as a bonus we can remove the threadpool dep :-)
2022-08-23 00:03:58 -07:00
7586bc8ff2
JobPool: implement buffering
...
this does give a little perf bump
2022-08-22 23:38:23 -07:00
a15af4d3a3
JobPool: remove outdated TODO
2022-08-22 20:13:35 -07:00
31726abb99
Driver: stimulus: use our own JobPool abstraction
...
this one leverages crossbeam.
it does appear to schedule jobs faster than the rust-threadpool.
curiously, the `recv` impl seems to be slower.
maybe that's because of the (inadvertent, unecessary) switch from mpsc
to mppc. worth trying to just insert a buffer.
2022-08-22 20:09:59 -07:00
eb95367fa5
JobPool: don't parameterize the type over its Worker
...
the Worker is often hard to specify concretely at the use site.
2022-08-22 20:05:41 -07:00
284b7368ef
add a JobPool type to better abstract over repeat asynchronous work
2022-08-22 19:30:07 -07:00
b160823a81
fix broken cargo build --all
2022-08-22 14:17:51 -07:00
7bce17f56b
driver: more precisely measure stimuli "prep"
...
i'm beginning to think the `threadpool` library is actually just kinda
slow.
2022-08-22 02:32:58 -07:00
4df6e19abe
Driver: slightly better instrumentation
2022-08-22 02:17:59 -07:00
532dd26e22
driver: optimization: don't memcopy the RenderedStimulus across threads
2022-08-22 01:49:35 -07:00
232e0fdafb
Stimulus: replace Gated
with a type alias
2022-08-22 01:36:47 -07:00
b0bedd1efa
Driver: fix a bug where we might step more than the user wanted
2022-08-22 01:23:41 -07:00
82af4b100d
driver: optimize the step_multiple
step count calculation
...
this was using a stupid amount of compute.
we still have about 7% time unaccounted for. down from 12-15%.
2022-08-22 01:07:27 -07:00