Hi Ganesh,
If the aim is to merge these functions (show_config/runtime) eventually, why
not merge them now and avoid introducing another function into the root
namespace?
Stéfan
On Sat, Aug 6, 2022, at 20:55, Ganesh Kathiresan wrote:
> Hi Team,
>
> We are planning on adding a new function called `np.show_runtime` to display
> the runtime information of the machine in addition to `np.show_config` which
> displays the build-related information.
> Relevant PR: ENH: Use threadpoolctl in show_runtime (a new function) #21468
> <https://github.com/numpy/numpy/pull/21468>
>
> Reasons for new function:
> 1. Will be helpful in root-causing issuing with information from the
> acceleration frameworks.
> 2. Build time information alone is not always helpful [1]
>
> Sample Output of new function
> >>> np.show_runtime()
> [{'simd_extensions': {'baseline': ['SSE', 'SSE2', 'SSE3'],
> 'found': ['SSSE3',
> 'SSE41',
> 'POPCNT',
> 'SSE42',
> 'AVX',
> 'F16C',
> 'FMA3',
> 'AVX2'],
> 'not_found': ['AVX512F',
> 'AVX512CD',
> 'AVX512_KNL',
> 'AVX512_KNM',
> 'AVX512_SKX',
> 'AVX512_CLX',
> 'AVX512_CNL',
> 'AVX512_ICL']}},
> {'architecture': 'Zen',
> 'filepath':
> '/usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so',
> 'internal_api': 'openblas',
> 'num_threads': 12,
> 'prefix': 'libopenblas',
> 'threading_layer': 'pthreads',
> 'user_api': 'blas',
> 'version': '0.3.20'}]
> Under the hood
> `np.show_runtime` will use `threadpoolctl` [2] to get the runtime information
> of the frameworks. In addition to this, we will also display useful SIMD
> extensions that are supported.
>
> Future Scope
> 1. When we move towards meson, we can leverage the additional information and
> revamp `np.show_config` to utilize it.
> 2. If needed, we can gradually merge `show_runtime` and `show_config` to
> display information in sections and various other formats.
>
> Please do let us know if you have any suggestions on improving this function
> or concerns about the information provided by the new function.
>
> Thanks,
> Ganesh
>
> [1] show_config displays useless info when installed through conda-forge
> channel <https://github.com/numpy/numpy/issues/14492> (#14492)
> [2] threadpoolctl <https://pypi.org/project/threadpoolctl/>
_______________________________________________
NumPy-Discussion mailing list -- numpy-discussion@python.org
To unsubscribe send an email to numpy-discussion-le...@python.org
https://mail.python.org/mailman3/lists/numpy-discussion.python.org/
Member address: arch...@mail-archive.com