Ivan Boldyrev
343b58f65f
Merge branch 'master' into feat/VM-454-rkyv-json-value
2024-02-13 14:11:53 +01:00
Ivan Boldyrev
0d53f2bab1
feat(execution-engine): Rc-based JSON value ( #813 )
...
Use custom JSON value type with Rc inside. It cannot be edited, but producing new values based on child element is very cheap.
This new type is used exclusively in AquaVM internals. Interface APIs use serde_json's Value or JSON strings, as before.
---------
Co-authored-by: raftedproc <71657594+raftedproc@users.noreply.github.com>
2024-02-13 19:11:21 +07:00
Ivan Boldyrev
7b92d0a6c7
More formatting
2024-02-08 21:32:19 +01:00
Ivan Boldyrev
f6478c708f
Fix signatures tests
2024-02-08 20:53:49 +01:00
Ivan Boldyrev
84c2b9154a
Improve formatting
2024-02-08 20:53:40 +01:00
Ivan Boldyrev
839389bc64
Update MacOS M1 benchmarks
2024-02-08 18:10:38 +01:00
Ivan Boldyrev
09de5f8dd2
Serialize JValue objects with AsVec
...
It makes it more efficient and avoid buggy rkyv BTree serialization/validation.
2024-02-08 17:47:37 +01:00
Ivan Boldyrev
1cf0b70b06
Add gen-bench-data Cargo.toml
...
It fixes sudden failed compilation because of 3rd party library changes.
2024-02-08 14:53:53 +01:00
Ivan Boldyrev
a825bc96b5
Fix tests
2024-02-08 14:40:40 +01:00
Ivan Boldyrev
57a75bbe4c
From<JValue> for serde_json::Value
2024-02-08 14:40:09 +01:00
Ivan Boldyrev
78c4576862
Get rid of RawValue
...
It is not needed anymore
2024-02-07 17:30:46 +01:00
Ivan Boldyrev
e0e69f9afe
Add air_interpreter_data::Number
2024-02-07 17:06:04 +01:00
Ivan Boldyrev
41c1766e7a
Number type
2024-02-07 14:33:14 +01:00
Ivan Boldyrev
0a51913687
Update MacOS M1 benchmarks
2024-02-06 20:59:22 +01:00
Ivan Boldyrev
f7c8bc8c5b
Store RawValue as JValue
2024-02-06 20:58:43 +01:00
Ivan Boldyrev
63c8e3336a
rkyv JValue
2024-02-06 20:42:44 +01:00
Ivan Boldyrev
9df2b39088
Rename some methods
...
After removing Cows, their names make no sense.
2024-02-06 13:57:16 +01:00
Ivan Boldyrev
3da2da1046
Reconsider docstrings
2024-02-05 18:47:25 +01:00
Ivan Boldyrev
d1c6dd50bd
Do not run doctests with sanitizers
2024-02-05 18:15:34 +01:00
Ivan Boldyrev
0a37f7c547
Fix tests and clippy
2024-02-05 17:37:15 +01:00
Ivan Boldyrev
41e383fd5a
Merge branch 'master' into feat/VM-422-rc-based-json-value
2024-02-05 20:10:35 +04:00
Ivan Boldyrev
cc3018ad6b
Introduce "preserve_order" feature flag
2024-02-05 16:53:30 +01:00
Ivan Boldyrev
432af749f0
Add license comments
2024-02-05 15:53:06 +01:00
raftedproc
f887ddddbc
chore(performance,test): periodic bench results sync ( #812 )
2024-02-05 10:58:02 +03:00
Ivan Boldyrev
c6b7a7410f
Store JsonString in certain AST nodes
...
Constant strings that are converted to JSON values are stored as
`JsonStrings`. It saves on memory allocations.
2024-02-04 20:09:19 +01:00
Ivan Boldyrev
bfe1485fa2
Update MacOS M1 benches
2024-02-04 20:02:51 +01:00
Ivan Boldyrev
85be1e74d2
Merge branch 'master' into feat/VM-422-rc-based-json-value
2024-02-04 15:35:32 +01:00
Ivan Boldyrev
f28fb5bc69
value serialization/deserialization tests
2024-02-04 15:33:53 +01:00
Ivan Boldyrev
9d4094dc99
chore(performance): use fluence-blake3
with wasm32 SIMD support ( #806 )
...
* chore(preformance): use fluence-blake3
Enable wasm32 SIMD on the appropriate target. It gives a noticeable performance improvement.
The smaller memory size on benchmarks is due to unrelated stack size reduction.
2024-02-04 21:27:49 +07:00
Ivan Boldyrev
6d5b342547
Make fmt and clippy happy
2024-02-01 21:34:36 +01:00
Ivan Boldyrev
a7dcd06946
Remove JValuable::into_jvalue
...
After introducing cheap-to-clone JValue and removing Cows, it is same as
`JValuable::as_jvalue`.
2024-02-01 21:34:36 +01:00
Ivan Boldyrev
e069ac9c17
Update Linux x64 benchmarks
...
The stack size if 10mb for convenience.
2024-02-01 19:26:23 +03:00
Ivan Boldyrev
ad1b074edd
Update MacOS ARM benchmark
...
It is run with 10Mb stack, not 8Mb stack
2024-02-01 17:00:43 +01:00
Ivan Boldyrev
1fc6323be3
Fix tests
2024-02-01 14:29:00 +01:00
Ivan Boldyrev
637fbd5b0f
feat(cli): use eyre in air-cli ( #808 )
...
Instead of `anyhow`, use `eyre` to reduce number of deps. The `eyre`
crate is already used in `avm-server` and `fluence-keypair`.
2024-02-01 14:29:00 +01:00
raftedproc
2981168685
feat(performance): reduced stack size ( #799 )
2024-02-01 14:29:00 +01:00
Ivan Boldyrev
f1cfa9e069
Test compilation fixes
2024-02-01 14:29:00 +01:00
Ivan Boldyrev
b3ccec1d04
Various refactorings and improvements
2024-02-01 14:29:00 +01:00
Ivan Boldyrev
47420723bc
feat(cli): use eyre in air-cli ( #808 )
...
Instead of `anyhow`, use `eyre` to reduce number of deps. The `eyre`
crate is already used in `avm-server` and `fluence-keypair`.
2024-01-31 00:43:47 +07:00
Ivan Boldyrev
47196b5040
Update Linux x64 benchmarks
2024-01-29 20:40:52 +03:00
Ivan Boldyrev
628d233d32
Update MacOS M1 benches
2024-01-29 17:39:47 +01:00
Ivan Boldyrev
c74cdd99f4
Sketch of Rc JSON value
2024-01-29 17:13:17 +01:00
raftedproc
9bad40b3d7
feat(performance): reduced stack size ( #799 )
2024-01-28 16:24:12 +03:00
Ivan Boldyrev
ba1686f835
Rc-based JSON value
2024-01-26 20:14:27 +01:00
Ivan Boldyrev
02d5a4d2d6
Initial version of custom JSON value
2024-01-26 18:45:12 +01:00
renovate[bot]
de562b0488
chore(deps): update rust crate eyre to 0.6.11 ( #803 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-26 00:49:42 +07:00
Anatolios Laskaris
5c91bb86c4
chore: Remove redundant input ( #807 )
...
Fix
2024-01-25 17:22:15 +02:00
fluencebot
d0ca93c231
chore: release master ( #797 )
...
* chore: release master
* chore: Bump air-interpreter and air-near-contract version to 0.59.0
avm-client-v0.59.0
air-testing-framework-v0.8.4
avm-server-v0.35.0
air-interpreter-interface-v0.17.2
avm-interface-v0.31.2
air-interpreter-v0.59.0
aquavm-air-cli-v0.6.3
air-v0.59.0
avm-data-store-v0.7.7
air-test-utils-v0.15.1
2024-01-24 20:41:11 +07:00
Valery Antopol
3375c7a3b6
feat(deps)!: update to marine runtime with memory limits and wasmtime ( #768 )
2024-01-24 17:16:33 +04:00
raftedproc
6c1cb289cc
fix(performance): avoiding particle data printout in errors
2024-01-23 11:50:00 +03:00