@@ -79,42 +79,9 @@ def physical_processor_count
7979 def compute_processor_count
8080 if Concurrent . on_jruby?
8181 java . lang . Runtime . getRuntime . availableProcessors
82- elsif Etc . respond_to? ( :nprocessors ) && ( nprocessor = Etc . nprocessors rescue nil )
83- nprocessor
8482 else
85- os_name = RbConfig ::CONFIG [ "target_os" ]
86- if os_name =~ /mingw|mswin/
87- require 'win32ole'
88- result = WIN32OLE . connect ( "winmgmts://" ) . ExecQuery (
89- "select NumberOfLogicalProcessors from Win32_Processor" )
90- result . to_enum . collect ( &:NumberOfLogicalProcessors ) . reduce ( :+ )
91- elsif File . readable? ( "/proc/cpuinfo" ) && ( cpuinfo_count = IO . read ( "/proc/cpuinfo" ) . scan ( /^processor/ ) . size ) > 0
92- cpuinfo_count
93- elsif File . executable? ( "/usr/bin/nproc" )
94- IO . popen ( "/usr/bin/nproc --all" , &:read ) . to_i
95- elsif File . executable? ( "/usr/bin/hwprefs" )
96- IO . popen ( "/usr/bin/hwprefs thread_count" , &:read ) . to_i
97- elsif File . executable? ( "/usr/sbin/psrinfo" )
98- IO . popen ( "/usr/sbin/psrinfo" , &:read ) . scan ( /^.*on-*line/ ) . size
99- elsif File . executable? ( "/usr/sbin/ioscan" )
100- IO . popen ( "/usr/sbin/ioscan -kC processor" , &:read ) . scan ( /^.*processor/ ) . size
101- elsif File . executable? ( "/usr/sbin/pmcycles" )
102- IO . popen ( "/usr/sbin/pmcycles -m" , &:read ) . count ( "\n " )
103- elsif File . executable? ( "/usr/sbin/lsdev" )
104- IO . popen ( "/usr/sbin/lsdev -Cc processor -S 1" , &:read ) . count ( "\n " )
105- elsif File . executable? ( "/usr/sbin/sysconf" ) and os_name =~ /irix/i
106- IO . popen ( "/usr/sbin/sysconf NPROC_ONLN" , &:read ) . to_i
107- elsif File . executable? ( "/usr/sbin/sysctl" )
108- IO . popen ( "/usr/sbin/sysctl -n hw.ncpu" , &:read ) . to_i
109- elsif File . executable? ( "/sbin/sysctl" )
110- IO . popen ( "/sbin/sysctl -n hw.ncpu" , &:read ) . to_i
111- else
112- # TODO (pitr-ch 05-Nov-2016): warn about failures
113- 1
114- end
83+ Etc . nprocessors
11584 end
116- rescue
117- return 1
11885 end
11986
12087 def compute_physical_processor_count
0 commit comments