From mboxrd@z Thu Jan 1 00:00:00 1970 From: Muhammad Ali Subject: Re: Number of memory channels (EAL Options) Date: Mon, 24 Jun 2013 10:27:25 +0500 Message-ID: References: <20130620084343.03376efe@nehalam.linuxnetplumber.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=001a11c2ddd2fa3b9304dfdfaa3c Cc: dev-VfR2kkLFssw@public.gmane.org To: Stephen Hemminger Return-path: In-Reply-To: <20130620084343.03376efe-We1ePj4FEcvRI77zikRAJc56i+j3xesD0e7PPNI6Mm0@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" --001a11c2ddd2fa3b9304dfdfaa3c Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Thanks for your detailed reply, I just want to clear myself on Number of Memory Channels, These Memory channels are between CPU and Hugepages (RAM) or HugePages (RAM) and NIC (multi channel DMA) or both ? Thanks On Thu, Jun 20, 2013 at 8:43 PM, Stephen Hemminger < stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org> wrote: > On Thu, 20 Jun 2013 16:20:35 +0500 > Muhammad Ali wrote: > > > Hi everyone > > > > I am running DPDK sample application compiled in Fedora 14 environment. > > > > I have used following command to run the App > > > > ./ -c f -n 4 > > > > c=3D bitmask of cores to to be used. > > and > > n=3D number of memory channels > > > > Now what does 'n' actually defines ?. Is this the number of DMA channel= s > > between RAM (hugepages) and NIC. ? If not so then what it is ? > > > > How does number of memory channels will effect the performance ? > > > > BTW I am using hugepagesize=3D1G > > and Number of Hugepages=3D4 > > > > My question might be very basic, but I am totally confused. Please help > me > > out here. > > > > Thank you > > > > Regards > > Memory channels into the CPU, it controls the spread layout used by the > memory > allocator, therefore it is a performance optimization. > > Unfortunately, there is no good way to know what the number of memory > channels > exactly without hardware specs. The BIOS may know but it is not exported > in any > of the normal ACPI tables, and therefore not exposed by the OS. > > What we end up doing in our startup script was > "dmidecode -t 17 | grep -c 'Size:'" > which will give you some idea of the number of populated memory banks and > making > an educated guess on the number of channels. I.e 6 memory slots probably > implies 3 channels. > If someone has a better way I would love to hear it. > > Computing cpu bitmask isn't hard using "grep -c processor /proc/cpuinfo" > and a > little maths in a shell script. > > --=20 Muhammad Ali Software Development Engineer xFlow Research Inc. +92-323-965-4043 (GMT +5) *Skype: *ali.wcct This electronic message transmission contains information from the company that may be proprietary, confidential and/or privileged. The information is intended only for the use of the individuals or entity named above. If you are not the intended recipient, be aware that any disclosure, copying or distribution or use of the contents of this information is prohibited. If you have received this electronic transmission in error, please notify the sender immediately by replying to the address listed in the =93From:=94 field. --001a11c2ddd2fa3b9304dfdfaa3c Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable
Thanks for your detailed reply, I just= want to clear myself on Number of Memory Channels, These Memory channels a= re between

CPU and Hugepages (RAM)
or
HugePages = (RAM) and NIC=A0=A0 (multi channel DMA)
or
both

?

Thanks


On Thu, Jun 20, 2013 at 8:43 PM, Stephen Hemminger <<= a href=3D"mailto:stephen-OTpzqLSitTUnbdJkjeBofR2eb7JE58TQ@public.gmane.org" target=3D"_blank">stephen@netw= orkplumber.org> wrote:
On T= hu, 20 Jun 2013 16:20:35 +0500
Muhammad Ali <Muhammad= .Ali-Q3aQmz5HbGtiL9xFr9M+9AC/G2K4zDHf@public.gmane.org> wrote:

> Hi everyone
>
> I am running DPDK sample application compiled in Fedora 14 environment= .
>
> I have used following command to run the App
>
> ./<application> -c f -n 4
>
> c=3D bitmask of cores to to be used.
> and
> n=3D number of memory channels
>
> Now what does 'n' actually defines ?. Is this the number of DM= A channels
> between RAM (hugepages) and NIC. ? If not so then what it is ?
>
> How does number of memory channels will effect the performance ?
>
> BTW I am using hugepagesize=3D1G
> and Number of Hugepages=3D4
>
> My question might be very basic, but I am totally confused. Please hel= p me
> out here.
>
> Thank you
>
> Regards

Memory channels into the CPU, it controls the spread layout use= d by the memory
allocator, therefore it is a performance optimization.

Unfortunately, there is no good way to know what the number of memory chann= els
exactly without hardware specs. The BIOS may know but it is not exported in= any
of the normal ACPI tables, and therefore not exposed by the OS.

What we end up doing in our startup script was
=A0"dmidecode -t 17 | grep -c 'Size:'"
which will give you some idea of the number of populated memory banks and m= aking
an educated guess on the number of channels. I.e 6 memory slots probably im= plies 3 channels.
If someone has a better way I would love to hear it.

Computing cpu bitmask isn't hard using "grep -c processor /proc/cp= uinfo" and a
little maths in a shell script.




--
<= br>
Muhammad Ali
Software Development Engineer
= xFlow Research Inc.
+92-323-965-4043=A0(GMT +5)
Skype:=A0ali.wcct
This electroni= c message transmission contains information from the company that may be pr= oprietary, confidential and/or privileged. =A0The information is intended o= nly for the use of the individuals or entity named above. =A0If you are not= the intended recipient, be aware that any disclosure, copying or distribut= ion or use of the contents of this information is prohibited. =A0If you hav= e received this electronic transmission in error, please notify the sender = immediately by replying to the address listed in the =93From:=94 field.
--001a11c2ddd2fa3b9304dfdfaa3c--