diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2016-03-30 08:21:06 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2016-03-30 08:21:06 -0700 |
commit | e847628e5c2d8fc2c8acc22c828e077402e25fea (patch) | |
tree | 56aeabe0a2ec62354ff1db2c0f260bfc467245fd | |
parent | 1e378a81ceeb06c5899f9c7bfc8dc2f46c52a446 (diff) |
361.42361.42
-rw-r--r-- | files.c | 7 | ||||
-rw-r--r-- | manifest.c | 2 | ||||
-rw-r--r-- | misc.c | 15 | ||||
-rw-r--r-- | nvidia-installer.h | 2 | ||||
-rw-r--r-- | option_table.h | 4 | ||||
-rw-r--r-- | version.mk | 2 |
6 files changed, 27 insertions, 5 deletions
@@ -752,6 +752,13 @@ int set_destinations(Options *op, Package *p) path = ""; break; + case FILE_TYPE_GRID_LIB: + case FILE_TYPE_GRID_LIB_SYMLINK: + prefix = op->opengl_prefix; + dir = op->opengl_libdir; + path = p->entries[i].path; + break; + case FILE_TYPE_OPENGL_HEADER: prefix = op->opengl_prefix; dir = op->opengl_incdir; @@ -114,6 +114,8 @@ static const struct { { ENTRY(ENCODEAPI_LIB_SYMLINK, T, F, F, F, T, F, F, F, F, F, F) }, { ENTRY(VGX_LIB, F, F, T, F, F, T, F, F, F, F, F) }, { ENTRY(VGX_LIB_SYMLINK, F, F, F, F, T, F, F, F, F, F, F) }, + { ENTRY(GRID_LIB, F, F, T, T, F, T, F, F, F, F, F) }, + { ENTRY(GRID_LIB_SYMLINK, F, F, F, T, T, F, F, F, F, F, F) }, { ENTRY(NVIDIA_MODPROBE, F, F, T, T, F, F, F, F, F, F, F) }, { ENTRY(NVIDIA_MODPROBE_MANPAGE,F, F, T, T, F, F, F, F, F, F, F) }, { ENTRY(MODULE_SIGNING_KEY, F, F, T, F, F, F, F, T, F, F, F) }, @@ -3089,12 +3089,21 @@ void set_concurrency_level(Options *op) ui_log(op, "Concurrency level set to %d on the command line.", op->concurrency_level); } else { + /* Systems with very high CPU counts may hit the max tasks limit. */ + static const int max_default_cpus = 32; + int default_concurrency; #if defined _SC_NPROCESSORS_ONLN detected_cpus = sysconf(_SC_NPROCESSORS_ONLN); + if (detected_cpus < max_default_cpus) { + default_concurrency = detected_cpus; + } else { + default_concurrency = max_default_cpus; + } + if (detected_cpus >= 1) { ui_log(op, "Detected %d CPUs online; setting concurrency level " - "to %d.", detected_cpus, detected_cpus); + "to %d.", detected_cpus, default_concurrency); } else #else #warning _SC_NPROCESSORS_ONLN not defined; nvidia-installer will not be able \ @@ -3103,9 +3112,9 @@ to detect the number of processors. { ui_log(op, "Unable to detect the number of processors: setting " "concurrency level to 1."); - detected_cpus = 1; + default_concurrency = 1; } - op->concurrency_level = detected_cpus; + op->concurrency_level = default_concurrency; } if (op->expert) { diff --git a/nvidia-installer.h b/nvidia-installer.h index 0413377..6c1847f 100644 --- a/nvidia-installer.h +++ b/nvidia-installer.h @@ -273,6 +273,8 @@ typedef enum { FILE_TYPE_ENCODEAPI_LIB_SYMLINK, FILE_TYPE_VGX_LIB, FILE_TYPE_VGX_LIB_SYMLINK, + FILE_TYPE_GRID_LIB, + FILE_TYPE_GRID_LIB_SYMLINK, FILE_TYPE_APPLICATION_PROFILE, FILE_TYPE_NVIDIA_MODPROBE, FILE_TYPE_NVIDIA_MODPROBE_MANPAGE, diff --git a/option_table.h b/option_table.h index f8fed0e..6634d85 100644 --- a/option_table.h +++ b/option_table.h @@ -643,7 +643,9 @@ static const NVGetoptOption __options[] = { "Set the concurrency level for operations such as building the kernel " "module which may be parallelized on SMP systems. By default, this will " "be set to the number of detected CPUs, or to '1', if nvidia-installer " - "fails to detect the number of CPUs." }, + "fails to detect the number of CPUs. Systems with a large number of " + "CPUs will have the default concurrency level limited to 32; setting " + "a higher level on the command line will override this limit." }, { "force-libglx-indirect", FORCE_LIBGLX_INDIRECT, 0, NULL, "If the package includes a libglvnd-based OpenGL library, then always " @@ -1 +1 @@ -NVIDIA_VERSION = 361.28 +NVIDIA_VERSION = 361.42 |