Commit Graph

18 Commits

Author SHA1 Message Date
Jon Chronopoulos
1c87bc60ee ProcessorCount: Fix virtual processor count on Solaris
The previous code did not count the number of virtual processors across
physical processors on SunOS.

Can handle the following situations:

```
$ uname -a
SunOS solaris 5.11 11.4.0.15.0 i86pc i386 i86pc
$ psrinfo -p -v
The physical processor has 1 virtual processor (0)
  x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz)
        Intel Core Processor (Broadwell)
The physical processor has 1 virtual processor (1)
  x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz)
        Intel Core Processor (Broadwell)
The physical processor has 1 virtual processor (2)
  x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz)
        Intel Core Processor (Broadwell)
The physical processor has 1 virtual processor (3)
  x86 (GenuineIntel 306D2 family 6 model 61 step 2 clock 3492 MHz)
        Intel Core Processor (Broadwell)
```

```
$ uname -a
SunOS sol11x86 5.11 11.0 i86pc i386 i86pc
$ psrinfo -p -v
The physical processor has 2 virtual processors (0 1)
  x86 (GenuineIntel 50650 family 6 model 85 step 0 clock 2000 MHz)
        Intel(r) Xeon(r) Gold 6138 CPU @ 2.00GHz
```

```
$ uname -a
SunOS sol11 5.11 11.0 sun4v sparc sun4v
$ psrinfo -p -v
The physical processor has 2 cores and 16 virtual processors (0-15)
  The core has 8 virtual processors (0-7)
  The core has 8 virtual processors (8-15)
    SPARC-T4 (chipid 0, clock 2848 MHz)
```
2019-08-20 10:26:06 -04:00
Sylvain Joubert
f20eab9cdc ProcessorCount: Return the container CPU count instead of the host count
On Linux containers (tested with LXC and Docker) getconf returns the
host CPU count.
Use nproc with a higher priority if available to get the container's
allocated CPUs instead of the non-accessible host count.
2019-02-27 13:04:07 +01:00
Brad King
beb991110d Remove now-unused code once used on IRIX
We dropped support for IRIX as a host platform long ago.
Remove some leftover code.
2019-01-11 13:50:46 -05:00
Kitware Robot
df4ed1e9ff Help: Convert remaining modules to block-style comments 2018-10-22 11:09:34 -04:00
Bartosz Kosiorek
fc1602456a Help: Replace occurrences of "Mac OS X" with "macOS"
Apple's main Operating system changed their name from OS X to macOS:

    https://www.engadget.com/2016/06/13/os-x-is-now-macos/

Revise documentation accordingly.
2018-09-05 16:10:49 -04:00
Brad King
86578eccf2 Simplify CMake per-source license notices
Per-source copyright/license notice headers that spell out copyright holder
names and years are hard to maintain and often out-of-date or plain wrong.
Precise contributor information is already maintained automatically by the
version control tool.  Ultimately it is the receiver of a file who is
responsible for determining its licensing status, and per-source notices are
merely a convenience.  Therefore it is simpler and more accurate for
each source to have a generic notice of the license name and references to
more detailed information on copyright holders and full license terms.

Our `Copyright.txt` file now contains a list of Contributors whose names
appeared source-level copyright notices.  It also references version control
history for more precise information.  Therefore we no longer need to spell
out the list of Contributors in each source file notice.

Replace CMake per-source copyright/license notice headers with a short
description of the license and links to `Copyright.txt` and online information
available from "https://cmake.org/licensing".  The online URL also handles
cases of modules being copied out of our source into other projects, so we
can drop our notices about replacing links with full license text.

Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority
of the replacements mechanically.  Manually fix up shebang lines and trailing
newlines in a few files.  Manually update the notices in a few files that the
script does not handle.
2016-09-27 15:14:44 -04:00
Marc Chevrier
1ff96bf69c ProcessorCount: Implement with psrinfo tool on recent SunOS versions 2015-09-28 11:30:41 -04:00
Eric Berge
dbc0f63d11 ProcessorCount: Update for HPUX 11iv3 2014-06-10 13:27:58 -04:00
Rolf Eike Beer
c3e238dd53 ProcessorCount: use mpsched on HPUX if machinfo is not present
Co-Author: Gerhard Grimm <gerhard.grimm@detec.com>
2014-03-28 18:02:49 +01:00
Rolf Eike Beer
eef42a0de6 ProcessorCount: make it work on Haiku 2013-12-02 17:51:47 +01:00
Kitware Robot
f051814ed0 Convert builtin help to reStructuredText source files
Run the convert-help.bash script to convert documentation:

 ./convert-help.bash "/path/to/CMake-build/bin"

Then remove it.
2013-10-15 14:12:03 -04:00
David Cole
3f9fa5cc7f ProcessorCount: Mark find_program vars as advanced (#13236)
After each find_program call, mark_as_advanced each find result
variable to avoid polluting the cache with non-advanced variables
2012-08-17 10:56:05 -04:00
David Cole
e6c2701002 ProcessorCount: Use ERROR_QUIET with execute_process (#11302)
Also, comment out all "debugging" calls to message() that helped
us interpret the output on other platforms when running on the
dashboard clients.

Using ERROR_QUIET avoids unnecessary stderr output while calling
external tools to determine the processor count. If there's an
error parsing the output, we set the count to 0 anyhow.

Also, the test will fail on a CMake dashboard run if the count
comes back equal to 0.

Now that the code is "done"-ish, remove the debugging output.
Expect no output on stdout or stderr when calling the
ProcessorCount function from now on.
2011-03-18 14:28:24 -04:00
David Cole
6dd74d5a59 ProcessorCount: Add support for remaining platforms (#11302)
Including AIX, cygwin, FreeBSD, HPUX, IRIX, OpenBSD and Sun.
2011-03-15 15:07:31 -04:00
David Cole
3430955d5f Add ProcessorCount support for QNX via pidin. (#11302)
Thanks to Rolf Eike Beer <eike@sf-mail.de> for the code snippet
parsing the pidin output.
2011-03-15 15:07:30 -04:00
David Cole
4d6418f683 If getconf returns empty output, try cpuinfo. (#11302)
Also, add message output (temporarily) for gathering data
on all the dashboard machines. After the test runs on the
overnight dashboards tonight, I'll comment out the message
output and commit/push again.
2011-03-15 15:07:30 -04:00
David Cole
9cc8ad99c9 Add correct module notice header.
Fixes failing ModuleNotices test.
2011-03-15 15:07:30 -04:00
Michael Wild
abbaa123aa Add module ProcessorCount.cmake (#11302)
Credit goes to David Cole ( http://www.kitware.com/blog/home/post/63 ).

Also add a script-based test of the new module.

Signed-off-by: Michael Wild <themiwi@users.sourceforge.net>
2011-03-15 15:07:30 -04:00