diff options
| author | Anirudh Subramanian <anirudh2290@ufl.edu> | 2020-06-29 18:36:00 +0000 |
|---|---|---|
| committer | Charles Harris <charlesr.harris@gmail.com> | 2020-06-30 12:56:16 -0600 |
| commit | 3dab4aae974c52b5cd3a1c7df67a26783b4bfbe0 (patch) | |
| tree | f496f96a3871b103a46b139a9fd75c8acbeba838 /numpy | |
| parent | 0d427e9a76a132d3ae1704ff39b4440c2d0b42e6 (diff) | |
| download | numpy-3dab4aae974c52b5cd3a1c7df67a26783b4bfbe0.tar.gz | |
MAINT: Disable use_hugepages in case of ValueError
Diffstat (limited to 'numpy')
| -rw-r--r-- | numpy/__init__.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/numpy/__init__.py b/numpy/__init__.py index 575e8ea3d..70c336106 100644 --- a/numpy/__init__.py +++ b/numpy/__init__.py @@ -293,11 +293,18 @@ else: import os use_hugepage = os.environ.get("NUMPY_MADVISE_HUGEPAGE", None) if sys.platform == "linux" and use_hugepage is None: - use_hugepage = 1 - kernel_version = os.uname().release.split(".")[:2] - kernel_version = tuple(int(v) for v in kernel_version) - if kernel_version < (4, 6): - use_hugepage = 0 + # If there is an issue with parsing the kernel version, + # set use_hugepages to 0. Usage of LooseVersion will handle + # the kernel version parsing better, but avoided since it + # will increase the import time. See: #16679 for related discussion. + try: + use_hugepage = 1 + kernel_version = os.uname().release.split(".")[:2] + kernel_version = tuple(int(v) for v in kernel_version) + if kernel_version < (4, 6): + use_hugepage = 0 + except ValueError: + use_hugepages = 0 elif use_hugepage is None: # This is not Linux, so it should not matter, just enable anyway use_hugepage = 1 |
