Function finalize_default_backend

Source
pub fn finalize_default_backend() -> Result<()>
Expand description

Finalizes a default backend.

Examples found in repository?
examples/mul.rs (line 80)
24fn main()
25{
26    let args: Vec<String> = env::args().collect();
27    let n: usize = match args.get(1) {
28        Some(s) => {
29            match s.parse::<usize>() {
30                Ok(tmp_n) => tmp_n,
31                Err(err) => {
32                    eprintln!("{}", err);
33                    exit(1);
34                },
35            }
36        },
37        None => 100,
38    };
39    let m: usize = match args.get(2) {
40        Some(s) => {
41            match s.parse::<usize>() {
42                Ok(tmp_m) => tmp_m,
43                Err(err) => {
44                    eprintln!("{}", err);
45                    exit(1);
46                },
47            }
48        },
49        None => 100,
50    };
51    let l: usize = match args.get(3) {
52        Some(s) => {
53            match s.parse::<usize>() {
54                Ok(tmp_l) => tmp_l,
55                Err(err) => {
56                    eprintln!("{}", err);
57                    exit(1);
58                },
59            }
60        },
61        None => 100,
62    };
63    let frontend = match Frontend::new() {
64        Ok(tmp_frontend) => tmp_frontend,
65        Err(err) => {
66            eprintln!("{}", err);
67            exit(1);
68        },
69    };
70    println!("backend: {}", frontend.backend().name());
71    let a = create_matrix(n, l);
72    let b = create_matrix(l, m);
73    let now = Instant::now();
74    let c = a * b;
75    let duration = now.elapsed();
76    let elems = c.elems();
77    let sum = elems.iter().fold(0.0f32, |x, y| x + y);
78    println!("sum: {}", sum);
79    println!("time: {}.{:06}", duration.as_secs(), duration.as_micros() % 1000000);
80    match finalize_default_backend() {
81        Ok(()) => (),
82        Err(err) => {
83            eprintln!("{}", err);
84            exit(1);
85        },
86    }
87}
More examples
Hide additional examples
examples/mul_bt.rs (line 80)
24fn main()
25{
26    let args: Vec<String> = env::args().collect();
27    let n: usize = match args.get(1) {
28        Some(s) => {
29            match s.parse::<usize>() {
30                Ok(tmp_n) => tmp_n,
31                Err(err) => {
32                    eprintln!("{}", err);
33                    exit(1);
34                },
35            }
36        },
37        None => 100,
38    };
39    let m: usize = match args.get(2) {
40        Some(s) => {
41            match s.parse::<usize>() {
42                Ok(tmp_m) => tmp_m,
43                Err(err) => {
44                    eprintln!("{}", err);
45                    exit(1);
46                },
47            }
48        },
49        None => 100,
50    };
51    let l: usize = match args.get(3) {
52        Some(s) => {
53            match s.parse::<usize>() {
54                Ok(tmp_l) => tmp_l,
55                Err(err) => {
56                    eprintln!("{}", err);
57                    exit(1);
58                },
59            }
60        },
61        None => 100,
62    };
63    let frontend = match Frontend::new() {
64        Ok(tmp_frontend) => tmp_frontend,
65        Err(err) => {
66            eprintln!("{}", err);
67            exit(1);
68        },
69    };
70    println!("backend: {}", frontend.backend().name());
71    let a = create_matrix(n, l);
72    let b = create_matrix(m, l);
73    let now = Instant::now();
74    let c = a * b.transpose();
75    let duration = now.elapsed();
76    let elems = c.elems();
77    let sum = elems.iter().fold(0.0f32, |x, y| x + y);
78    println!("sum: {}", sum);
79    println!("time: {}.{:06}", duration.as_secs(), duration.as_micros() % 1000000);
80    match finalize_default_backend() {
81        Ok(()) => (),
82        Err(err) => {
83            eprintln!("{}", err);
84            exit(1);
85        },
86    }
87}
examples/mad.rs (line 86)
29fn main()
30{
31    let args: Vec<String> = env::args().collect();
32    let n: usize = match args.get(1) {
33        Some(s) => {
34            match s.parse::<usize>() {
35                Ok(tmp_n) => tmp_n,
36                Err(err) => {
37                    eprintln!("{}", err);
38                    exit(1);
39                },
40            }
41        },
42        None => 100,
43    };
44    let m: usize = match args.get(2) {
45        Some(s) => {
46            match s.parse::<usize>() {
47                Ok(tmp_m) => tmp_m,
48                Err(err) => {
49                    eprintln!("{}", err);
50                    exit(1);
51                },
52            }
53        },
54        None => 100,
55    };
56    let l: usize = match args.get(3) {
57        Some(s) => {
58            match s.parse::<usize>() {
59                Ok(tmp_l) => tmp_l,
60                Err(err) => {
61                    eprintln!("{}", err);
62                    exit(1);
63                },
64            }
65        },
66        None => 100,
67    };
68    let frontend = match Frontend::new() {
69        Ok(tmp_frontend) => tmp_frontend,
70        Err(err) => {
71            eprintln!("{}", err);
72            exit(1);
73        },
74    };
75    println!("backend: {}", frontend.backend().name());
76    let a = create_matrix(n, l, false);
77    let b = create_matrix(l, m, false);
78    let c = create_matrix(n, m, true);
79    let now = Instant::now();
80    let d = a * b + c;
81    let duration = now.elapsed();
82    let elems = d.elems();
83    let sum = elems.iter().fold(0.0f32, |x, y| x + y);
84    println!("sum: {}", sum);
85    println!("time: {}.{:06}", duration.as_secs(), duration.as_micros() % 1000000);
86    match finalize_default_backend() {
87        Ok(()) => (),
88        Err(err) => {
89            eprintln!("{}", err);
90            exit(1);
91        },
92    }
93}