adrien
0257ee5d21
Added Quantity that will be both Scalar and Vector, using only @Vector
...
I did some benchmark, and @Vector(1, type) is just as fast as type for
float and around 40% slower for int.
But the traide off is ok for me, because for @Vector(>1, type), we are
between 2 and 32x faster! And I dont think single value int will be use
for high performance computing, so I am ok with how simple it make
everything.
Because now I dont have to one struct that use @Vector and one that use
just type, I can just use one. Making it even easier to integrate GPU
later. I will even be able to have a single place in my code with a + -
* and / basically. A single function for all, so I only need to optimize
that one.
2026-04-25 22:36:48 +02:00
adrien
7fc7193206
FLush
2026-04-25 18:57:38 +02:00
adrien
3a4783cfa1
Benchmark SIMD vs Native
2026-04-25 18:47:13 +02:00
adrien
80cdcd134e
Added some function to benchmark
2026-04-24 23:50:16 +02:00
adrien
c2675f5117
Added imperial to README
0.1.1
2026-04-23 00:28:49 +02:00
adrien
f26f6086ca
Added Imperial unit scales
2026-04-23 00:14:57 +02:00
adrien
a91a509368
Added GNU License
2026-04-23 00:00:32 +02:00
adrien
5e7b7c5302
Added some constants
2026-04-22 23:53:43 +02:00
adrien
719679aabc
Updated README + Renamed mulBy and divBy to mul div
2026-04-22 23:33:58 +02:00
adrien
2c94df7f4a
Added overflaw security + made benchmark work (set to max)
2026-04-22 23:11:42 +02:00
adrien
5efa42c2e1
Made possible to use comptime float, int and T for Scalar operation of Vector
2026-04-22 22:34:46 +02:00
adrien
1129acc542
Same for Scalar
2026-04-22 22:10:57 +02:00
adrien
9544bb584a
Removed s and d in Vector (duplicate of dims and scales)
2026-04-22 22:10:04 +02:00
adrien
6c50a01d6e
Removed ugly Scalar_
2026-04-22 22:08:05 +02:00
adrien
e4d55e36ab
Added the posibility to use comptime_float, int and T for Scalar operation
2026-04-22 16:45:02 +02:00
adrien
82bdb96746
Changed how Scalar is generated to use Dimensions.ArgOpts and Scales.ArgOpts
2026-04-22 16:31:07 +02:00
adrien
a2d46e3f55
Added sqrt to Scalar and Vector
2026-04-22 15:43:17 +02:00
adrien
0dd9e02f59
Added abs, pow and product operations
2026-04-22 14:50:21 +02:00
adrien
c4e462add3
Added dot and cross function for Vector
2026-04-22 12:32:10 +02:00
adrien
4c910319d5
Added comparison operation to Scalar and Vector
2026-04-22 12:26:17 +02:00
adrien
86841318f2
Added some doc comments
2026-04-22 10:58:14 +02:00
adrien
ec05b60fc3
Replaced Scales.min to helper.finerScales
2026-04-22 10:31:04 +02:00
adrien
49b56bda91
Added int nanometer example in README
0.1.0
2026-04-22 01:20:09 +02:00
adrien
76c69448de
Fixed benchmark with removed scale
2026-04-22 01:14:38 +02:00
adrien
cb3c41cf4c
Better README
2026-04-22 01:07:06 +02:00
adrien
5f42a8c107
Added Dimless to Base
2026-04-22 01:06:52 +02:00
adrien
1719b0de8b
Removed scale (just use mulBy + dimless) + added inline to vector fn
2026-04-22 01:05:33 +02:00
adrien
84d0698878
Removed ztracy dep
2026-04-22 00:31:37 +02:00
adrien
11a741f72c
Removed useless code
2026-04-22 00:19:07 +02:00
adrien
cc39c1a6f4
Same for all bench, nbo more sink
2026-04-22 00:17:58 +02:00
adrien
d96a1ac4bc
Replaced a sing with std.mem.doNotOptimizeAway
2026-04-22 00:12:38 +02:00
adrien
fb922e3d5c
Added tracy as dependencie
2026-04-22 00:00:18 +02:00
adrien
1fd86a5807
Moved benchmarks into a seperate file and exe
2026-04-21 23:52:13 +02:00
adrien
a518a86fb2
Changed from using format to formatNumber in Scalar and Vector to use precision, fill, width, ect
2026-04-21 22:21:19 +02:00
adrien
8a22788a2e
Renamed a test
2026-04-21 19:41:02 +02:00
adrien
b9647e0426
Updated build.zig to expose a module
2026-04-21 19:32:59 +02:00
adrien
cb51afe79c
Update zig name
2026-04-21 19:28:32 +02:00
adrien
732bf11005
Update zig.zon
2026-04-21 19:27:10 +02:00
adrien
46380a95da
Renamed Quantity to Scalar and QuantityVec to Vector
2026-04-21 19:18:45 +02:00
adrien
aa46cef978
Deleted tmp file
2026-04-21 18:36:31 +02:00
adrien
01c5b50b95
Added cross type overhead benchmark
2026-04-21 18:36:23 +02:00
adrien
bbab41008f
Passed some Scales stuff to comptime
2026-04-21 18:18:12 +02:00
adrien
aa09054c4d
Added fast path to mulBy too
2026-04-21 18:16:37 +02:00
adrien
b02665fe89
Prevent convertion if unecessary at comptime for Quantity operations
2026-04-21 17:55:33 +02:00
adrien
a16bbedbd8
Changed Quantity fn to be inline
2026-04-21 17:49:53 +02:00
adrien
7b038dd2a5
Added some explicit comptime to Quantity
2026-04-21 17:41:37 +02:00
adrien
998404d82a
Switched EVERYTHING in Scales and Dimensions to comptime
2026-04-21 17:31:22 +02:00
AdrienBouvais
1f6b794ab6
Better benchmark print
2026-04-21 15:55:13 +02:00
AdrienBouvais
a5cda3da62
Added a Quantity vs Native benchmark
2026-04-21 15:52:35 +02:00
AdrienBouvais
664e3aac8a
Better README
2026-04-21 15:44:31 +02:00