@@ -28,22 +28,19 @@ int main(int argc, char **argv) {
2828 printf (" --------------\n\n " );
2929
3030 // std::unique_ptr<Context> ctx = createContext();
31- Context ctx = waitForContext ();
31+ Context ctx = createContext ();
3232 static constexpr size_t N = 10000 ;
3333 std::array<float , N> inputArr, outputArr;
3434 for (int i = 0 ; i < N; ++i) {
3535 inputArr[i] = static_cast <float >(i) / 10.0 ; // dummy input data
3636 }
3737 Tensor input = createTensor (ctx, Shape{N}, kf32, inputArr.data ());
3838 Tensor output = createTensor (ctx, Shape{N}, kf32);
39- std::future< Kernel> kernelFuture = createKernel (ctx, {kGelu , 256 , kf32},
39+ Kernel op = createKernel (ctx, {kGelu , 256 , kf32},
4040 Bindings{input, output},
4141 {cdiv (N, 256 ), 1 , 1 });
42- Kernel op = waitForFuture (ctx.instance , kernelFuture);
43- std::future<void > dispatchFuture = dispatchKernel (ctx, op);
44- waitForFuture (ctx.instance , dispatchFuture);
45- std::future<void > cpuFuture = toCPU (ctx, output, outputArr.data (), sizeof (outputArr));
46- waitForFuture (ctx.instance , cpuFuture);
42+ dispatchKernel (ctx, op);
43+ toCPU (ctx, output, outputArr.data (), sizeof (outputArr));
4744 for (int i = 0 ; i < 12 ; ++i) {
4845 printf (" gelu(%.2f) = %.2f\n " , inputArr[i], outputArr[i]);
4946 }
0 commit comments