In order to enable externally supplied CPU resource management policies to be passed into ODP instances / applications, a minor change is needed to the existing ODP API.
By adding cpumask pointers for available control and worker CPUs to the data structure specified as a parameter to odp_init_global(), each ODP instance / application can be supplied with predefined sets of available CPUs. External resource management policies can then parcel out CPU resources to multiple concurrently executing ODP instances or applications, such that each instance or application can be assured to coexist harmoniously with other resource users on the underlying platform. The accompanying patch contains only the suggested API extension. A subsequent patch series will implement an example of the suggested API behavioral change in the 'linux-generic' reference implementation. This V3 iteration of the patch submission incorporates pointers to the new odp_cpumask_t structures into the initialization parameter data structure rather than embedding the opaque cpumask structs themselves... keeping the initialization parameter data structure generic and preventing leakage of platform-specific implementations of the odp_cpumask_t into the API-defined initialization parameters. Also the comments for the new cpumask pointers were amended to avoid any implications that this API change requires or suggests isolation support in the underlying platform implementation. Finally, comments were added to clarify the use of the new cpumasks for ODP initialization only and to specify that application code should use odp_cpumask_default_control() and odp_cpumask_default_worker() to obtain CPU resource availability info rather than referencing these new cpumasks directly. Hopefully these amendments will render the patch acceptable to the API. Gary S. Robertson (1): ODP API: add control/worker cpumasks to init data include/odp/api/init.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) -- 1.9.1 _______________________________________________ lng-odp mailing list [email protected] https://lists.linaro.org/mailman/listinfo/lng-odp
