John Keiser
fe7a4d42d3
Fix top level values
2020-10-04 12:47:30 -07:00
John Keiser
e89d6353af
Add a "sum" benchmark with no appending to vector
2020-10-04 12:47:30 -07:00
John Keiser
c5bb74d184
Pave the way for non-record-based benchmarks
2020-10-04 12:47:30 -07:00
Daniel Lemire
874349c928
Making the code cleaner.
2020-10-04 12:47:30 -07:00
Daniel Lemire
157604b3a5
I think that this is better (fairer) code.
2020-10-04 12:47:30 -07:00
John Keiser
b935544d65
Make benchmark output easier to follow
2020-10-04 12:47:30 -07:00
Daniel Lemire
03271df579
This adds a frequency column (useful because if the frequency tanks, then other numbers are suspect).
2020-10-04 12:47:30 -07:00
John Keiser
0633d3a07d
Make branch miss numbers integers
2020-10-04 12:47:30 -07:00
John Keiser
045377a594
Fix errors with g++
2020-10-04 12:47:30 -07:00
John Keiser
b5c8030f19
Fix LargeRandom<OnDemand>
2020-10-04 12:47:30 -07:00
John Keiser
f75e856d2b
Compare records to ensure benchmarks work
2020-10-04 12:47:30 -07:00
John Keiser
44d689bc6e
Make instructions / cycle counters more useful
2020-10-04 12:47:30 -07:00
John Keiser
9e433c2f19
Move benchmarks into their own directories
2020-10-04 12:47:30 -07:00
John Keiser
4d89076bdc
Check for EOF when skipping containers
...
Revert that?
Or not
2020-10-04 12:47:30 -07:00
John Keiser
283ac3191f
Rename parse->iterate, add iterate_raw
2020-10-04 12:47:29 -07:00
John Keiser
4dd0c80dad
Move current_string_buf_loc to json_iterator
2020-10-04 12:47:29 -07:00
John Keiser
3b53c6ca47
Use json_iterator as shared state instead of document
2020-10-04 12:47:29 -07:00
John Keiser
a90b8fb449
Remove depth tracking from ondemand api
2020-10-04 12:47:29 -07:00
John Keiser
98be2c91df
Fix SAX benchmarks to actually push to vector
2020-10-04 12:47:29 -07:00
John Keiser
2657e5e226
Fix points SAX to actually record points
2020-10-04 12:47:29 -07:00
John Keiser
cfcb0d4fb7
Use json_iterator in array/object
2020-10-04 12:47:29 -07:00
John Keiser
4065529bdf
Don't try to compile Haswell benchmarks on ARM
2020-10-04 12:47:29 -07:00
John Keiser
6be2db8c42
Fix SAX benchmark to actually add tweets
2020-10-04 12:47:29 -07:00
John Keiser
5cf68416d8
Don't bother comparing field names in parserandom
2020-10-04 12:47:29 -07:00
John Keiser
ebcb3c6b3b
On-demand parse implementation
2020-10-04 12:47:29 -07:00
Paul Dreik
04267e0f6b
add boost.json to benchmark ( #1202 )
...
Add boost.json to the benchmark.
It was accepted into boost 20201003, see https://lists.boost.org/Archives/boost/2020/10/250129.php .
The upstream repo is (expected to eventually be migrated to boost): https://github.com/CPPAlliance/json
2020-10-04 10:00:09 +02:00
Daniel Lemire
a540e6afc5
Testing on minimalist alpine (linux) images ( #1200 )
...
* Tweaking header includes to make it safer.
* Adding the actual tests.
* Fixing my syntax.
2020-10-02 13:32:09 -04:00
Daniel Lemire
9865bb6904
Make it possible to check that an implementation is supported at runtime ( #1197 )
...
* Make it possible to check that an implementation is supported at runtime.
* add CI fuzzing on arm 64 bit
This adds fuzzing on drone.io arm64
For some reason, leak detection had to be disabled. If it is enabled, the fuzzer falsely reports a crash at the end of fuzzing.
Closes : #1188
* Guarding the implementation accesses.
* Better doc.
* Updating cxxopts.
* Make it possible to check that an implementation is supported at runtime.
* Guarding the implementation accesses.
* Better doc.
* Updating cxxopts.
* We need to accomodate cxxopts
Co-authored-by: Paul Dreik <github@pauldreik.se >
2020-10-02 11:04:51 -04:00
Daniel Lemire
60c139a844
Faster and more correct serialization ( #1168 )
...
* Adding new files.
* Better.
* Fixing minifier and adding tests.
* Adding benchmarks.
* Including the array header.
* Replacing old stream-based code by the new code.
* Doubling up the itoa.
* Hidden away to_chars in internal namespace.
* Removing the repetitions.
* Documented the atoi functions.
* Tuning the escape sequences.
* Moving the operators off the main namespace.
* Added more tests.
* Tweaking the implementation so that it works with and without exp.
* The string_builder template and mini_formatter class
are not part of our public API and are subject to change
at any time!
* Adding a benchmark and some optimization.
* Cleaning.
* Strictly speaking, this header is needed.
2020-09-23 10:00:39 -04:00
Daniel Lemire
f410213003
Improve documentation on padding
...
- Improves and clarifies the documentation on padding.
- Use std:: prefix for memcpy, strlen etc.
Related to issues #1175 and #1178
2020-09-23 09:07:14 +02:00
Daniel Lemire
4c11652808
This must be a typo ( #1140 )
2020-08-28 20:35:13 -04:00
John Keiser
b2779c35df
Fix issue with unsupported unreachable on Windows
2020-08-18 21:35:12 -07:00
John Keiser
18564f1ae2
Don't benchmark unless haswell is available
2020-08-18 21:25:03 -07:00
John Keiser
638f1deb62
Add DOM tweet reader for comparison
2020-08-18 21:25:03 -07:00
John Keiser
7e74d30f45
[WIP] tweet reader SAX benchmark
2020-08-18 21:25:03 -07:00
Daniel Lemire
8a8eea53a2
Prefixing macros (issue 1035) ( #1124 )
...
* Renaming partially done.
* More prefixing.
* I thought that this was fixed.
* Missed one.
* Missed a few.
* Missed another one.
* Minor fixes.
2020-08-18 18:25:36 -04:00
Daniel Lemire
501fed6c4f
This would disable bash scripts under FreeBSD. ( #1118 )
...
* This would disable bash scripts under FreeBSD.
* Let us also disable GIT.
* Let us try to just disable GIT
* Nope. We must have both bash and git disabled.
2020-08-17 11:50:57 -04:00
Daniel Lemire
2f92a34bb7
Turns out that passing dom::element by reference can be a performance killer. ( #1086 )
...
* Turns out that passing dom::element by reference can be a performance killer.
* Tweaking.
2020-08-01 10:31:47 -04:00
Daniel Lemire
84dc398d32
Adding a couple of tests.
2020-07-31 15:29:10 -04:00
Daniel Lemire
f80668e87f
This removes the crazy alignment requirements. ( #1073 )
...
* This removes the crazy alignment requirements.
2020-07-27 16:19:01 -04:00
Daniel Lemire
af18d5ed81
This adds a validation benchmark ( #1040 )
2020-07-20 18:56:39 -04:00
Daniel Lemire
d0ce2f0b5a
Fixing clang under visual studio ( #1028 )
...
* Lots of fixes
* Removing some lambdas
* Removing some functional programming.
Co-authored-by: Daniel Lemire <lemire@gmai.com >
2020-07-06 18:58:19 -04:00
Daniel Lemire
29e744fdbb
Adding warning message.
2020-06-24 19:23:02 -04:00
Daniel Lemire
515b87bcbe
Disabling perfcheck for ninja
2020-06-24 18:45:47 -04:00
Daniel Lemire
5b4acf14ea
Removing space.
2020-06-24 16:51:28 -04:00
Daniel Lemire
5fc6cb15b8
This should make things even more robust. If .git is not found, just disable all git work.
2020-06-24 16:12:19 -04:00
Daniel Lemire
f6e9a8eee4
Making the cmake more verbose so we can figure out what is happening.
2020-06-24 15:44:22 -04:00
Daniel Lemire
cb8a9ef2c0
This removes git as a dependency
2020-06-24 15:13:47 -04:00
John Keiser
1ff55c2729
Replace auto [x,error] with .get() everywhere
2020-06-21 16:26:59 -07:00
John Keiser
6fa5abcd7e
Replace x.get<T>() with x.get(v) or T(x)
2020-06-21 14:36:38 -07:00