853 Commits

Author SHA1 Message Date
HedgehogInTheCPP
cfd0963705
Merge branch 'main' into main 2025-03-12 17:16:03 +03:00
Daniel Lemire
50a80a73ab v8.0.2 v8.0.2 2025-03-11 09:51:53 -04:00
Anders Dalvander
f9bed3f7b1
Merge pull request #309 from fastfloat/benchvs
supporting benchmarks under Windows
2025-03-11 14:35:15 +01:00
Daniel Lemire
c0affad8b4
Update benchmark.cpp 2025-03-11 09:19:28 -04:00
Daniel Lemire
7597ca61aa supporting benchmarks under Windows 2025-03-10 19:44:18 -04:00
Daniel Lemire
1bf7010153 v8.0.1 v8.0.1 2025-03-10 09:04:05 -04:00
Daniel Lemire
e019768d49
Merge pull request #308 from fastfloat/turing_json_into_macro_parameter
turning json option into macro parameter
2025-03-10 09:02:53 -04:00
Daniel Lemire
c6732cd28b lint 2025-03-10 09:02:38 -04:00
IRainman
474cc159db Merge branch 'main' of https://github.com/IRainman/fast_float
# Conflicts:
#	benchmarks/benchmark.cpp
2025-03-10 05:51:18 +03:00
IRainman
785802344e Tests are updated:
When FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN is disabled:

####
# reading C:/Projects/fast_float/build/benchmarks/data/canada.txt
####
# read 111126 lines
ASCII volume = 1.93374 MB
fastfloat (64)                          :   228.57 MB/s (+/- 4.1 %)    13.14 Mfloat/s      76.13 ns/f
fastfloat (32)                          :   226.19 MB/s (+/- 3.1 %)    13.00 Mfloat/s      76.93 ns/f
UTF-16 volume = 3.86749 MB
fastfloat (64)                          :   445.30 MB/s (+/- 2.8 %)    12.79 Mfloat/s      78.16 ns/f
fastfloat (32)                          :   439.31 MB/s (+/- 2.1 %)    12.62 Mfloat/s      79.22 ns/f
####
# reading C:/Projects/fast_float/build/benchmarks/data/mesh.txt
####
# read 73019 lines
ASCII volume = 0.536009 MB
fastfloat (64)                          :   123.40 MB/s (+/- 0.8 %)    16.81 Mfloat/s      59.49 ns/f
fastfloat (32)                          :   117.22 MB/s (+/- 1.4 %)    15.97 Mfloat/s      62.62 ns/f
UTF-16 volume = 1.07202 MB
fastfloat (64)                          :   243.93 MB/s (+/- 2.6 %)    16.61 Mfloat/s      60.19 ns/f
fastfloat (32)                          :   232.48 MB/s (+/- 2.5 %)    15.83 Mfloat/s      63.15 ns/f

c:\Projects\fast_float\build\benchmarks\Release>

When FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN is enabled:

####
# reading C:/Projects/fast_float/build/benchmarks/data/canada.txt
####
# read 111126 lines
ASCII volume = 1.82777 MB
fastfloat (64)                          :   233.01 MB/s (+/- 2.0 %)    14.17 Mfloat/s      70.59 ns/f
fastfloat (32)                          :   221.31 MB/s (+/- 1.5 %)    13.46 Mfloat/s      74.32 ns/f
UTF-16 volume = 3.65553 MB
fastfloat (64)                          :   460.78 MB/s (+/- 1.4 %)    14.01 Mfloat/s      71.39 ns/f
fastfloat (32)                          :   439.76 MB/s (+/- 2.1 %)    13.37 Mfloat/s      74.80 ns/f
####
# reading C:/Projects/fast_float/build/benchmarks/data/mesh.txt
####
# read 73019 lines
ASCII volume = 0.536009 MB
fastfloat (64)                          :   131.38 MB/s (+/- 0.4 %)    17.90 Mfloat/s      55.87 ns/f
fastfloat (32)                          :   123.03 MB/s (+/- 0.4 %)    16.76 Mfloat/s      59.67 ns/f
UTF-16 volume = 1.07202 MB
fastfloat (64)                          :   259.29 MB/s (+/- 1.5 %)    17.66 Mfloat/s      56.62 ns/f
fastfloat (32)                          :   243.71 MB/s (+/- 1.8 %)    16.60 Mfloat/s      60.24 ns/f

c:\Projects\fast_float\build\benchmarks\Release>

P.S. tested on latest Windows 10 update with latest MSVC 2022 updates on older, but still powerful machine with Intel Xeon E5-2680 v2
2025-03-10 05:48:27 +03:00
IRainman
3e86e9a18e ####
# reading C:/Projects/fast_float/build/benchmarks/data/canada.txt
####
# read 111126 lines
ASCII volume = 1.82777 MB
fastfloat (64)                          :   233.01 MB/s (+/- 2.0 %)    14.17 Mfloat/s      70.59 ns/f
fastfloat (32)                          :   221.31 MB/s (+/- 1.5 %)    13.46 Mfloat/s      74.32 ns/f
UTF-16 volume = 3.65553 MB
fastfloat (64)                          :   460.78 MB/s (+/- 1.4 %)    14.01 Mfloat/s      71.39 ns/f
fastfloat (32)                          :   439.76 MB/s (+/- 2.1 %)    13.37 Mfloat/s      74.80 ns/f
####
# reading C:/Projects/fast_float/build/benchmarks/data/mesh.txt
####
# read 73019 lines
ASCII volume = 0.536009 MB
fastfloat (64)                          :   131.38 MB/s (+/- 0.4 %)    17.90 Mfloat/s      55.87 ns/f
fastfloat (32)                          :   123.03 MB/s (+/- 0.4 %)    16.76 Mfloat/s      59.67 ns/f
UTF-16 volume = 1.07202 MB
fastfloat (64)                          :   259.29 MB/s (+/- 1.5 %)    17.66 Mfloat/s      56.62 ns/f
fastfloat (32)                          :   243.71 MB/s (+/- 1.8 %)    16.60 Mfloat/s      60.24 ns/f

c:\Projects\fast_float\build\benchmarks\Release>
2025-03-10 05:40:27 +03:00
IRainman
6c499fda5c FASTFLOAT_ASSUME review. 2025-03-10 05:34:45 +03:00
Daniel Lemire
b29208f93d adding FASTFLOAT_IF_CONSTEXPR17 2025-03-09 17:10:55 -04:00
IRainman
63eb578d52 Add FASTFLOAT_HAS_BYTESWAP check.
Improve FASTFLOAT_CONSTEVAL20 usage for older standards.
2025-03-09 22:55:04 +03:00
Daniel Lemire
ba92c88901
Update pull_request_template.md 2025-03-09 15:33:11 -04:00
Daniel Lemire
0305a7d336
Update README.md 2025-03-09 15:31:45 -04:00
Daniel Lemire
e720395b61
Update README.md 2025-03-09 15:31:11 -04:00
Daniel Lemire
8e5e92b6e2
Merge pull request #305 from dankmeme01/main
fix /permissive- flag causing a compile error on clang for windows
2025-03-09 15:15:35 -04:00
Daniel Lemire
6f0049a2e7 lint 2025-03-09 15:14:52 -04:00
Daniel Lemire
95dedd0aed turning json option into macro parameter 2025-03-09 15:13:43 -04:00
Daniel Lemire
1504792a9f Merge branch 'main' of github.com:fastfloat/fast_float 2025-03-09 14:27:38 -04:00
Daniel Lemire
864e790d22 allowing custom file parsing 2025-03-09 14:27:07 -04:00
IRainman
354f4c3eac Compilation fix. 2025-03-09 21:09:51 +03:00
IRainman
a22dfc6fcf benchmark are updated, added AST parser emulation for FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN.
Now benchmark only measure parameters for fast_float::from_chars and nothing else.
Copy-past fix.
2025-03-09 19:55:54 +03:00
IRainman
5097243903 Fix compilation of benchmarks 2025-03-09 04:07:29 +03:00
IRainman
23a1367509 Merge branch 'main' of https://github.com/IRainman/fast_float 2025-03-09 03:41:37 +03:00
IRainman
c2daa8a614 Added FASTFLOAT_ASSUME for support attribute [[assume]] is declared in P1774 2025-03-09 03:41:27 +03:00
HedgehogInTheCPP
ac22204bcc
Update README.md
Added examples of usage FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN macros and documented allow_leading_plus and skip_white_space options
2025-03-09 02:40:28 +03:00
IRainman
f496321570 Completely remove deprecated macroses FASTFLOAT_ALLOWS_LEADING_PLUS and FASTFLOAT_SKIP_WHITE_SPACE, please use options.
Compilation fix when FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN isn't defined.
2025-03-09 02:37:46 +03:00
IRainman
ae29a0dbe5 PVS-Studio founds some errors, I fixed it. 2025-03-07 20:39:20 +03:00
IRainman
388426e35a fix type conversion warning. 2025-03-07 15:06:44 +03:00
IRainman
aba93f306f Additional compile time cleanup. When FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN is enabled we assume that we are in parser code with external loop that checks bounds.
Function cpp20_and_in_constexpr() now is really compile time evaluated. TODO fix warnings.
2025-03-07 14:51:20 +03:00
IRainman
bc3f331938 # cleanup. 2025-03-06 23:02:50 +03:00
IRainman
7a38e1bc75 fix for 32 bit build. completely done. All other parser mode also work fine. 2025-03-06 22:47:47 +03:00
IRainman
9ebac23081 Added a config option FASTFLOAT_ONLY_POSITIVE_C_NUMBER_WO_INF_NAN for faster and more compact code parsing numbers with input support only positive C/C++ style numbers without nan or inf. That case is very useful in mathematical applications, game development, CSS parsing, embedded code, etc...
Additional improve in constant initialization.
2025-03-06 22:25:05 +03:00
IRainman
28795646ab more const 2025-03-06 19:43:47 +03:00
IRainman
e35e7c7040 Merge branch 'main' of https://github.com/IRainman/fast_float 2025-03-06 18:33:08 +03:00
IRainman
63f6abebdf * Added an option disallow_leading_sign and stronger constexpr / consteval, also significantly reduce register pressure by reducing copy of constant data. 2025-03-06 18:29:16 +03:00
IRainman
b0b1954c87 * Added a config macro FASTFLOAT_DISALLOW_ANY_LEADING_SYMBOLS_INCLUDE_SIGN and FASTFLOAT_DISALLOW_NAN. This both allow to significantly reduce code size and speedup your code when you use fast_float as a part of your parser. 2025-03-05 23:21:24 +03:00
Daniel Lemire
3c5b166f6c
Merge pull request #306 from fastfloat/dependabot/github_actions/github-actions-559242db6c
Bump uraimo/run-on-arch-action from 2 to 3 in the github-actions group
2025-03-03 15:58:21 +00:00
dependabot[bot]
c584342aa5
Bump uraimo/run-on-arch-action from 2 to 3 in the github-actions group
Bumps the github-actions group with 1 update: [uraimo/run-on-arch-action](https://github.com/uraimo/run-on-arch-action).


Updates `uraimo/run-on-arch-action` from 2 to 3
- [Release notes](https://github.com/uraimo/run-on-arch-action/releases)
- [Commits](https://github.com/uraimo/run-on-arch-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: uraimo/run-on-arch-action
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 00:21:03 +00:00
dankmeme01
b7b17e6cac improve check for /permissive- flag 2025-02-26 14:49:12 +01:00
dankmeme01
810a750306 fix /permissive- flag casuing a compile error on clang for windows 2025-02-26 12:18:16 +01:00
Anders Dalvander
d28a3320c2
Merge pull request #303 from biojppm/fix_wundef
Fix -Wundef warnings seen in gcc 4.8
2025-02-13 13:24:47 +01:00
Joao Paulo Magalhaes
3e9dc96eb4 Fix -Wundef warnings seen in gcc 4.8 and 4.9 2025-02-13 08:45:11 +00:00
Daniel Lemire
96067ad107
Merge pull request #302 from biojppm/fix_wundef
fix warning from -Wundef
2025-02-12 19:41:56 -05:00
Joao Paulo Magalhaes
9cfa5ff4a0 fix warnings from -Wundef 2025-02-12 23:51:44 +00:00
Daniel Lemire
77cc847c84 pushing version change v8.0.0 2025-02-08 11:49:58 -05:00
Daniel Lemire
717112d257 lint 2025-02-06 20:25:09 -05:00
Daniel Lemire
f0c709e3e4 ignoring failures 2025-02-06 20:24:43 -05:00