
Solarflare
Server
Adapter
User
Guide
Solarflare
Adapters
on
Linux
Issue
20
©
Solarflare
Communications
2017
115
Example
2:
An
example
of
affinitizing
each
interface
to
a
CPU
on
the
same
package:
First
identify
which
interrupt
lines
are
servicing
which
CPU
and
IO
device:
#
cat
/proc/interrupts
|
grep
eth0
‐
123:
13302
0
1278131
0
PCI
‐
MSI
‐
X
eth0
‐
0
#
cat
/proc/interrupts
|
grep
eth1
‐
131:
0
24
0
0
PCI
‐
MSI
‐
X
eth1
‐
0
Find
CPUs
on
same
package
(have
same
‘package
‐
id’):
#
more
/sys/devices/system/cpu/cpu*/topology/physical_package_id
::::::::::::::
/sys/devices/system/cpu/cpu0/topology/physical_package_id
::::::::::::::
1
::::::::::::::
/sys/devices/system/cpu/cpu10/topology/physical_package_id
::::::::::::::
1
::::::::::::::
/sys/devices/system/cpu/cpu11/topology/physical_package_id
::::::::::::::
0
…
Having
determined
that
cpu0
and
cpu10
are
on
package
1,
we
can
assign
each
ethX
interface’s
MSI
‐
X
interrupt
to
its
own
CPU
on
the
same
package.
In
this
case
we
choose
package
1:
#
echo
1
>
/proc/irq/123/smp_affinity
#
1hex
is
bit
0
=
CPU0
#
echo
400
>
/proc/irq/131/smp_affinity
#
400hex
is
bit
10
=
CPU10
Other
Considerations
PCI
Express
Lane
Configurations
The
PCI
Express
(PCIe)
interface
used
to
connect
the
adapter
to
the
server
can
function
at
different
speeds
and
widths.
This
is
independent
of
the
physical
slot
size
used
to
connect
the
adapter.
The
possible
widths
are
multiples
x1,
x2,
x4,
x8
and
x16
lanes
of
(2.5Gbps
for
PCIe
Gen
1,
5.0
Gbps
for
PCIe
Gen
2
and
8.0Gbps
for
PCIe
Gen
3)
in
each
direction.
Solarflare
adapters
are
designed
for
x8
or
x16
lane
operation
.
On
some
server
motherboards,
choice
of
PCIe
slot
is
important.
This
is
because
some
slots
(including
those
that
are
physically
x8
or
x16
lanes)
may
only
electrically
support
x4
lanes.
In
x4
lane
slots,
Solarflare
PCIe
adapters
will
continue
to
operate,
but
not
at
full
speed.
The
Solarflare
driver
will
warn
if
it
detects
that
the
adapter
is
plugged
into
a
PCIe
slot
which
electrically
has
fewer
than
x8
lanes.
Solarflare
SFN5000
and
SFN6000
series
adapters
require
a
PCIe
Gen
2
x8
slot
for
optimal
operation.
Solarflare
SFN7000
and
SFN8000
series
adapters
require
a
PCIe
Gen
3
x8
or
x16
slot
for
optimal
performance.
The
Solarflare
driver
will
warn
if
it
detects
that
the
adapter
is
placed
in
a
sub
‐
optimal
slot.