Function prime_suspects::segmented_sieve_parallel [] [src]

pub fn segmented_sieve_parallel(
    max_val: usize,
    segment_size: usize
) -> Vec<usize>

Same algorithm as the regular segmented_sieve function, but each larger segment to be sieved is computed in parallel threads.

Examples

Compute the last three primes up to 264 + 1. (The segmented sieve functions call eratosthenes_sieve for lower values for reasons of efficiency.)

assert_eq!(vec![65521, 65519, 65497],
           prime_suspects::segmented_sieve_parallel(65537, 256)
             .into_iter().rev().take(3)
             .collect::<Vec<usize>>());