@@ -18,13 +18,20 @@ typedef struct stf_ctx_handle_t* stf_ctx_handle;
1818void stf_ctx_create (stf_ctx_handle * ctx );
1919void stf_ctx_finalize (stf_ctx_handle ctx );
2020
21+ // TODO stf_ctx_set_mode() + define enum with GRAPH, STREAM, ...
22+ // TODO stf_ctx_is_graph()
23+
24+ cudaStream_t stf_fence (stf_ctx_handle ctx );
25+
2126typedef struct stf_logical_data_handle_t * stf_logical_data_handle ;
2227
2328void stf_logical_data (stf_ctx_handle ctx , stf_logical_data_handle * ld , void * addr , size_t sz );
2429void stf_logical_data_set_symbol (stf_logical_data_handle ld , const char * symbol );
2530void stf_logical_data_destroy (stf_logical_data_handle ld );
2631
27- // TODO token
32+ // TODO
33+ // void stf_logical_data_wait(stf_logical_data_handle ld);
34+ // void stf_token(stf_ctx_handle ctx);
2835
2936typedef struct stf_task_handle_t * stf_task_handle ;
3037
@@ -34,8 +41,21 @@ void stf_task_add_dep(stf_task_handle t, stf_logical_data_handle ld, stf_access_
3441void stf_task_start (stf_task_handle t );
3542void stf_task_end (stf_task_handle t );
3643cudaStream_t stf_task_get_stream (stf_task_handle t );
44+ void * stf_task_get (stf_task_handle t , size_t submitted_index );
3745void stf_task_destroy (stf_task_handle t );
3846
47+ typedef struct stf_kernel_desc_handle_t * stf_kernel_desc_handle ;
48+
49+ void stf_kernel_create (stf_kernel_desc_handle * d );
50+ void stf_kernel_destroy (stf_kernel_desc_handle d );
51+ // TODO stf_cuda_kernel_desc : symbol, deps, args... ?
52+ // void stf_kernel_set_symbol((stf_kernel_handle k, const char* symbol)
53+ // void stf_kernel_add_dep(stf_kernel_handle k, stf_logical_data_handle ld, stf_access_mode m);
54+ // void stf_kernel_start(stf_kernel_handle k);
55+ // void stf_kernel_set_args(stf_kernel_handle k, size_t cnt, void **args);
56+ // void stf_kernel_end(stf_kernel_handle k);
57+ // void stf_kernel_destroy(stf_kernel_handle k);
58+
3959#ifdef __cplusplus
4060}
4161#endif
0 commit comments