File: reduce-thread-number-on-32bit.patch

package info (click to toggle)
rust-rayon-core 1.13.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 528 kB
  • sloc: makefile: 2
file content (17 lines) | stat: -rw-r--r-- 797 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Index: rayon-core/tests/stack_overflow_crash.rs
===================================================================
--- rayon-core.orig/tests/stack_overflow_crash.rs
+++ rayon-core/tests/stack_overflow_crash.rs
@@ -72,4 +72,9 @@ fn main() {
-    let pool = ThreadPoolBuilder::new()
-        .stack_size(stack_size_in_mb * 1024 * 1024)
+    let mut poolbuilder = ThreadPoolBuilder::new()
+        .stack_size(stack_size_in_mb * 1024 * 1024);
+    #[cfg(target_pointer_width = "32")]
+    if std::thread::available_parallelism().map(|n| n.get()).unwrap_or(1) > 8 {
+        poolbuilder = poolbuilder.num_threads(8);
+    }
+    let pool = poolbuilder
         .build()
-        .unwrap();
+        .expect(&format!("failed to initialise a thread pool with a stack size of {} MB",stack_size_in_mb));