@@ -145,38 +145,38 @@ faster than the standard library.
145
145
| Latin-Lipsum | 87 | 38 | 2.3 x |
146
146
| Russian-Lipsum | 7.4 | 2.7 | 2.7 x |
147
147
148
- On a Neoverse V1 (Graviton 3), our validation function is 1.3 to over four times
148
+ On a Neoverse V1 (Graviton 3), our validation function is 1.3 to over five times
149
149
faster than the standard library.
150
150
151
151
| data set | SimdUnicode speed (GB/s) | .NET speed (GB/s) | speed up |
152
152
| :----------------| :-----------| :--------------------------| :-------------------|
153
- | Twitter.json | 12 | 8.7 | 1.4 x |
154
- | Arabic-Lipsum | 3.4 | 2.0 | 1.7 x |
155
- | Chinese-Lipsum | 3.4 | 2.6 | 1.3 x |
156
- | Emoji-Lipsum | 3.4 | 0.8 | 4 .3 x |
157
- | Hebrew-Lipsum | 3.4 | 2.0 | 1.7 x |
158
- | Hindi-Lipsum | 3.4 | 1.6 | 2.1 x |
159
- | Japanese-Lipsum | 3.4 | 2.4 | 1.4 x |
160
- | Korean-Lipsum | 3.4 | 1.3 | 2.6 x |
153
+ | Twitter.json | 14 | 8.7 | 1.4 x |
154
+ | Arabic-Lipsum | 4.2 | 2.0 | 2.1 x |
155
+ | Chinese-Lipsum | 4.2 | 2.6 | 1.6 x |
156
+ | Emoji-Lipsum | 4.2 | 0.8 | 5 .3 x |
157
+ | Hebrew-Lipsum | 4.2 | 2.0 | 2.1 x |
158
+ | Hindi-Lipsum | 4.2 | 1.6 | 2.6 x |
159
+ | Japanese-Lipsum | 4.2 | 2.4 | 1.8 x |
160
+ | Korean-Lipsum | 4.2 | 1.3 | 3.2 x |
161
161
| Latin-Lipsum | 42 | 17 | 2.5 x |
162
- | Russian-Lipsum | 3.3 | 0.95 | 3.5 x |
162
+ | Russian-Lipsum | 4.2 | 0.95 | 4.4 x |
163
163
164
164
165
165
On a Qualcomm 8cx gen3 (Windows Dev Kit 2023), we get roughly the same relative performance
166
166
boost as the Neoverse V1.
167
167
168
168
| data set | SimdUnicode speed (GB/s) | .NET speed (GB/s) | speed up |
169
169
| :----------------| :-----------| :--------------------------| :-------------------|
170
- | Twitter.json | 15 | 10 | 1.5 x |
171
- | Arabic-Lipsum | 4 .0 | 2.3 | 1.7 x |
172
- | Chinese-Lipsum | 4 .0 | 2.9 | 1.4 x |
173
- | Emoji-Lipsum | 4 .0 | 0.9 | 4.4 x |
174
- | Hebrew-Lipsum | 4 .0 | 2.3 | 1.7 x |
175
- | Hindi-Lipsum | 4 .0 | 1.9 | 2.1 x |
176
- | Japanese-Lipsum | 4 .0 | 2.7 | 1.5 x |
177
- | Korean-Lipsum | 4 .0 | 1.5 | 2.7 x |
170
+ | Twitter.json | 17 | 10 | 1.7 x |
171
+ | Arabic-Lipsum | 5 .0 | 2.3 | 2.2 x |
172
+ | Chinese-Lipsum | 5 .0 | 2.9 | 1.7 x |
173
+ | Emoji-Lipsum | 5 .0 | 0.9 | 5.5 x |
174
+ | Hebrew-Lipsum | 5 .0 | 2.3 | 2.2 x |
175
+ | Hindi-Lipsum | 5 .0 | 1.9 | 2.6 x |
176
+ | Japanese-Lipsum | 5 .0 | 2.7 | 1.9 x |
177
+ | Korean-Lipsum | 5 .0 | 1.5 | 3.3 x |
178
178
| Latin-Lipsum | 50 | 20 | 2.5 x |
179
- | Russian-Lipsum | 4 .0 | 1.2 | 3.3 x |
179
+ | Russian-Lipsum | 5 .0 | 1.2 | 5.2 x |
180
180
181
181
182
182
On a Neoverse N1 (Graviton 2), our validation function is 1.3 to over four times
@@ -195,23 +195,23 @@ faster than the standard library.
195
195
| Latin-Lipsum | 42 | 17 | 2.5 x |
196
196
| Russian-Lipsum | 3.3 | 0.95 | 3.5 x |
197
197
198
- On a Neoverse N1 (Graviton 2), our validation function is up to three times
198
+ On a Neoverse N1 (Graviton 2), our validation function is up to over three times
199
199
faster than the standard library.
200
200
201
+
201
202
| data set | SimdUnicode speed (GB/s) | .NET speed (GB/s) | speed up |
202
203
| :----------------| :-----------| :--------------------------| :-------------------|
203
- | Twitter.json | 7.0 | 5.7 | 1.2 x |
204
- | Arabic-Lipsum | 2.2 | 0.9 | 2.4 x |
205
- | Chinese-Lipsum | 2.1 | 1.8 | 1.1 x |
206
- | Emoji-Lipsum | 1.8 | 0.7 | 2.6 x |
207
- | Hebrew-Lipsum | 2.0 | 0.9 | 2.2 x |
208
- | Hindi-Lipsum | 2.0 | 1.0 | 2.0 x |
209
- | Japanese-Lipsum | 2.1 | 1.7 | 1.2 x |
210
- | Korean-Lipsum | 2.2 | 1.0 | 2.2 x |
211
- | Latin-Lipsum | 24 | 13 | 1.8 x |
212
- | Russian-Lipsum | 2.1 | 0.7 | 3.0 x |
213
-
214
- One difficulty with ARM processors is that they have varied SIMD/NEON performance. For example, Neoverse N1 processors, not to be confused with the Neoverse V1 design used by AWS Graviton 3, have weak SIMD performance. Of course, one can pick and choose which approach is best and it is not necessary to apply SimdUnicode is all cases. We expect good performance on recent ARM-based Qualcomm processors.
204
+ | Twitter.json | 7.8 | 5.7 | 1.4 x |
205
+ | Arabic-Lipsum | 2.5 | 0.9 | 2.8 x |
206
+ | Chinese-Lipsum | 2.5 | 1.8 | 1.4 x |
207
+ | Emoji-Lipsum | 2.5 | 0.7 | 3.6 x |
208
+ | Hebrew-Lipsum | 2.5 | 0.9 | 2.7 x |
209
+ | Hindi-Lipsum | 2.3 | 1.0 | 2.3 x |
210
+ | Japanese-Lipsum | 2.4 | 1.7 | 1.4 x |
211
+ | Korean-Lipsum | 2.5 | 1.0 | 2.5 x |
212
+ | Latin-Lipsum | 23 | 13 | 1.8 x |
213
+ | Russian-Lipsum | 2.3 | 0.7 | 3.3 x |
214
+
215
215
216
216
## Building the library
217
217
0 commit comments