Just a wild guess: this may be caused by x86 emulation on em64t
(x86_64). SDK docs advise to use GetNativeSystemInfo() in such case,
instead of currently used GetSystemInfo(). (See
vm\port\src\misc\win\sysinfo.c).


2006/11/1, Xiao-Feng Li <[EMAIL PROTECTED]>:
Yes, both SUN JRE and DRLVM returns 1 for me. Java API has the same
problem. :-) Probably it should introduce an
availableCoresPerProcessor() or something more comprehensive.

Thanks,
xiaofeng

On 11/1/06, Mikhail Fursov <[EMAIL PROTECTED]> wrote:
> On 11/1/06, Xiao-Feng Li <[EMAIL PROTECTED]> wrote:
> >
> > Are you using Linux? Don't know why it doesn't work for my Pentium D.
> > Actually my Windows seems not show two processors at first, while the
> > API may depend on OS. My Linux has no problem with this.
> >
> > On the other hand, even your case is undesirable for Hyperthreading
> > since we probably want more detailed info about processor(s) since
> > hyperthreading sometimes wants to be treated differently than real SMP
> > (or dual-core).  I believe there is such kind of API available
> > somewhere, at least NUMA support of Linux from SGI has it.
> >
>
> I use WindowsXP and here is more detailed info about CPU:
> Number of processors  1
> Number of cores  1 per processor
> Number of threads  2 (max 2) per processor
> Name  Intel Pentium 4 660
> Code Name  Prescott
> Specification  Intel(R) Pentium(R) 4 CPU 3.60GHz
> Package  Socket 775 LGA
>
> And I see 2 CPUs in Windows Task Manager.
>
> Did you tried Runtime.getRuntime().availableProcessors()  ?
>
>
>
> --
> Mikhail Fursov
>
>

Reply via email to