25 static int parse_args(
int argc,
char *argv[], options_t *opt)
27 static const char *
const args[] = {
"-n"};
30 for (i = 1; i < argc; i++) {
31 if ((strcmp(argv[i], args[0]) == 0) && argv[i + 1] &&
32 (sscanf(argv[i + 1],
"%i", &tmp) == 1)) {
37 " [%s Number of iterations]\n\n",
46 int main(
int argc,
char *argv[])
52 memset(&opt, 0,
sizeof(opt));
55 if (parse_args(argc, argv, &opt))
59 printf(
"Global init failed.\n");
64 printf(
"Local init failed.\n");
68 for (i = 0; i < opt.num; i++) {
69 printf(
"Hello world from CPU %i!\n",
odp_cpu_id());
74 printf(
"Local term failed.\n");
79 printf(
"Global term failed.\n");
int odp_cpu_id(void)
CPU identifier.
int odp_init_local(odp_instance_t instance, odp_thread_type_t thr_type)
Thread local ODP initialization.
int odp_init_global(odp_instance_t *instance, const odp_init_t *params, const odp_platform_init_t *platform_params)
Global ODP initialization.
int odp_term_local(void)
Thread local ODP termination.
int odp_term_global(odp_instance_t instance)
Global ODP termination.
uint64_t odp_instance_t
ODP instance ID.
@ ODP_THREAD_CONTROL
Control thread.
#define ODP_TIME_SEC_IN_NS
A second in nanoseconds.
void odp_time_wait_ns(uint64_t ns)
Wait the specified number of nanoseconds.