Commit Graph
100 Commits
Author SHA1 Message Date
mulimoen 296dc98e01 Add progressbar to single/multi system 2021-08-17 11:48:52 +00:00
mulimoen 2d473b8255 Clippy lints 2021-08-16 20:33:57 +00:00
mulimoen 4d44b4a74a Fix ouptut for single/multi backend 2021-08-08 20:28:37 +00:00
mulimoen 0a5647df3a Compilable state 2021-08-07 17:30:00 +00:00
mulimoen 4319e403a5 Remove option for number of threads 2021-08-06 17:24:59 +00:00
mulimoen 1e363c0508 Reimplement interpolation for distributed system 2021-08-06 17:24:15 +00:00
mulimoen b142bb63e4 Add workbuffer for boundaries 2021-08-06 15:01:48 +00:00
mulimoen 26159d5ffb Introduce precursor system 2021-08-05 19:28:14 +00:00
mulimoen 95897777d6 Apply SAT on boundaries 2021-08-04 18:30:15 +00:00
mulimoen b11f3c9abb Improve channel distribution 2021-08-03 17:18:09 +00:00
mulimoen 35b8af8b2d Partial implementation 2021-08-03 16:18:20 +02:00
mulimoen 3edd18c4fd Use core_simd over packed_simd 2021-07-27 18:32:22 +00:00
mulimoen e25ee9c74a Prefer clone_from over assign 2021-07-15 17:25:30 +02:00
mulimoen e4ea5b081b Update evalexpr dependency 2021-07-06 22:10:33 +02:00
mulimoen b9212a4ec3 Add gresho vortex example 2021-07-05 21:51:08 +02:00
mulimoen 6c6e11c1e3 Move input validation of expressions to evalexpr 2021-07-01 18:47:56 +02:00
mulimoen 891cee3160 Move evalexpr down one level 2021-07-01 18:37:22 +02:00
mulimoen c7eab96845 Fix forgotten GAMMA in benches 2021-07-01 18:23:32 +02:00
mulimoen 912119d093 Add smooth periodic example 2021-06-30 20:33:22 +02:00
mulimoen b64bace750 Move json config to separate file 2021-06-30 18:49:37 +02:00
mulimoen 3ceeeb8ca1 Make GAMMA into a static 2021-06-30 18:20:44 +02:00
mulimoen 94e49ff9b5 Simplify vortex using Evaluator trait 2021-06-30 17:35:05 +02:00
mulimoen 92ad7bc580 Allow mutable contexts for evalexpr strings
These may be slow when used as boundary conditions, but produces results
consistent with the special "vortex" type for the example.
2021-06-29 23:12:48 +02:00
mulimoen ea90bb8655 Add example using evalexpr 2021-06-29 21:34:59 +02:00
mulimoen f6f70fe79a Fix bug with u,v->rhou,rhov conversion 2021-06-29 21:31:40 +02:00
mulimoen 0878e75b8d Fixup test 2021-06-29 19:51:09 +02:00
mulimoen 2bad8a1b71 Reenable error output 2021-06-29 19:45:20 +02:00
mulimoen 1c884fe09d Add 100x100 grid config on single grid 2021-06-29 18:36:39 +02:00
mulimoen 8873f458b4 useless conversion 2021-06-29 18:07:26 +02:00
mulimoen b5360af6de Add Evaluator for defining IC/BC in json config 2021-06-29 17:55:19 +02:00
mulimoen 300f6a34e5 Fix interactive eulerplot 2021-06-27 12:34:59 +02:00
mulimoen 091076a9ad Neon supports fma 2021-04-18 23:20:08 +02:00
mulimoen 2ee55de8c8 Split into components for subcomputation 2021-03-30 22:19:04 +02:00
mulimoen 8051954c29 Update convergence test after trait rework 2021-03-30 19:09:11 +02:00
mulimoen 5f7d38dd55 Introduce Diff type for euler 2021-03-30 18:46:28 +02:00
mulimoen 27abaebc2c Move vortex stuff to separate file 2021-03-30 18:29:23 +02:00
mulimoen 57c897ec94 Upgrade arrayvec to use const-generics 2021-03-27 11:46:02 +01:00
mulimoen 22a3464326 Add euler iterators 2021-03-26 19:40:04 +01:00
mulimoen 9e2ce3ae24 Add Metrics iterator 2021-03-26 16:27:45 +01:00
mulimoen 75338698a4 Conditionally use fma 2021-03-26 15:57:15 +01:00
mulimoen 7ab6f311c1 Replace hypot with cheaper impl 2021-03-26 15:52:55 +01:00
mulimoen 52c21dbbe9 Add boolean for switching serial/parallel execution 2021-03-26 00:00:42 +01:00
mulimoen a33e1d37ba Document what compiler is doing for diffxi 2021-03-25 22:39:00 +01:00
mulimoen 76f5291131 Elide bounds check in diffxi
array_windows.skip did not elide bounds checks as it should. If
the slice is instead offset by the skipped amount, we have the
same behavour, but aids the compiler enough.
The two changed lines allows SIMD optimisations, giving an
impressive reduction in instructions by two thirds in the
benchmark.
2021-03-25 17:23:01 +01:00
mulimoen a81ba0365d Use core over std in no_std dep 2021-03-25 17:18:25 +01:00
mulimoen 9b5192b357 Add documentation for utilities 2021-03-23 19:37:27 +01:00
mulimoen ce2e8f17ec Move FastFloat to separate crate (archival) 2021-03-23 19:36:44 +01:00
mulimoen 4ae5c02bb1 Replace FastFloat with mul_add 2021-03-23 19:21:38 +01:00
mulimoen df05c06270 Add no_std and forbid(unsafe) in utils 2021-03-23 19:12:09 +01:00
mulimoen 00fcdf1031 Replace StructOpt with argh for comp.time+space 2021-03-22 20:56:16 +01:00
mulimoen ff9a477b67 Remove non-global Threadpool 2021-03-22 19:28:01 +01:00
mulimoen 7aadda3de9 Move integrate to separate crate 2021-03-22 17:49:35 +01:00
mulimoen be1330ec02 Add constrmatrix as separate crate 2021-03-22 16:24:32 +01:00
mulimoen 502679c9a1 Move Float to separate crate 2021-03-22 16:17:27 +01:00
mulimoen be984fbdac Bump sprs to 0.10 2021-03-18 23:27:03 +01:00
mulimoen 550b43b4cd Bump ndarray 2021-03-16 19:03:35 +01:00
mulimoen f098981d3e Update email 2021-03-16 19:00:24 +01:00
mulimoen 8383517ba3 ensure slice can be cast to Matrix 2021-03-15 20:18:19 +01:00
mulimoen 17ab18e953 zero-pad diffxi kernel 2021-03-15 20:07:41 +01:00
mulimoen e43e71a4d8 Make flip_XX impl on Matrix 2021-03-15 19:31:41 +01:00
mulimoen 6fc045ae17 Replace transmute with cast 2021-02-12 19:02:13 +01:00
mulimoen 5d59a51bbe Add option to output information in JSON 2021-02-12 18:28:30 +01:00
mulimoen 743cca00e2 Revert hdf5 patch (TODO: add back info here) 2021-02-12 18:09:15 +01:00
mulimoen 78f0c9ed2c Update json5 crate to include location errors 2021-02-12 18:08:10 +01:00
mulimoen d11abff1c3 Add checkbox for gridlines 2021-02-12 17:16:36 +01:00
mulimoen dc94aa8e6b Merge branch 'feature/const_matrix'
Using constr generics improves performance of diffxi by about
15% without fast-float and to 30% with the fast-float flag
2021-02-10 21:25:08 +01:00
mulimoen a02c7daafc remove iterator inhibiting optimisation 2021-02-10 21:17:05 +01:00
mulimoen 02175d1734 use some unsafe... 2021-02-10 19:29:26 +01:00
mulimoen 8a6dc60edf remove some unsafe from simd 2021-02-10 19:02:48 +01:00
mulimoen 87c055f81e Add back simd column algo 2021-02-09 21:44:35 +01:00
mulimoen cf4d8f1e9b add Zero for constmatrix 2021-02-03 08:41:11 +01:00
mulimoen 7ec426b5a8 add more fast intrinsics 2021-02-03 08:31:33 +01:00
mulimoen 64a4e92dd2 specialise on contigous ny 2021-02-02 00:33:37 +01:00
mulimoen c709cf465e remove ndarray transmute 2021-02-02 00:12:03 +01:00
mulimoen 74d99a4a18 try ndarray transmute 2021-02-02 00:12:03 +01:00
mulimoen b15ea57e6d inline for perf 2021-02-02 00:12:03 +01:00
mulimoen 299b4f8083 ensure FastFloat flag works 2021-02-02 00:12:03 +01:00
mulimoen 6f7268bf33 use matrices everywhere 2021-02-02 00:12:02 +01:00
mulimoen 31ac46e386 move data structs into separate files 2021-02-02 00:12:02 +01:00
mulimoen f7f8a7ffff make flip const functions 2021-02-02 00:12:02 +01:00
mulimoen 1f3aa2c116 make core-intrinsics cfg'ed 2021-02-02 00:12:02 +01:00
mulimoen c73c6e7407 diff_op_col_naive_matrix 2021-02-02 00:12:02 +01:00
mulimoen c660354c3f Matrix for Upwind4 2021-02-02 00:12:02 +01:00
mulimoen 45e4d51513 remove a closure 2021-02-02 00:12:02 +01:00
mulimoen b0e1ec62f8 change order in matmul_into 2021-02-02 00:12:02 +01:00
mulimoen 481f2d607e remove a lot of unsafe, lost perf 2021-02-02 00:12:02 +01:00
mulimoen 00f3ba6a01 use split_at_mut 2021-02-02 00:12:02 +01:00
mulimoen db94caf2b2 change repr of Matrix 2021-02-02 00:12:02 +01:00
mulimoen c133557459 use Matrix in SBP diff 2021-02-02 00:12:02 +01:00
mulimoen 3c7cc4605a simplify traits 2021-02-02 00:12:02 +01:00
mulimoen f7c238f6a7 add blockend SBP8 2021-02-02 00:12:02 +01:00
mulimoen a7660281c8 add inline to remove magic fix 2021-02-02 00:12:02 +01:00
mulimoen 14fefe97ab add Matrix approach for SBP8 2021-02-02 00:12:02 +01:00
mulimoen 3d34f2e7a0 add fast-float feature 2021-02-02 00:12:02 +01:00
mulimoen 4c2daf5933 minor thingys 2021-02-02 00:12:02 +01:00
mulimoen db552af4ff add blockend with weird caveat 2021-02-02 00:12:02 +01:00
mulimoen bcda26a512 15% reductions in instr count 2021-02-02 00:12:02 +01:00
mulimoen 36293e75e6 10% instr reduction with fast_ intr 2021-02-02 00:12:02 +01:00
mulimoen 30c563c19d working d1 SBP4 2021-02-02 00:12:02 +01:00
mulimoen 94e8fb5b7c checkpoint 2021-02-02 00:12:02 +01:00