You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: cppcon2025/cppcon_2025_slides.md
+47-47Lines changed: 47 additions & 47 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,14 +20,14 @@ CppCon 2025
20
20
21
21
# JSON
22
22
23
-
- Portable, simple
24
-
- Used by ~97% of API requests. [Landscape of API Traffic 2021 - Cloudflare](https://blog.cloudflare.com/landscape-of-api-traffic/#:~:text=We%20begin%20by%20examining%20the,first%20week%20of%20February%202021)
25
-
- scalar values
26
-
- strings (must be escaped)
27
-
- numbers (but not `NaN` or `Inf`)
28
-
- composed values
29
-
- objects (key/value)
30
-
- arrays (list)
23
+
* Portable, simple
24
+
* Used by ~97% of API requests. [Landscape of API Traffic 2021 - Cloudflare](https://blog.cloudflare.com/landscape-of-api-traffic/#:~:text=We%20begin%20by%20examining%20the,first%20week%20of%20February%202021)
25
+
* scalar values
26
+
* strings (must be escaped)
27
+
* numbers (but not `NaN` or `Inf`)
28
+
* composed values
29
+
* objects (key/value)
30
+
* arrays (list)
31
31
32
32
33
33
---
@@ -72,10 +72,10 @@ Source: Gwen (Chen) Shapira
72
72
73
73
# Performance
74
74
75
-
- simdjson was the first library to break the gigabyte per second barrier
75
+
* simdjson was the first library to break the gigabyte per second barrier
76
76
* Parsing Gigabytes of JSON per Second, VLDB Journal 28 (6), 2019
77
77
* On-Demand JSON: A Better Way to Parse Documents? SPE 54 (6), 2024
78
-
- JSON for Modern C++ can be $100\times$ slower!
78
+
* JSON for Modern C++ (nlohmann/json) can be $100\times$ slower!
79
79
80
80
<imgsrc="images/simdjson.png"width="10%" />
81
81
@@ -85,9 +85,9 @@ Source: Gwen (Chen) Shapira
85
85
86
86
## SIMD (Single Instruction, multiple data)
87
87
88
-
- Allows us to process 16 (or more) bytes or more with one instruction
89
-
- Supported on all modern CPUs (phone, laptop)
90
-
- Data-parallel types (SIMD) (recently added to C++26)
88
+
* Allows us to process 16 (or more) bytes or more with one instruction
89
+
* Supported on all modern CPUs (phone, laptop)
90
+
* Data-parallel types (SIMD) (recently added to C++26)
0 commit comments