Thread (13 messages) 13 messages, 3 authors, 2019-02-01

Re: [EXT] Default cacheline size for ARM

From: Honnappa Nagarahalli <hidden>
Date: 2019-01-14 07:47:44

On Sat, 2019-01-05 at 22:47 +0000, Honnappa Nagarahalli wrote:
quoted
quoted
On Fri, 2019-01-04 at 19:59 +0000, Yongseok Koh wrote:
quoted
---------------------------------------------------------------
----
---
Hi,

The cacheline size (RTE_CACHE_LINE_SIZE) for ARM CPUs is set to be
128B by default. Mellanox's BlueField is an ARM CPU having
Cortex-A72
and its CL size is 64B.
Just wondering how many devices are out there with 128B cache line? I
also have not heard about any future devices with 128B cache line. If
the majority is 64B, why not keep 64B as the default?
The problem is, In the armv8 spec the cache line size is IMPLEMENTATION
DEFINED. Marvell's embedded processors has 128B CL and Server processors
has 64B CL.

Assuming the defconfig_arm64-armv8a-linuxapp-gcc will be used by distro
folks then that configuration should support all the devices with
armv8.1 spec. For instance, marvells new chips are armv8.2 but we can not
make that as default.
What will happen in the future when we will have v9, v10 etc? I think the distro(generic/binary portable) config should get rid of v8.
Target specific configuration can be used for optimized target specific
configuration.

Or any other ideas for distro config.
quoted
quoted
quoted
I can add config/defconfig_arm64-bluefield-linuxapp-gcc for legacy
build anyway.
Makes sense.
quoted
For the meson build, I know it parses the Main ID register to
figure
out Implementor ID and Part Number. However, Mellanox doesn't
program
our own ID yet but we set the Part Number as 0xd08 (A72).
According to my folks, ARM's A53, A57, A72, and A73 designs all
have
64B CL. If that's true, can I push a patch to make the change?
Yes. Broadcom Stingray has the same situation i.e Use
flags_generic,
machine_args_generic
This will solve only the native compilation issue. It will not
address distro compilation (may be this is not your goal?).
See above.
quoted
quoted
quoted
Please comment.


Thanks,
Yongseok
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help