> -----Original Message----- > From: ext Maxim Uvarov [mailto:[email protected]] > Sent: Wednesday, September 09, 2015 10:46 AM > To: Alexandru Badicioiu > Cc: Savolainen, Petri (Nokia - FI/Espoo); [email protected] > Subject: Re: [lng-odp] [API-NEXT PATCH 3/4] api: odp_cpumask_default_ > mask argument can be null > > On 09/09/15 09:51, Alexandru Badicioiu wrote: > > > > > > On 9 September 2015 at 09:29, Maxim Uvarov <[email protected] > > <mailto:[email protected]>> wrote: > > > > On 09/08/15 16:04, Alexandru Badicioiu wrote: > > > > I agree, at least in my case some CPUs are assigned at boot > > time for dataplane work and cannot be changed. > > > > Alex > > > > > > Alex, how do you run validation tests then? Do you have your own > > variant of odp helper to create threads? > > > > Maxim. > > [Alex] Some scheduling tests are constantly failing due to the > > thread creation an assignment to cores. We are looking forward to > > propose changes to > > > > That sound like we need api to start workers to fix your case and dpdk. > Something like odp_task_start(enum type {CONTOL, WORKER}, int > num_tasks, > cpumask); and get rid of pthread launch helpers. As I remember Zoltan > wanted to do some API proposal. > > > Maxim.
odp_cpumask_def_worker() solves the first problem. Alex can return e.g. CPU IDs 3, 5 and 7, if those are the only CPUs that can run worker threads. Validation tests (and other apps) should honor that information and pin worker pthreads/processes/tasks/etc only on those CPUs. Portability of pthreads is another problem. Pthread helpers are helper APIs just because one thread model may not suite all apps or platforms. We can create another helper API for tasks to fit better "the DPDK remote launch model". It must be a helper, since we don't want to force everybody into the same thread model. Validation suite can use whatever thread model that suites best for its purposes. -Petri _______________________________________________ lng-odp mailing list [email protected] https://lists.linaro.org/mailman/listinfo/lng-odp
