Hello,
I have a mysql 7.1.4b cluster with 2 data nodes and 4 mysql access nodes.
All nodes are on single cpu dual-core servers.
The data node servers have a xover between them on eth1 for the cluster. eth0 is for all other traffic.
I'm confused as to the following:
1. If I should use ndbmtd instead of ndbd being that I only have 2 cores.
2. Which core(s) I should lock the execute thread(s) to.
I've read 2 recommendations on this, 1 that says put the execute thread on the core with the least amount of interrupts and 1 that says put it on the core that does NOT host the nics.
If i follow recommendation #1 with my interrupt data below, i should put the thread on core1.
If i follow recommendation #2 with my interrupt data below, i should put the thread on core0.
Which would be more beneficial in my setup?
And would it to better or worse to use ndbmtd and set the max execution threads to 2 and put the execute thread on both core0 and 1?
On another note, if i up the mysql access servers to 6, should i up the data nodes to 3, or leave them at 2
Thanks!
CPU0 CPU1
0: 4136585749 0 IO-APIC-edge timer
1: 3 0 IO-APIC-edge i8042
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-level acpi
12: 4 0 IO-APIC-edge i8042
50: 0 0 IO-APIC-level uhci_hcd:usb3
58: 64 43670223 IO-APIC-level ata_piix
66: 69598793 0 IO-APIC-level pata_sil680
74: 3886 1888635322 PCI-MSI eth0
82: 4 468396497 PCI-MSI eth1
169: 5683 127625022 IO-APIC-level ioc0
233: 67 6 IO-APIC-level ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb4
NMI: 577877 1318171
LOC: 4136216637 4136216597
ERR: 0
MIS: 0
I have a mysql 7.1.4b cluster with 2 data nodes and 4 mysql access nodes.
All nodes are on single cpu dual-core servers.
The data node servers have a xover between them on eth1 for the cluster. eth0 is for all other traffic.
I'm confused as to the following:
1. If I should use ndbmtd instead of ndbd being that I only have 2 cores.
2. Which core(s) I should lock the execute thread(s) to.
I've read 2 recommendations on this, 1 that says put the execute thread on the core with the least amount of interrupts and 1 that says put it on the core that does NOT host the nics.
If i follow recommendation #1 with my interrupt data below, i should put the thread on core1.
If i follow recommendation #2 with my interrupt data below, i should put the thread on core0.
Which would be more beneficial in my setup?
And would it to better or worse to use ndbmtd and set the max execution threads to 2 and put the execute thread on both core0 and 1?
On another note, if i up the mysql access servers to 6, should i up the data nodes to 3, or leave them at 2
Thanks!
CPU0 CPU1
0: 4136585749 0 IO-APIC-edge timer
1: 3 0 IO-APIC-edge i8042
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-level acpi
12: 4 0 IO-APIC-edge i8042
50: 0 0 IO-APIC-level uhci_hcd:usb3
58: 64 43670223 IO-APIC-level ata_piix
66: 69598793 0 IO-APIC-level pata_sil680
74: 3886 1888635322 PCI-MSI eth0
82: 4 468396497 PCI-MSI eth1
169: 5683 127625022 IO-APIC-level ioc0
233: 67 6 IO-APIC-level ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb4
NMI: 577877 1318171
LOC: 4136216637 4136216597
ERR: 0
MIS: 0