Commit Graph

32 Commits

Author SHA1 Message Date
2044397047 app: stacked_cores: prototype
the long term goal of this demo is to see if:
(a) we can get stronger coupling between two cores than with multi-core-inverter.
(b) we can get amplification by using a charge-pump like concept.
(c) we can construct a *working* multi-core-inverter from this.
2022-09-01 18:41:49 -07:00
184997a701 app: buffer_proto5: parallelize the geometry searches 2022-08-31 02:40:47 -07:00
ab6496d5f6 backfill Vec2::rotate tests 2022-08-23 23:49:43 -07:00
4525bbde56 remove unused lazy_static dependency 2022-08-23 23:29:47 -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
284b7368ef add a JobPool type to better abstract over repeat asynchronous work 2022-08-22 19:30:07 -07:00
198cc16f3f cross: compile tests with the fmt feature so we can use assert_eq 2022-08-17 21:06:23 -07:00
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
d5fbb4e9b2 Region: remove the Serialization requirement 2022-08-12 00:57:01 -07:00
c5e2713b51 remove unused enum_dispatch 2022-07-29 16:07:07 -07:00
45d2de29c6 rename 'coremem_types' -> 'coremem_cross' to better reflect its purpose 2022-07-28 15:40:23 -07:00
9e35b29087 move util/ out of coremem and into its only user: buffer_proto5 2022-07-28 15:30:50 -07:00
97c2813c9d coremem_types: hide Serialize/Deserialize behind a serde feature flag
- this flag is disabled in spirv_backend.
- spirv_backend currently errors in core::fmt stuff. may try hiding fmt
  behind a feature_flag.
2022-07-17 23:44:14 -07:00
253eb65f8f real: remove the remaining decorum dependencies 2022-07-17 18:46:25 -07:00
57273ed430 coremem_types: remove dead num dependency 2022-07-17 17:33:29 -07:00
9d102e0152 split real out into its own crate
this is a move toward reusing some of the coremem helper types in the
spirv backend.
2022-07-17 17:32:35 -07:00
a2d35782a1 lift the post-processing tools (viewer, csv, decimate) into their own crate
- these tools shouldn't need access to coremem internals.
- lifting them out reduces some dependencies in coremem-the-library.
- separation allows faster iteration in the coremem library while
  temporarily breaking the post-processing tools (specifically,
  those tools could take deps on a specific coremem version and thereby
  we split the update process into two, smaller steps).
2022-07-17 15:47:39 -07:00
b778acfd28 add a new crate where i'll explicitly simulate the inverter i hypothesize in an upcoming blog about this project 2022-07-15 17:13:41 -07:00
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
4dce151e9c remove spirv_backend_lib
this was a hack from earlier where we needed a different lib types
based on whethere we were targeting the native host or the spirv
backend.

at some point we no longer needed different lib types. so the _lib piece
is unnecessary.
2022-07-06 00:26:54 -07:00
de7da0540d fix up the builder so that this works as a nix expression 2022-07-05 23:01:27 -07:00
5b99d30cda restructure this multi-crate project to use Cargo's "workspace" feature
this solves an issue in the Nix build, where managing multiple
Cargo.lock files is otherwise tricky. it causes (or fails to fix?) an adjacent issue where
the spirv builder doesn't seem to have everything it needs vendored.
2022-07-05 17:34:21 -07:00
d3cd12aa47 split the spirv builder out of the runtime spirv executable
this means that we unconditionally build the spirv runner,
and hence it requires that the user setup the proper rustc toolchain,
etc. may want to hide this behind a feature flag.
2022-07-05 16:37:00 -07:00
1a0f7687db update typetag: 0.1 => 0.2 2022-07-04 04:30:00 -07:00
1acb4233ae runtime fix: update rust-toolchain and EmbarkStudios deps, switch from dylib => lib
this resolves the issue where Nix builds would segfault when trying to
initialize wgpu -- *possibly* because of multiple dynamically linked
versions of LLVM sitting in the mix (hence, dylib => lib).
2022-07-04 04:28:30 -07:00
fa4075818d update dependencies 2022-07-04 03:47:17 -07:00
92deaf6c8d Cargo: lock spirv deps & update the rest 2022-07-04 02:03:23 -07:00
46fdd79350 cargo update dependencies to their latest versions
serde, libc, naga
2022-01-27 23:04:58 -08:00
de003f3575 update remaining dependencies (i.e. libc) 2022-01-25 04:15:28 -08:00
d399d51895 update wgpu 0.9 => 0.12
there looks to be a 25% perf hit when running the 160x160x160 benchmark.
2022-01-25 04:11:24 -08:00
a997e01c48 update crossterm and lru dependencies 2022-01-25 03:19:01 -08:00
1e4560ce4c update rust-gpu dependencies and rustc version
also add the Cargo.lock files to version control, since the spirv stuff
is highly dependent on specific versions of dependencies.

TODO: update wgpu to 0.12
2022-01-25 03:10:29 -08:00