Re: Major memory performance decline from u-boot to barebox

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am Montag, dem 08.07.2024 um 13:41 +0200 schrieb Enrico Scholz:
> Lucas Stach <l.stach@xxxxxxxxxxxxxx> writes:
> 
> > > I have a karo tx6s module (imx6s, 512 MiB RAM) which is shipped with an
> > > ancient u-boot 2015 bootloader.
> > > 
> > > barebox 2024.07 works out-of-the box on it. But under the booted linux
> > > system a see a major regression in memory performance.
> > 
> > The most likely cause is that Barebox applies the workaround for ARM
> > erratum 845369, which has a major impact on streaming writes and thus
> > both memset and memcpy performance. The old U-Boot probably does not
> > include this workaround.
> > 
> > You may check this theory by removing the call to
> > enable_arm_errata_845369_war in imx6_cpu_lowlevel_init.
> 
> Thanks; after disabling this workaround, benchmarks are reporting high
> numbers again.
> 
Note that while benchmarks are affected heavily, most real workloads
don't exhibit a dramatic loss in performance, at least when they don't
move a lot of data via the CPU, which is a bad idea on this platform
anyway.

> Would it make sense to enable this workaround conditionally?  E.g. the
> imx6s is not affected by this erratum because it has only one core and
> no ACP.

Yes, this might make sense. The call activating the workaround in
imx6_cpu_lowlevel_init could be guarded by reading the number of
available CPU cores from the SCU, only installing the workaround if
there is more than a single CPU present.

Regards,
Lucas





[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux