Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How many CPU cores does FreeBSD support?

119 views
Skip to first unread message

Eric Joyner

unread,
Jan 3, 2017, 4:39:06 PM1/3/17
to
I have an 11.0-RELEASE-p1 system with:

hw.model: Intel(R) Xeon Phi(TM) CPU 7250 @ 1.40GHz

It's got 68 cores, but with 4-way SMT, I think it should show up with 272
logical cores on FreeBSD.

However, in both kern.sched.topology_spec and hw.ncpu, it shows there are
only 223 cores.

Is the limit effectively 223 cores, even though I see some #define MAXCPU
256 lines in the source?

- Eric
_______________________________________________
freebsd-...@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questi...@freebsd.org"

Shane Ambler

unread,
Jan 4, 2017, 2:42:09 AM1/4/17
to
On 04/01/2017 08:08, Eric Joyner wrote:
> I have an 11.0-RELEASE-p1 system with:
>
> hw.model: Intel(R) Xeon Phi(TM) CPU 7250 @ 1.40GHz
>
> It's got 68 cores, but with 4-way SMT, I think it should show up with 272
> logical cores on FreeBSD.
>
> However, in both kern.sched.topology_spec and hw.ncpu, it shows there are
> only 223 cores.
>
> Is the limit effectively 223 cores, even though I see some #define MAXCPU
> 256 lines in the source?

You will probably find freebsd-current a better mailing list for this.

How many show in dmesg?

From https://svnweb.freebsd.org/base?view=revision&revision=270223
Bump MAXCPU on amd64 from 64 to 256. In practice APIC only permits 255
CPUs (IDs 0 through 254). Getting above that limit requires x2APIC.

Also note that changing MAXCPU breaks ABI compatability so you will
need to recompile.
https://svnweb.freebsd.org/base?view=revision&revision=284720

--
FreeBSD - the place to B...Software Developing

Shane Ambler

Eric Joyner

unread,
Jan 4, 2017, 1:54:02 PM1/4/17
to
Adding freebsd-current, because that's a good idea.

I see these lines in the beginning of dmesg:

MADT: Ignoring local APIC ID 256 (too high)


[907/911]
MADT: Ignoring local APIC ID 260 (too high)


[906/911]
MADT: Ignoring local APIC ID 264 (too high)


[905/911]
MADT: Ignoring local APIC ID 268 (too high)


[904/911]
MADT: Ignoring local APIC ID 272 (too high)


[903/911]
MADT: Ignoring local APIC ID 276 (too high)


[902/911]
MADT: Ignoring local APIC ID 280 (too high)


[901/911]
MADT: Ignoring local APIC ID 272 (too high)


[903/911]
MADT: Ignoring local APIC ID 276 (too high)


[902/911]
MADT: Ignoring local APIC ID 280 (too high)


[901/911]
MADT: Ignoring local APIC ID 276 (too high)


[902/911]
MADT: Ignoring local APIC ID 280 (too high)
MADT: Ignoring local APIC ID 284 (too high)
MADT: Ignoring local APIC ID 288 (too high)
MADT: Ignoring local APIC ID 292 (too high)
MADT: Ignoring local APIC ID 296 (too high)
MADT: Ignoring local APIC ID 300 (too high)
MADT: Ignoring local APIC ID 257 (too high)
MADT: Ignoring local APIC ID 261 (too high)
MADT: Ignoring local APIC ID 265 (too high)
MADT: Ignoring local APIC ID 269 (too high)
MADT: Ignoring local APIC ID 273 (too high)
MADT: Ignoring local APIC ID 277 (too high)
MADT: Ignoring local APIC ID 281 (too high)
MADT: Ignoring local APIC ID 285 (too high)
MADT: Ignoring local APIC ID 289 (too high)
MADT: Ignoring local APIC ID 293 (too high)
MADT: Ignoring local APIC ID 297 (too high)
MADT: Ignoring local APIC ID 301 (too high)
MADT: Ignoring local APIC ID 258 (too high)
MADT: Ignoring local APIC ID 262 (too high)
MADT: Ignoring local APIC ID 266 (too high)
MADT: Ignoring local APIC ID 270 (too high)
MADT: Ignoring local APIC ID 274 (too high)
MADT: Ignoring local APIC ID 278 (too high)
MADT: Ignoring local APIC ID 282 (too high)
MADT: Ignoring local APIC ID 286 (too high)
MADT: Ignoring local APIC ID 290 (too high)
MADT: Ignoring local APIC ID 294 (too high)
MADT: Ignoring local APIC ID 298 (too high)
MADT: Ignoring local APIC ID 302 (too high)
MADT: Ignoring local APIC ID 255 (too high)
MADT: Ignoring local APIC ID 259 (too high)
MADT: Ignoring local APIC ID 263 (too high)
MADT: Ignoring local APIC ID 267 (too high)
MADT: Ignoring local APIC ID 271 (too high)
MADT: Ignoring local APIC ID 275 (too high)
MADT: Ignoring local APIC ID 279 (too high)
MADT: Ignoring local APIC ID 283 (too high)
MADT: Ignoring local APIC ID 287 (too high)
MADT: Ignoring local APIC ID 291 (too high)
MADT: Ignoring local APIC ID 295 (too high)
MADT: Ignoring local APIC ID 299 (too high)
MADT: Ignoring local APIC ID 303 (too high)
Copyright (c) 1992-2016 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 11.0-RELEASE-p1 #0 r306420: Thu Sep 29 01:43:23 UTC 2016
ro...@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64
FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM
3.8.0)
SRAT: No CPU found for memory domain 1
VT(efifb): resolution 800x600
CPU: Intel(R) Xeon Phi(TM) CPU 7250 @ 1.40GHz (1396.80-MHz K8-class CPU)
Origin="GenuineIntel" Id=0x50671 Family=0x6 Model=0x57 Stepping=1

Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>

Features2=0x7ff8f39f<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,EST,TM2,SSSE3,FMA,CX16,xTPR,PDCM,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM>
AMD Features2=0x121<LAHF,ABM,Prefetch>
Structured Extended
Features=0x1c0d23ab<FSGSBASE,TSCADJ,BMI1,AVX2,SMEP,BMI2,ERMS,NFPUSG,AVX512F,RDSEED,ADX,AVX512PF,AVX512ER,AVX512CD>
Structured Extended Features2=0x1<PREFETCHWT1>
XSAVE Features=0x1<XSAVEOPT>
TSC: P-state invariant, performance statistics
real memory = 223332007936 (212986 MB)
avail memory = 216976429056 (206924 MB)
Event timer "LAPIC" quality 600
ACPI APIC Table: <INTEL S7200AP>
FreeBSD/SMP: Multiprocessor System Detected: 223 CPUs
FreeBSD/SMP: Non-uniform topology

It sounds like those MADT errors point to the problem?

- Eric

Steve O'Hara-Smith

unread,
Jan 4, 2017, 2:31:10 PM1/4/17
to
On Wed, 04 Jan 2017 18:53:23 +0000
Eric Joyner <e...@freebsd.org> wrote:

> MADT: Ignoring local APIC ID 303 (too high)

Hmm you said this machine has 272 cores so clearly the IDs have
gaps (I have no idea why there are gaps or where these IDs are allocated
though). I expect you'll find that 223 of the cores have IDs below 256 and
the remaining 49 have IDs of 256 and above and FreeBSD is not using those
cores.

--
Steve O'Hara-Smith <st...@sohara.org>
0 new messages