-
Notifications
You must be signed in to change notification settings - Fork 0
/
spec.dats
29 lines (27 loc) · 1.03 KB
/
spec.dats
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include "share/atspre_staload.hats"
staload "SATS/futhark.sats"
staload "SATS/futhark-arr.sats"
staload "SATS/futhark-stats.sats"
staload "SATS/futhark-linalg.sats"
implement main0 () =
{
val arr0 = arrayptr($arrpsz{float}(1.0f, 2.0f, 3.0f))
var arr1 = arrayptr($arrpsz{float}(1.0f, 2.0f, 3.0f))
val ctx_cfg = futhark_context_config_new()
val ctx = futhark_context_new(ctx_cfg)
val fut_arr0 = futhark_new_f32_1d(ctx, arr0, 3)
val fut_arr1 = futhark_new_f32_1d(ctx, arr1, 3)
var ret: float
val _ = futhark_entry_mean_f32(ctx, ret, fut_arr0)
val () = println!(ret)
val _ = futhark_entry_dotprod_f32(ctx, ret, fut_arr0, fut_arr1)
val () = println!(ret)
val _ = futhark_entry_compute_beta_f32(ctx, ret, fut_arr0, fut_arr1)
val () = println!(ret)
val _ = futhark_free_f32_1d(ctx, fut_arr0)
val _ = futhark_free_f32_1d(ctx, fut_arr1)
val () = futhark_context_free(ctx)
val () = futhark_context_config_free(ctx_cfg)
val () = arrayptr_free(arr0)
val () = arrayptr_free(arr1)
}