Message ID | 20241231185346.180096-1-ju.o@free.fr |
---|---|
State | Accepted |
Delegated to: | Julien Olivain |
Headers | show |
Series | [1/1] configs/nvidia_bf3: set BR2_cortex_a78 | expand |
Le 31 décembre 2024 19:53:56 Julien Olivain <ju.o@free.fr> a écrit : > The nvidia BlueField-3 DPU includes Arm Cortex-A78 Hercules > processors. See [1]. > > The Cortex-A78 support was added in Buildroot in commit [2]. > > This commit adds BR2_cortex_a78=y in nvidia_bf3_defconfig to enable > optimisations for this processor. > > [1] https://www.nvidia.com/en-us/networking/products/data-processing-unit/ > [2] > https://gitlab.com/buildroot.org/buildroot/-/commit/f4690c2bfd7d51c614d09ff470e725c795bab980 > > Cc: Vincent Jardin <vjardin@free.fr> > Signed-off-by: Julien Olivain <ju.o@free.fr> > --- > Patch tested (compilation only) in: > https://gitlab.com/jolivain/buildroot/-/jobs/8748400651 > > Vincent: if you have access to this board, could you do an actual > runtime test and add a "Tested-by:", please? OK. I'll share some feedbacks early next week. Beside just booting on the board, do you have any specific tests your would like me to run ? Thanks for this update, Vincent > --- > configs/nvidia_bf3_defconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/configs/nvidia_bf3_defconfig b/configs/nvidia_bf3_defconfig > index 3f958c0062..e44bb55a3a 100644 > --- a/configs/nvidia_bf3_defconfig > +++ b/configs/nvidia_bf3_defconfig > @@ -1,4 +1,5 @@ > BR2_aarch64=y > +BR2_cortex_a78=y > BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_11=y > BR2_GLOBAL_PATCH_DIR="board/nvidia/bf3/patches" > BR2_DOWNLOAD_FORCE_CHECK_HASHES=y > -- > 2.47.1
Hi Vincent, and happy new year! On 31/12/2024 22:56, Vincent Jardin wrote: > Le 31 décembre 2024 19:53:56 Julien Olivain <ju.o@free.fr> a écrit : > > >> The nvidia BlueField-3 DPU includes Arm Cortex-A78 Hercules >> processors. See [1]. >> >> The Cortex-A78 support was added in Buildroot in commit [2]. >> >> This commit adds BR2_cortex_a78=y in nvidia_bf3_defconfig to enable >> optimisations for this processor. >> >> [1] >> > https://www.nvidia.com/en-us/networking/products/data-processing-unit/ >> >> [2] >> > https://gitlab.com/buildroot.org/buildroot/-/commit/f4690c2bfd7d51c614d09ff470e725c795bab980 >> >> >> Cc: Vincent Jardin <vjardin@free.fr> >> Signed-off-by: Julien Olivain <ju.o@free.fr> >> --- >> Patch tested (compilation only) in: >> https://gitlab.com/jolivain/buildroot/-/jobs/8748400651 >> >> Vincent: if you have access to this board, could you do an actual >> runtime test and add a "Tested-by:", please? > > OK. I'll share some feedbacks early next week. Beside just booting on > the board, do you have any specific tests your would like me to run ? On my side, just booting the board is sufficient, to make sure this patch is not breaking anything so it can be merged. Feel free to do extra tests. Declaring this Cortex-A78 CPU is passed to gcc. So it is supposed to enable A78 optimizations. I don't expect a major performance improvement on the defconfig alone (Kernel and BusyBox). But you could observe some improvement on some specific benchmarks... See: https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html#index-mcpu-2 Best regards, Julien.
On Tue, Dec 31, 2024 at 07:53:46PM +0100, Julien Olivain wrote: > The nvidia BlueField-3 DPU includes Arm Cortex-A78 Hercules > processors. See [1]. > > The Cortex-A78 support was added in Buildroot in commit [2]. > > This commit adds BR2_cortex_a78=y in nvidia_bf3_defconfig to enable > optimisations for this processor. > > [1] https://www.nvidia.com/en-us/networking/products/data-processing-unit/ > [2] https://gitlab.com/buildroot.org/buildroot/-/commit/f4690c2bfd7d51c614d09ff470e725c795bab980 > > Cc: Vincent Jardin <vjardin@free.fr> > Signed-off-by: Julien Olivain <ju.o@free.fr> Tested-by: Vincent Jardin <vjardin@free.fr> Thanks Julien for this suggestion. FYI, using gcc -dM -E - </dev/null | sort | grep ARM with both buildroot's gcc and nvidia's bf3 Ubuntu gcc, the diff is: +#define __ARM_FEATURE_ATOMICS 1 +#define __ARM_FEATURE_CRC32 1 +#define __ARM_FEATURE_DOTPROD 1 +#define __ARM_FEATURE_FP16_SCALAR_ARITHMETIC 1 +#define __ARM_FEATURE_FP16_VECTOR_ARITHMETIC 1 +#define __ARM_FEATURE_QRDMX 1 +#define __ARM_FEATURE_RCPC 1 that are available with buildroot gcc but not the one from Ubuntu's gcc best regards, Vincent > --- > Patch tested (compilation only) in: > https://gitlab.com/jolivain/buildroot/-/jobs/8748400651 > > Vincent: if you have access to this board, could you do an actual > runtime test and add a "Tested-by:", please? > --- > configs/nvidia_bf3_defconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/configs/nvidia_bf3_defconfig b/configs/nvidia_bf3_defconfig > index 3f958c0062..e44bb55a3a 100644 > --- a/configs/nvidia_bf3_defconfig > +++ b/configs/nvidia_bf3_defconfig > @@ -1,4 +1,5 @@ > BR2_aarch64=y > +BR2_cortex_a78=y > BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_11=y > BR2_GLOBAL_PATCH_DIR="board/nvidia/bf3/patches" > BR2_DOWNLOAD_FORCE_CHECK_HASHES=y > -- > 2.47.1 >
Hi Vincent, On 03/02/2025 12:49, Vincent Jardin wrote: > On Tue, Dec 31, 2024 at 07:53:46PM +0100, Julien Olivain wrote: >> The nvidia BlueField-3 DPU includes Arm Cortex-A78 Hercules >> processors. See [1]. >> >> The Cortex-A78 support was added in Buildroot in commit [2]. >> >> This commit adds BR2_cortex_a78=y in nvidia_bf3_defconfig to enable >> optimisations for this processor. >> >> [1] >> https://www.nvidia.com/en-us/networking/products/data-processing-unit/ >> [2] >> https://gitlab.com/buildroot.org/buildroot/-/commit/f4690c2bfd7d51c614d09ff470e725c795bab980 >> >> Cc: Vincent Jardin <vjardin@free.fr> >> Signed-off-by: Julien Olivain <ju.o@free.fr> > > Tested-by: Vincent Jardin <vjardin@free.fr> Thank you for testing! I applied this patch. Best regards, Julien.
diff --git a/configs/nvidia_bf3_defconfig b/configs/nvidia_bf3_defconfig index 3f958c0062..e44bb55a3a 100644 --- a/configs/nvidia_bf3_defconfig +++ b/configs/nvidia_bf3_defconfig @@ -1,4 +1,5 @@ BR2_aarch64=y +BR2_cortex_a78=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_11=y BR2_GLOBAL_PATCH_DIR="board/nvidia/bf3/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
The nvidia BlueField-3 DPU includes Arm Cortex-A78 Hercules processors. See [1]. The Cortex-A78 support was added in Buildroot in commit [2]. This commit adds BR2_cortex_a78=y in nvidia_bf3_defconfig to enable optimisations for this processor. [1] https://www.nvidia.com/en-us/networking/products/data-processing-unit/ [2] https://gitlab.com/buildroot.org/buildroot/-/commit/f4690c2bfd7d51c614d09ff470e725c795bab980 Cc: Vincent Jardin <vjardin@free.fr> Signed-off-by: Julien Olivain <ju.o@free.fr> --- Patch tested (compilation only) in: https://gitlab.com/jolivain/buildroot/-/jobs/8748400651 Vincent: if you have access to this board, could you do an actual runtime test and add a "Tested-by:", please? --- configs/nvidia_bf3_defconfig | 1 + 1 file changed, 1 insertion(+)