It would be good to know what problem we are attempting to solve with this new API. Who are supposed to use these calls and definitions?
-- Ola On 27 April 2015 at 14:38, Petri Savolainen <[email protected]> wrote: > Two thread types are defined: worker and control threads. API calls from > a worker thread should be throughput and latency optimized, while the > second one is not so sensitive to call overheads and latency. > > Signed-off-by: Petri Savolainen <[email protected]> > --- > include/odp/api/thread.h | 38 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 38 insertions(+) > > diff --git a/include/odp/api/thread.h b/include/odp/api/thread.h > index a509ef9..89eae2b 100644 > --- a/include/odp/api/thread.h > +++ b/include/odp/api/thread.h > @@ -23,6 +23,34 @@ extern "C" { > */ > > /** > + * Thread type > + */ > +typedef enum odp_thread_type_e { > + /** > + * Worker thread > + * > + * Worker threads do most part of ODP application packet > processing. > + * These threads provide high packet and data rates, with low and > + * predictable latency. Typically, worker threads are pinned to > isolated > + * CPUs and packets are processed in a run-to-completion loop with > very > + * low interference from the operating system. > + */ > + ODP_THREAD_WORKER = 0, > + > + /** > + * Control thread > + * > + * Control threads do not participate the main packet flow through > the > + * system, but e.g. control or monitor the worker threads, or > handle > + * exceptions. These threads may perform general purpose > processing, > + * use system calls, share the CPU with other threads and be > interrupt > + * driven. > + */ > + ODP_THREAD_CONTROL > +} odp_thread_type_t; > + > + > +/** > * Get thread identifier > * > * Returns the thread identifier of the current thread. Thread ids range > from 0 > @@ -47,6 +75,16 @@ int odp_thread_id(void); > int odp_thread_count(void); > > /** > + * Thread type > + * > + * Returns the thread type of the current thread. > + * > + * @return Thread type > + */ > +odp_thread_type_t odp_thread_type(void); > + > + > +/** > * @} > */ > > -- > 2.3.6 > > _______________________________________________ > lng-odp mailing list > [email protected] > https://lists.linaro.org/mailman/listinfo/lng-odp >
_______________________________________________ lng-odp mailing list [email protected] https://lists.linaro.org/mailman/listinfo/lng-odp
