All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Herrmann <andreas.herrmann3@amd.com>
To: Alex Chiang <achiang@hp.com>
Cc: Ingo Molnar <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-kernel@vger.kernel.org,
	Borislav Petkov <borislav.petkov@amd.com>,
	Brice Goglin <Brice.Goglin@inria.fr>
Subject: Re: [PATCH 0/8 v5] x86: Adapt CPU topology detection for AMD Magny-Cours
Date: Thu, 13 Aug 2009 11:21:51 +0200	[thread overview]
Message-ID: <20090813092151.GI7198@alberich.amd.com> (raw)
In-Reply-To: <20090812232207.GA32125@ldl.fc.hp.com>

On Wed, Aug 12, 2009 at 05:22:07PM -0600, Alex Chiang wrote:
> Hi Andreas,
> 
> * Andreas Herrmann <andreas.herrmann3@amd.com>:
> > Changes to previous patch set:
> > - added patch to swap semantic of cpu_node_siblings and core_siblings
> > - new patch to convert alloc/clear of cpumask to zalloc
> > - added patch to update cputopology documentation
> > 
> > Current patch set contains 8 patches:
> > - patch 1 adapts common code to show cpu_node_id,
> >   cpu_node_siblings and cpu_node_siblings_list in
> >   /sys/devices/system/cpu/cpu*/topology
> > - patch 2 prepares arch/x86 to provide cpu_node information
> > - patch 3 sets up cpu_node information for AMD Magny-Cours CPU
> 
> Do only Magny-Cours have the concept of a 'node' or should
> Istanbul have nodes too?

Magny-Cours will be the first AMD processor having two internal nodes.
Istanbul is one node per socket. See your output, node_id is always 0.
You have 6 cores per socket. And with each socket (every 6 cores)
the physical_id changes.

With Magny-Cours up 12 cores will have the same physical_id as they
are all on the same socket. But 6 cores out of that will have node_id
0 and the other 6 cores will have node_id 1.


Regards,
Andreas

-- 
Operating | Advanced Micro Devices GmbH
  System  | Karl-Hammerschmidt-Str. 34, 85609 Dornach b. München, Germany
 Research | Geschäftsführer: Thomas M. McCoy, Giuliano Meroni
  Center  | Sitz: Dornach, Gemeinde Aschheim, Landkreis München
  (OSRC)  | Registergericht München, HRB Nr. 43632

> Here is the output of my system with your patchset applied.
> First, a representative entry from /proc/cpuinfo.
> 
> processor	: 0
> vendor_id	: AuthenticAMD
> cpu family	: 16
> model		: 8
> model name	: Six-Core AMD Opteron(tm) Processor 8439 SE
> stepping	: 0
> cpu MHz		: 800.000
> cache size	: 512 KB
> physical id	: 0
> siblings	: 6
> node id		: 0
> core id		: 0
> cpu cores	: 6
> apicid		: 0
> initial apicid	: 0
> fpu		: yes
> fpu_exception	: yes
> cpuid level	: 5
> wp		: yes
> flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt
> bogomips	: 5586.65
> TLB size	: 1024 4K pages
> clflush size	: 64
> cache_alignment	: 64
> address sizes	: 48 bits physical, 48 bits virtual
> power management: ts ttp tm stc 100mhzsteps hwpstate
> 
> I do have the powernow_k8 module loaded too (so ignore the funny
> MHz output).
> 
> # lsmod | grep k8
> powernow_k8            13764  0 
> processor              47724  1 powernow_k8
> 
> Here is the output with just a few fields selected.
> 
> # cat /proc/cpuinfo | egrep '^node|^core|processor|^physical|apicid' 
> processor	: 0
> physical id	: 0
> node id		: 0
> core id		: 0
> apicid		: 0
> initial apicid	: 0
> processor	: 1
> physical id	: 1
> node id		: 0
> core id		: 0
> apicid		: 8
> initial apicid	: 8
> processor	: 2
> physical id	: 2
> node id		: 0
> core id		: 0
> apicid		: 16
> initial apicid	: 16
> processor	: 3
> physical id	: 3
> node id		: 0
> core id		: 0
> apicid		: 24
> initial apicid	: 24
> processor	: 4
> physical id	: 4
> node id		: 0
> core id		: 0
> apicid		: 32
> initial apicid	: 32
> processor	: 5
> physical id	: 5
> node id		: 0
> core id		: 0
> apicid		: 40
> initial apicid	: 40
> processor	: 6
> physical id	: 6
> node id		: 0
> core id		: 0
> apicid		: 48
> initial apicid	: 48
> processor	: 7
> physical id	: 7
> node id		: 0
> core id		: 0
> apicid		: 56
> initial apicid	: 56
> processor	: 8
> physical id	: 0
> node id		: 0
> core id		: 1
> apicid		: 1
> initial apicid	: 1
> processor	: 9
> physical id	: 1
> node id		: 0
> core id		: 1
> apicid		: 9
> initial apicid	: 9
> processor	: 10
> physical id	: 2
> node id		: 0
> core id		: 1
> apicid		: 17
> initial apicid	: 17
> processor	: 11
> physical id	: 3
> node id		: 0
> core id		: 1
> apicid		: 25
> initial apicid	: 25
> processor	: 12
> physical id	: 4
> node id		: 0
> core id		: 1
> apicid		: 33
> initial apicid	: 33
> processor	: 13
> physical id	: 5
> node id		: 0
> core id		: 1
> apicid		: 41
> initial apicid	: 41
> processor	: 14
> physical id	: 6
> node id		: 0
> core id		: 1
> apicid		: 49
> initial apicid	: 49
> processor	: 15
> physical id	: 7
> node id		: 0
> core id		: 1
> apicid		: 57
> initial apicid	: 57
> processor	: 16
> physical id	: 0
> node id		: 0
> core id		: 2
> apicid		: 2
> initial apicid	: 2
> processor	: 17
> physical id	: 1
> node id		: 0
> core id		: 2
> apicid		: 10
> initial apicid	: 10
> processor	: 18
> physical id	: 2
> node id		: 0
> core id		: 2
> apicid		: 18
> initial apicid	: 18
> processor	: 19
> physical id	: 3
> node id		: 0
> core id		: 2
> apicid		: 26
> initial apicid	: 26
> processor	: 20
> physical id	: 4
> node id		: 0
> core id		: 2
> apicid		: 34
> initial apicid	: 34
> processor	: 21
> physical id	: 5
> node id		: 0
> core id		: 2
> apicid		: 42
> initial apicid	: 42
> processor	: 22
> physical id	: 6
> node id		: 0
> core id		: 2
> apicid		: 50
> initial apicid	: 50
> processor	: 23
> physical id	: 7
> node id		: 0
> core id		: 2
> apicid		: 58
> initial apicid	: 58
> processor	: 24
> physical id	: 0
> node id		: 0
> core id		: 3
> apicid		: 3
> initial apicid	: 3
> processor	: 25
> physical id	: 1
> node id		: 0
> core id		: 3
> apicid		: 11
> initial apicid	: 11
> processor	: 26
> physical id	: 2
> node id		: 0
> core id		: 3
> apicid		: 19
> initial apicid	: 19
> processor	: 27
> physical id	: 3
> node id		: 0
> core id		: 3
> apicid		: 27
> initial apicid	: 27
> processor	: 28
> physical id	: 4
> node id		: 0
> core id		: 3
> apicid		: 35
> initial apicid	: 35
> processor	: 29
> physical id	: 5
> node id		: 0
> core id		: 3
> apicid		: 43
> initial apicid	: 43
> processor	: 30
> physical id	: 6
> node id		: 0
> core id		: 3
> apicid		: 51
> initial apicid	: 51
> processor	: 31
> physical id	: 7
> node id		: 0
> core id		: 3
> apicid		: 59
> initial apicid	: 59
> processor	: 32
> physical id	: 0
> node id		: 0
> core id		: 4
> apicid		: 4
> initial apicid	: 4
> processor	: 33
> physical id	: 1
> node id		: 0
> core id		: 4
> apicid		: 12
> initial apicid	: 12
> processor	: 34
> physical id	: 2
> node id		: 0
> core id		: 4
> apicid		: 20
> initial apicid	: 20
> processor	: 35
> physical id	: 3
> node id		: 0
> core id		: 4
> apicid		: 28
> initial apicid	: 28
> processor	: 36
> physical id	: 4
> node id		: 0
> core id		: 4
> apicid		: 36
> initial apicid	: 36
> processor	: 37
> physical id	: 5
> node id		: 0
> core id		: 4
> apicid		: 44
> initial apicid	: 44
> processor	: 38
> physical id	: 6
> node id		: 0
> core id		: 4
> apicid		: 52
> initial apicid	: 52
> processor	: 39
> physical id	: 7
> node id		: 0
> core id		: 4
> apicid		: 60
> initial apicid	: 60
> processor	: 40
> physical id	: 0
> node id		: 0
> core id		: 5
> apicid		: 5
> initial apicid	: 5
> processor	: 41
> physical id	: 1
> node id		: 0
> core id		: 5
> apicid		: 13
> initial apicid	: 13
> processor	: 42
> physical id	: 2
> node id		: 0
> core id		: 5
> apicid		: 21
> initial apicid	: 21
> processor	: 43
> physical id	: 3
> node id		: 0
> core id		: 5
> apicid		: 29
> initial apicid	: 29
> processor	: 44
> physical id	: 4
> node id		: 0
> core id		: 5
> apicid		: 37
> initial apicid	: 37
> processor	: 45
> physical id	: 5
> node id		: 0
> core id		: 5
> apicid		: 45
> initial apicid	: 45
> processor	: 46
> physical id	: 6
> node id		: 0
> core id		: 5
> apicid		: 53
> initial apicid	: 53
> processor	: 47
> physical id	: 7
> node id		: 0
> core id		: 5
> apicid		: 61
> initial apicid	: 61
> 
> Thanks.
> 
> /ac
> 
> 




      reply	other threads:[~2009-08-13  9:27 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-07 12:56 [PATCH 0/8 v5] x86: Adapt CPU topology detection for AMD Magny-Cours Andreas Herrmann
2009-08-07 12:57 ` [PATCH 1/8] topology: Introduce cpu_node information for multi-node processors Andreas Herrmann
2009-08-07 12:57 ` [PATCH 2/8] x86: Provide CPU topology " Andreas Herrmann
2009-08-07 12:58 ` [PATCH 3/8] x86: Add cpu_node topology detection for AMD Magny-Cours Andreas Herrmann
2009-08-07 12:59 ` [PATCH 4/8] x86, topology: Swap semantic of core_siblings and cpu_node_siblings Andreas Herrmann
2009-08-07 13:02 ` [PATCH 5/8] x86, cacheinfo: Fixup L3 cache information for AMD multi-node processors Andreas Herrmann
2009-08-07 13:04 ` [PATCH 6/8] x86, mcheck: Make use of cpu_node_mask instead of cpu_core_mask Andreas Herrmann
2009-08-07 13:05 ` [PATCH 7/8] x86, smpboot: use zalloc_cpumask_var instead of alloc/clear Andreas Herrmann
2009-08-07 13:05 ` [PATCH 8/8] topology: Update CPU topology documentation Andreas Herrmann
2009-08-12 23:22 ` [PATCH 0/8 v5] x86: Adapt CPU topology detection for AMD Magny-Cours Alex Chiang
2009-08-13  9:21   ` Andreas Herrmann [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090813092151.GI7198@alberich.amd.com \
    --to=andreas.herrmann3@amd.com \
    --cc=Brice.Goglin@inria.fr \
    --cc=achiang@hp.com \
    --cc=borislav.petkov@amd.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.