Commit Graph

23 Commits

Author SHA1 Message Date
colin 19ff08ada8 app: buffer_proto5: increase fps by setting steps_per_stim
the bottleneck seems mostly to be transferring data CPU <-> GPU.
boosting to 200 steps per stim gets us like 50 fps, but causes serious
CPU-side lag.
2022-09-01 17:41:13 -07:00
colin 0a1452cb5c buffer_proto5: parallelize a bit more 2022-08-31 02:55:40 -07:00
colin 184997a701 app: buffer_proto5: parallelize the geometry searches 2022-08-31 02:40:47 -07:00
colin 538db399a9 Stimulus: Sinusoid: remove the `amp` component 2022-08-28 02:01:33 -07:00
colin 2c68a53668 rename `StimExt` to `TimeVaryingExt` 2022-08-24 15:44:12 -07:00
colin b160823a81 fix broken `cargo build --all` 2022-08-22 14:17:51 -07:00
colin 24b82037b4 Stimulus: parameterize over R.
this saves us from a `mem::transmute` in the sim code to get
`Fields<R>`.
2022-08-22 00:37:34 -07:00
colin ad5f064584 stim: Simplify the Exp implementation. it's no longer a Stimulus 2022-08-19 04:14:33 -07:00
colin ffda00b796 stim: convert CurlStimulus to a CurlVectorField and use ModulatedVectorField
this opens the door to caching the vector field stuff.
2022-08-18 20:47:36 -07:00
colin 6750feef8d stim: remove `TimeVarying3`
`TimeVarying`(1) is enough for what we want.
2022-08-18 15:51:54 -07:00
colin e141047bec Driver: simplify the StimuliAdapter
it was basically dead code.
2022-08-12 14:42:56 -07:00
colin 084c5bc342 Region: remove `Clone` from the trait, and also parameterize everything
i didn't necessarily *want* to parameterize it all,
but it turned out to be easier to do that than to force all users to
workaround the lack of Clone.
2022-08-12 01:42:19 -07:00
colin d5fbb4e9b2 Region: remove the Serialization requirement 2022-08-12 00:57:01 -07:00
colin 1771973c6d CurlStimulus: take `axis` and `center` directly from the Region
by taking more from the region, we'll be able to reuse common code
and also make this more testable
2022-08-09 22:10:16 -07:00
colin 9e35b29087 move `util/` out of `coremem` and into its only user: `buffer_proto5` 2022-07-28 15:30:50 -07:00
colin 917a3d3c9d buffer_proto5: silence some warnings 2022-07-28 02:00:51 -07:00
colin fe47eb09f8 driver: rename `new_with_state` -> `new` 2022-07-28 01:59:11 -07:00
colin 7a6bbf06a5 driver: remove `new_spirv` method 2022-07-28 01:52:09 -07:00
colin 47e11474d2 parameterize SpirvSim over R: Real 2022-07-25 14:49:32 -07:00
colin 67872de16f clean up some unused code/imports 2022-07-23 16:27:43 -07:00
colin f8fccd957a coremem_types: IsomorphicConductor, AnisomorphicConductor are now used by both spirv and cpu impls 2022-07-19 02:08:22 -07:00
colin 193e17e2c8 buffer_proto5: auto-create the output directories (and fix them to out/applications) 2022-07-17 13:03:38 -07:00
colin 99e7306ae9 make all the examples be their own binary crates
this achieves a few things:
- trivial way to get these shipped as the default nix package
- better dependency management
- ability to split large applications into multiple files

the README probably needs some updating.
2022-07-06 01:30:31 -07:00