Francisco Geiman Thiesen
fda0e331df
Removing obsolete scripts. Serialization and parsing can be run with the unified_benchmark.sh and ablation with run_ablation_study.sh
2025-09-23 23:51:36 -06:00
Francisco Geiman Thiesen
93c569ccec
- Single script for ablation study, single script for benchmarking parsing and/or serialization.
...
- Simplified the twitter structure that is used in the benchmarks, it is not required to go over every field for the benchmark to be valid, what matters is being fair and letting the other libraries do the same amount of work.
2025-09-23 16:51:07 -06:00
Francisco Geiman Thiesen
06f36fe942
Adding template for and tweaking serialization to avoid string allocation.
2025-09-17 21:47:16 -06:00
Daniel Lemire
4b502b74cb
refreshing findings.
2025-09-09 22:30:09 -04:00
Francisco Geiman Thiesen
086e14f692
Adding examples from the slides
2025-09-06 15:18:47 +00:00
Francisco Geiman Thiesen
888e5214a2
Fixing unintended changes in the comments of the unified benchmark results
2025-09-06 03:22:36 +00:00
Francisco Geiman Thiesen
ddbeea7875
Updating results for apple silicon
2025-09-06 03:14:46 +00:00
Daniel Lemire
94fc4f33d3
adding x64 results ( #2429 )
...
* adding x64 results
* minor update
* trimming whitespace
* tweaks
---------
Co-authored-by: Daniel Lemire <dlemire@lemire.me >
2025-09-05 18:31:55 -04:00
Daniel Lemire
7619610136
another fix
2025-08-31 17:23:30 -04:00
Daniel Lemire
5b110a39fc
turing the array into a static array
2025-08-31 16:52:55 -04:00
Francisco Geiman Thiesen
a30a000a6d
Updating results now with all libraries parsing the whole CITM structure.
2025-08-31 16:53:54 +00:00
Francisco Geiman Thiesen
64d83437d1
Update CITM parsing on yyjson to extract everything (apples to apples comparison)
2025-08-31 16:44:56 +00:00
Francisco Geiman Thiesen
123fa94c9e
Removing unnecessary comments.
2025-08-31 16:33:02 +00:00
Francisco Geiman Thiesen
ba729689be
Updating results
2025-08-31 16:28:10 +00:00
Francisco Geiman Thiesen
3e25649e38
Saving current changes (simdjson now using consteval)
2025-08-31 15:32:40 +00:00
Francisco Geiman Thiesen
606b3e48e3
Updating benchmarking to include serde
2025-08-29 08:34:43 +00:00
Francisco Geiman Thiesen
156591caed
Clean-up
2025-08-26 19:37:19 +00:00
Francisco Geiman Thiesen
976a560d58
Adding a few snippets for each ablation variant.
2025-08-26 19:01:39 +00:00
Francisco Geiman Thiesen
b6af9f0c39
Tiny fixes
2025-08-26 17:56:17 +00:00
Francisco Geiman Thiesen
e61676f5f0
Saving current working ablation and unified benchmark logic
2025-08-26 14:48:08 +00:00
Francisco Geiman Thiesen
05db32637e
Adding unified benchmark to simplify measures later on.
2025-08-23 03:39:18 +00:00
Francisco Geiman Thiesen
f5c1134d1c
Merge branch 'master' into francisco/ablation_study
2025-08-21 03:00:15 +00:00
Daniel Lemire
056d66926a
Renames a few macros and extends slightly our basic builder ( #2422 )
...
* This PR renames a few macros and extends slightly our basic builder
* minor tuning
2025-08-20 09:01:58 -04:00
Daniel Lemire
b434a50681
doing more to discourage value_unsafe(); ( #2421 )
2025-08-19 16:10:38 -04:00
Daniel Lemire
e8ff2fa692
This is a small reorg of the new convert code so that we only expose 'simdjson::from' as experimental ( #2418 )
...
* This is a small reorg of the new convert code so that we only expose 'simdjson::from'.
This can be changed in a future release, but we don't want our users to start depending
on code that we might need to change.
* marking simdjson::from as experimental
* updating tests to match recent changes
2025-08-15 15:13:36 -04:00
Daniel Lemire
1ebf115b2b
improving the documentation of raw json access ( #2416 )
...
* improving the documentation of raw json access
* minor fix
* documentation update
* guarding for exceptions
* fixing exception issue
* fix test
* update.
* saving comments
* more technical fixes
* correcting path in ci test
---------
Co-authored-by: Daniel Lemire <dlemire@lemire.me >
2025-08-15 10:26:20 -04:00
Joshua Gawley
172fbe785d
Use std::string_view in parser.load function ( #2417 )
2025-08-15 10:26:03 -04:00
Daniel Lemire
a10f096af2
let us just say that it should not work
2025-08-14 11:49:42 -04:00
Daniel Lemire
a85e474360
documentation update
2025-08-14 09:33:11 -04:00
Daniel Lemire
05752d6c6f
Update ubuntu22-cxx20.yml
2025-08-13 21:17:41 -04:00
Joseph Olabisi
fb9a689dff
Adding DOM support for json path with wildcard ( #2346 )
...
* wip brute-force wildcard for json_path
* wip - bruteforce surface wildcard with result
* partially handle keys with wildcard
* wip - nested paths/pointers on wildcard results
* wip
* wip - handling child properties of wildcard result
* done - handling child properties of wildcard result
* fix key
* add support for wildcard for arrays
* handle array INCORRECT_TYPE
* rename at_path_new to at_path_with_wildcard
* add benchmark
* fix benchmark
* use memcmp
* minor improvements
* refactor to tail recursion
* nit
* approximately 30% improvement in runtime
* nit
* corrected logic
* nit
* cleanup
* add some initial tests
* cleanup 2
* modified: CMakeLists.txt
* cleanup
* cleanup
* cleanup
* cleanup
* restore examples/quickstart/CMakeLists.txt
* cleanup
* restore quickstart.cpp
* revert array-inl.h
* cleanup array-inl.h
* revert object-inl.h
* cleanup object-inl.h
* cleanup
* nit
* nit
* add test
* address some feedbacks
* address additional feedbacks (copilot)
* final changes based on feedback - reduce string allocations
* fix bug in object-inl.h
* fix logic for wildcards inside arrays
* add test for wildcard in nested array
* refactor and create util for getting key and json path
* minor error handling
* refactor process_json_path_of_child_element from recursion to loop in order to prevent stack overflow
* fix bug with array, add boundary check to get_next_key_and_json_path function
* add more tests
* fix boundary check and unnecessary string allocation
* minor changes
* fix
* fix jsonpathutil
* remove unneccessary string allocation
* some minor fixes
* documentation
* removing printout
* various fixes
* reorg of the CI test file
---------
Co-authored-by: Daniel Lemire <daniel@lemire.me >
2025-08-13 21:16:32 -04:00
Daniel Lemire
472f818fe5
trimming repeated code
2025-08-13 20:40:04 -04:00
Daniel Lemire
5c9c133632
improve how we pad strings. ( #2415 )
2025-08-13 18:41:14 -04:00
Daniel Lemire
faf921bc7e
introducing a thread-local parser and removing ranges ( #2412 )
...
* introducing a thread-local parser
* adding functionality to release the memory
* some more documentation.
* fixing build
* adding benchmarks for 'from'
* generalizing the code somewhat.
* adding tests, fixing the benchmark (now with arrays and streams), and a
minor update to document_stream
* adding missing files (I forgot to check them).
* We cannot use [[nodiscard]] without guarding it, it is C++17
* fixing the cmake
* marking it as experimental
* removing ranges support (it is too experimental)
* putting back documentation.
* guarding SIMDJSON_CONSTEVAL more carefully.
---------
Co-authored-by: Daniel Lemire <dlemire@lemire.me >
2025-08-13 18:08:25 -04:00
Francisco Geiman Thiesen
e1ba550f5c
Merge branch 'master' into francisco/ablation_study
2025-08-13 21:52:37 +00:00
Daniel Lemire
626eedc3d8
documentation update
2025-08-13 16:24:55 -04:00
Daniel Lemire
294aa64f94
Update bug_report.md
2025-08-13 15:01:53 -04:00
Daniel Lemire
397b40e574
more documentation tuning
2025-08-11 15:39:10 -04:00
Daniel Lemire
fdc93528d1
updating documentation.
2025-08-11 13:48:01 -04:00
Francisco Geiman Thiesen
3e00a431a0
Merge pull request #2406 from simdjson/fix-convert-ci-failures
...
Introducing simplified api with from/to adapters (thanks to @the-moisrex for driving this) and fixing all the CI errors.
2025-08-08 10:42:32 -07:00
Pavel Novikov
d3626c6a37
removed now unnecessary <utility> header, ( #2411 )
...
disabled copy ctor and assignment for `vector_with_small_buffer`
2025-08-08 08:39:28 -04:00
Daniel Lemire
686a1869c8
updating commit
2025-08-08 08:38:41 -04:00
Daniel Lemire
4c0f86db44
minor fixes
2025-08-07 23:59:30 -04:00
Daniel Lemire
6c4c934457
added a new test.
2025-08-07 18:11:44 -04:00
Daniel Lemire
fcae795042
minor fix
2025-08-07 16:05:24 -04:00
Daniel Lemire
b7c51156b9
Sped up serialization fix ( #2409 )
...
* clang format
* added `chars()` method
* implemented vector with small buffer instead of `std::vector`
* added missing <utility> header
* minor fixes
---------
Co-authored-by: Pavel Novikov <dev-ape@yandex.ru >
Co-authored-by: Daniel Lemire <dlemire@lemire.me >
2025-08-07 16:04:20 -04:00
Pavel Novikov
662e3d96c7
Sped up serialization by 10..70%-ish ( #2408 )
...
* clang format
* added `chars()` method
* implemented vector with small buffer instead of `std::vector`
* added missing <utility> header
2025-08-07 16:03:39 -04:00
Daniel Lemire
64009f7063
more code simplification.
2025-08-07 13:25:18 -04:00
Daniel Lemire
74fb3ecac7
removing another pragma and some code simplification.
2025-08-07 13:23:21 -04:00
Daniel Lemire
26abf1d180
removing macros
2025-08-07 11:39:51 -04:00