Setting Maximum Core Usage in ARM PL for LAPACK Functions

If I want ARM PL LAPACK functions to support multi-core usage, are there any APIs, such as set_maximum_core or set_maximum_threads, that I can use?

Parents
  • Hi.

    So long as you link to the _mp variant of the library, e.g. libarmpl_lp64_mp.so, it will automatically select the maximum number of threads that are appropriate for the problem and size.  For example if you were solving a 2x2 problem then just using a single thread would be appropriate, whereas if you were solving 2000x2000 using all the available treads would make sense.  Having this selection inside the library enables ArmPL to have done the hard work of establishing the best thread count per problem, rather than the user having to select them manually.

    Not every function has parallelism, but where we have implemented it, this selection will be available.  If you find functions of particular interest without parallelism where you would expect to get acceleration then do let us know.

    Thanks.

    Chris

Reply
  • Hi.

    So long as you link to the _mp variant of the library, e.g. libarmpl_lp64_mp.so, it will automatically select the maximum number of threads that are appropriate for the problem and size.  For example if you were solving a 2x2 problem then just using a single thread would be appropriate, whereas if you were solving 2000x2000 using all the available treads would make sense.  Having this selection inside the library enables ArmPL to have done the hard work of establishing the best thread count per problem, rather than the user having to select them manually.

    Not every function has parallelism, but where we have implemented it, this selection will be available.  If you find functions of particular interest without parallelism where you would expect to get acceleration then do let us know.

    Thanks.

    Chris

Children