-
-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parallel API #24
Comments
Parallel threshold
Parallel time rate (smaller is better) When handling large input, the throughput may be limited by cache miss and page faults. In other words, the throughput hits memory bound. So the theoretical parallel time rate is smaller than the practial one. |
just bench static-experimental --bench base64 --plotting-backend disabled -- 'base64-encode/base64-simd' base64-encode (GiB/s)
|
Would it be useful to have option to parse multiple items, which the cache and instruction level parallelism can probably help here. Use case will be something like being able to use it in polars to read a column of uuid. |
Could you explain this use case in more detail? How can we accelerate it by multithreading? |
Not really multi-threading but aligning on cache lines and being able to process multiple items at once maybe can make it faster? When we need to process batches of it, maybe there are better way to process items in bulk compared to processing each item one by one? |
Sounds interesting. We can discuss it in another issue #45 |
Improve throughput by using multi-threading (rayon).
In most cases, the simd functions are fast enough that we may not benefit from multi-threading. And some functions are not divisible.
Crates with parallel api:
The text was updated successfully, but these errors were encountered: