* [dpdk-dev] Number of memory channels per processor socket?
@ 2015-06-28 9:54 Abhishek Verma
2015-06-28 23:23 ` Keunhong Lee
2015-06-28 23:26 ` Keunhong Lee
0 siblings, 2 replies; 5+ messages in thread
From: Abhishek Verma @ 2015-06-28 9:54 UTC (permalink / raw)
To: dev
Hi,
I am new to DPDK and i tried searching the archives in case this had been
discussed but couldnt find any references and hence this email:
What is the significance of " -n NUM: Number of memory channels per
processor socket" which is passed as an EAL option? I have a virtual
machine (VM) spawned using VirtualBox and i am trying to use DPDK to get
faster access to packets there. I did lscpu, but that didnt give me
anything interesting that i could use here:
abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$ sudo
lscpu
[sudo] password for abhishekV:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 58
Stepping: 9
CPU MHz: 2594.017
BogoMIPS: 5188.03
L1d cache: 32K
L1d cache: 32K
L2d cache: 6144K
NUMA node0 CPU(s): 0,1
abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
I understand that i have two cores and hence should use -c 1 (since i have
cores 0 and 1). However, i dont understand what to give as the "-n" option.
Is it always 4?
Thanks, Abhishek
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] Number of memory channels per processor socket?
2015-06-28 9:54 [dpdk-dev] Number of memory channels per processor socket? Abhishek Verma
@ 2015-06-28 23:23 ` Keunhong Lee
2015-06-28 23:46 ` Abhishek Verma
2015-06-28 23:26 ` Keunhong Lee
1 sibling, 1 reply; 5+ messages in thread
From: Keunhong Lee @ 2015-06-28 23:23 UTC (permalink / raw)
To: Abhishek Verma; +Cc: dev
See your motherboard spec.
For example, I'm using Intel 5930K with ASUS X99 Delux Motherboard (x99
chipset).
This site https://www.asus.com/us/Motherboards/X99DELUXE/specifications/
tells that
"Quad Channel Memory Architecture "
which means that "-n 4" is the correct configuration for me.
To fully use quad channel memory, I have to use 4 separated DRAM,
installed on different memory slots of my motherboard.
-n option optimizes memory bank access pattern for datastructures.
Since most motherboards support dual or quad memory channel,
-n 4 will work for most systems. (Only few motherboards support tri-channel
memory)
I hope that this information is useful to you.
Keunhong.
2015-06-28 18:54 GMT+09:00 Abhishek Verma <abhishekv.verma@gmail.com>:
> Hi,
>
> I am new to DPDK and i tried searching the archives in case this had been
> discussed but couldnt find any references and hence this email:
>
> What is the significance of " -n NUM: Number of memory channels per
> processor socket" which is passed as an EAL option? I have a virtual
> machine (VM) spawned using VirtualBox and i am trying to use DPDK to get
> faster access to packets there. I did lscpu, but that didnt give me
> anything interesting that i could use here:
>
> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
> sudo
> lscpu
> [sudo] password for abhishekV:
>
> Architecture: x86_64
> CPU op-mode(s): 32-bit, 64-bit
> Byte Order: Little Endian
> CPU(s): 2
> On-line CPU(s) list: 0,1
> Thread(s) per core: 1
> Core(s) per socket: 2
> Socket(s): 1
> NUMA node(s): 1
> Vendor ID: GenuineIntel
> CPU family: 6
> Model: 58
> Stepping: 9
> CPU MHz: 2594.017
> BogoMIPS: 5188.03
> L1d cache: 32K
> L1d cache: 32K
> L2d cache: 6144K
> NUMA node0 CPU(s): 0,1
> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>
> I understand that i have two cores and hence should use -c 1 (since i have
> cores 0 and 1). However, i dont understand what to give as the "-n" option.
> Is it always 4?
>
> Thanks, Abhishek
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] Number of memory channels per processor socket?
2015-06-28 23:23 ` Keunhong Lee
@ 2015-06-28 23:46 ` Abhishek Verma
2015-06-29 0:13 ` Keunhong Lee
0 siblings, 1 reply; 5+ messages in thread
From: Abhishek Verma @ 2015-06-28 23:46 UTC (permalink / raw)
To: Keunhong Lee; +Cc: dev
Thanks Keunhong.
How do i get the motherboard spec on a virtual machine thats spawned on the
cloud, for example Amazon EC2?
Cheers, Abhishek
On Mon, Jun 29, 2015 at 4:53 AM, Keunhong Lee <dlrmsghd@gmail.com> wrote:
> See your motherboard spec.
> For example, I'm using Intel 5930K with ASUS X99 Delux Motherboard (x99
> chipset).
> This site https://www.asus.com/us/Motherboards/X99DELUXE/specifications/
> tells that
> "Quad Channel Memory Architecture "
> which means that "-n 4" is the correct configuration for me.
>
> To fully use quad channel memory, I have to use 4 separated DRAM,
> installed on different memory slots of my motherboard.
>
> -n option optimizes memory bank access pattern for datastructures.
> Since most motherboards support dual or quad memory channel,
> -n 4 will work for most systems. (Only few motherboards support
> tri-channel memory)
>
> I hope that this information is useful to you.
> Keunhong.
>
>
>
> 2015-06-28 18:54 GMT+09:00 Abhishek Verma <abhishekv.verma@gmail.com>:
>
>> Hi,
>>
>> I am new to DPDK and i tried searching the archives in case this had been
>> discussed but couldnt find any references and hence this email:
>>
>> What is the significance of " -n NUM: Number of memory channels per
>> processor socket" which is passed as an EAL option? I have a virtual
>> machine (VM) spawned using VirtualBox and i am trying to use DPDK to get
>> faster access to packets there. I did lscpu, but that didnt give me
>> anything interesting that i could use here:
>>
>> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>> sudo
>> lscpu
>> [sudo] password for abhishekV:
>>
>> Architecture: x86_64
>> CPU op-mode(s): 32-bit, 64-bit
>> Byte Order: Little Endian
>> CPU(s): 2
>> On-line CPU(s) list: 0,1
>> Thread(s) per core: 1
>> Core(s) per socket: 2
>> Socket(s): 1
>> NUMA node(s): 1
>> Vendor ID: GenuineIntel
>> CPU family: 6
>> Model: 58
>> Stepping: 9
>> CPU MHz: 2594.017
>> BogoMIPS: 5188.03
>> L1d cache: 32K
>> L1d cache: 32K
>> L2d cache: 6144K
>> NUMA node0 CPU(s): 0,1
>> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>>
>> I understand that i have two cores and hence should use -c 1 (since i have
>> cores 0 and 1). However, i dont understand what to give as the "-n"
>> option.
>> Is it always 4?
>>
>> Thanks, Abhishek
>>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] Number of memory channels per processor socket?
2015-06-28 23:46 ` Abhishek Verma
@ 2015-06-29 0:13 ` Keunhong Lee
0 siblings, 0 replies; 5+ messages in thread
From: Keunhong Lee @ 2015-06-29 0:13 UTC (permalink / raw)
To: Abhishek Verma; +Cc: dev
Currently, I have no idea to find out memory mapping of virtual machines.
I think -n 4 will work on both dual and quad channel memory.
This optimizes entries of mempool or ring structure to interleave memory
access into n-ways.
I think interleaving in 4 ways will also include 2 way interleaving.
Keunhong.
2015-06-29 8:46 GMT+09:00 Abhishek Verma <abhishekv.verma@gmail.com>:
> Thanks Keunhong.
>
> How do i get the motherboard spec on a virtual machine thats spawned on
> the cloud, for example Amazon EC2?
>
> Cheers, Abhishek
>
>
> On Mon, Jun 29, 2015 at 4:53 AM, Keunhong Lee <dlrmsghd@gmail.com> wrote:
>
>> See your motherboard spec.
>> For example, I'm using Intel 5930K with ASUS X99 Delux Motherboard (x99
>> chipset).
>> This site https://www.asus.com/us/Motherboards/X99DELUXE/specifications/
>> tells that
>> "Quad Channel Memory Architecture "
>> which means that "-n 4" is the correct configuration for me.
>>
>> To fully use quad channel memory, I have to use 4 separated DRAM,
>> installed on different memory slots of my motherboard.
>>
>> -n option optimizes memory bank access pattern for datastructures.
>> Since most motherboards support dual or quad memory channel,
>> -n 4 will work for most systems. (Only few motherboards support
>> tri-channel memory)
>>
>> I hope that this information is useful to you.
>> Keunhong.
>>
>>
>>
>> 2015-06-28 18:54 GMT+09:00 Abhishek Verma <abhishekv.verma@gmail.com>:
>>
>>> Hi,
>>>
>>> I am new to DPDK and i tried searching the archives in case this had been
>>> discussed but couldnt find any references and hence this email:
>>>
>>> What is the significance of " -n NUM: Number of memory channels per
>>> processor socket" which is passed as an EAL option? I have a virtual
>>> machine (VM) spawned using VirtualBox and i am trying to use DPDK to get
>>> faster access to packets there. I did lscpu, but that didnt give me
>>> anything interesting that i could use here:
>>>
>>> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>>> sudo
>>> lscpu
>>> [sudo] password for abhishekV:
>>>
>>> Architecture: x86_64
>>> CPU op-mode(s): 32-bit, 64-bit
>>> Byte Order: Little Endian
>>> CPU(s): 2
>>> On-line CPU(s) list: 0,1
>>> Thread(s) per core: 1
>>> Core(s) per socket: 2
>>> Socket(s): 1
>>> NUMA node(s): 1
>>> Vendor ID: GenuineIntel
>>> CPU family: 6
>>> Model: 58
>>> Stepping: 9
>>> CPU MHz: 2594.017
>>> BogoMIPS: 5188.03
>>> L1d cache: 32K
>>> L1d cache: 32K
>>> L2d cache: 6144K
>>> NUMA node0 CPU(s): 0,1
>>> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>>>
>>> I understand that i have two cores and hence should use -c 1 (since i
>>> have
>>> cores 0 and 1). However, i dont understand what to give as the "-n"
>>> option.
>>> Is it always 4?
>>>
>>> Thanks, Abhishek
>>>
>>
>>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] Number of memory channels per processor socket?
2015-06-28 9:54 [dpdk-dev] Number of memory channels per processor socket? Abhishek Verma
2015-06-28 23:23 ` Keunhong Lee
@ 2015-06-28 23:26 ` Keunhong Lee
1 sibling, 0 replies; 5+ messages in thread
From: Keunhong Lee @ 2015-06-28 23:26 UTC (permalink / raw)
To: Abhishek Verma; +Cc: dev
...and -c option gives 'masking' for CPUs.
-c 1 will only activate single core (especially second core) of your system.
If you want to activate both core, you have to give the mask '11'b ('3' in
decimal).
2015-06-28 18:54 GMT+09:00 Abhishek Verma <abhishekv.verma@gmail.com>:
> Hi,
>
> I am new to DPDK and i tried searching the archives in case this had been
> discussed but couldnt find any references and hence this email:
>
> What is the significance of " -n NUM: Number of memory channels per
> processor socket" which is passed as an EAL option? I have a virtual
> machine (VM) spawned using VirtualBox and i am trying to use DPDK to get
> faster access to packets there. I did lscpu, but that didnt give me
> anything interesting that i could use here:
>
> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
> sudo
> lscpu
> [sudo] password for abhishekV:
>
> Architecture: x86_64
> CPU op-mode(s): 32-bit, 64-bit
> Byte Order: Little Endian
> CPU(s): 2
> On-line CPU(s) list: 0,1
> Thread(s) per core: 1
> Core(s) per socket: 2
> Socket(s): 1
> NUMA node(s): 1
> Vendor ID: GenuineIntel
> CPU family: 6
> Model: 58
> Stepping: 9
> CPU MHz: 2594.017
> BogoMIPS: 5188.03
> L1d cache: 32K
> L1d cache: 32K
> L2d cache: 6144K
> NUMA node0 CPU(s): 0,1
> abhishekV@VirtualBox:~/dpdk/dpdk-2.0.0/x86_64-native-linuxapp-gcc/app$
>
> I understand that i have two cores and hence should use -c 1 (since i have
> cores 0 and 1). However, i dont understand what to give as the "-n" option.
> Is it always 4?
>
> Thanks, Abhishek
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-06-29 0:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-28 9:54 [dpdk-dev] Number of memory channels per processor socket? Abhishek Verma
2015-06-28 23:23 ` Keunhong Lee
2015-06-28 23:46 ` Abhishek Verma
2015-06-29 0:13 ` Keunhong Lee
2015-06-28 23:26 ` Keunhong Lee
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).