Overo EarthSTORM performance / AM3703 processor

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Overo EarthSTORM performance / AM3703 processor

Zipper Fish
Dear gumstix-users,

Having recently switched to an Overo EarthSTORM board with an AM3703 processor, I'm noticing something strange.

The EarthSTORM runs at 800MHz compared to the previous Earth, which ran at 600MHz, a 33% increase.

Yet, a program that previously used between 17-25% CPU now uses around 40%. It has also become and non-responsive at times.

With the same NAND image installed on a Overo Earth (with the previous 3503 processor), the same program runs at normal speed, uses less CPU, and is instantly responsive with no lag to key strokes or other events.

Also, the Linux kernel takes noticeably longer to start.

It is almost as though the CPU is not running at full speed, yet the cpufreq info in /proc appears to indicate that it is running at 800MHz.

Here is the /proc/cpuinfo output from each board:

Gumstix Overo Storm AM3703
==========================

processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 770.04
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic OMAP36xx (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


Gumstix Overo 3503
==================

processor       : 0
model name      : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 577.53
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3

Hardware        : Generic OMAP3 (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000

Has anybody noticed something similar?

Thank you & best wishes.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|

Re: Overo EarthSTORM performance / AM3703 processor

Zipper Fish
Is it possible the AM3703 processor clocks are not getting initialized correctly?

In the board-overo.c file in the kernel 3.18.18 code, I am seeing the following:

MACHINE_START(OVERO, "Gumstix Overo")
.atag_offset = 0x100,
.reserve = omap_reserve,
.map_io = omap3_map_io,
.init_early = omap35xx_init_early,
.init_irq = omap3_init_irq,
.init_machine = overo_init,
.init_late = omap35xx_init_late,
.init_time = omap3_sync32k_timer_init,
.restart = omap3xxx_restart,
MACHINE_END


The .init_early function is being set to omap35xx_init_early unconditionally. There is a omap3630_init_early function available.

Any help would be appreciated... currently, this new Gumstix Overo EarthSTORM is useless because it can't even run software that ran fine on the older Overo Earth.

Thank you


On Mon, Oct 17, 2016 at 6:22 PM, Zipper Fish <[hidden email]> wrote:
Dear gumstix-users,

Having recently switched to an Overo EarthSTORM board with an AM3703 processor, I'm noticing something strange.

The EarthSTORM runs at 800MHz compared to the previous Earth, which ran at 600MHz, a 33% increase.

Yet, a program that previously used between 17-25% CPU now uses around 40%. It has also become and non-responsive at times.

With the same NAND image installed on a Overo Earth (with the previous 3503 processor), the same program runs at normal speed, uses less CPU, and is instantly responsive with no lag to key strokes or other events.

Also, the Linux kernel takes noticeably longer to start.

It is almost as though the CPU is not running at full speed, yet the cpufreq info in /proc appears to indicate that it is running at 800MHz.

Here is the /proc/cpuinfo output from each board:

Gumstix Overo Storm AM3703
==========================

processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 770.04
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic OMAP36xx (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


Gumstix Overo 3503
==================

processor       : 0
model name      : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 577.53
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3

Hardware        : Generic OMAP3 (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000

Has anybody noticed something similar?

Thank you & best wishes.



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|

Re: Overo EarthSTORM performance / AM3703 processor

Zipper Fish
Quick follow up:

Having spent 1/2 the day trying to figure out what is happening, I have learned the following.

(1) When booting Linux directly from SPL (a.k.a. U-Boot "Falcon mode") everything runs very slow. Even though cpufreq reports that the 3703 processor is running at 800MHz, that does not seem to be the case. Programs that used to take a small amount of CPU (15-25%) on the old 3503-based Gumstix Earth will use > 40% CPU, which is completely unusable.

(2) When booting Linux using the regular U-Boot way (as it's done with the stock configuration from Gumstix) things seem to run at the expected speed. Programs seem to use a bit less CPU (10-20%) and things seem a bit faster overall.

So it seems like SPL is missing some key initialization steps that the full blown U-Boot performs. I spent a bit of time trying to follow the initialization process, but not being an OMAP hardware expert it is hard to make any progress.

This is with U-Boot 2015.07.

Would any of the Gumstix experts have any wisdom to share?

I'd like to keep using Falcon mode to start up the Overo board as fast as possible.

Thank you & best regards


On Tue, Oct 18, 2016 at 10:59 AM, Zipper Fish <[hidden email]> wrote:
Is it possible the AM3703 processor clocks are not getting initialized correctly?

In the board-overo.c file in the kernel 3.18.18 code, I am seeing the following:

MACHINE_START(OVERO, "Gumstix Overo")
.atag_offset = 0x100,
.reserve = omap_reserve,
.map_io = omap3_map_io,
.init_early = omap35xx_init_early,
.init_irq = omap3_init_irq,
.init_machine = overo_init,
.init_late = omap35xx_init_late,
.init_time = omap3_sync32k_timer_init,
.restart = omap3xxx_restart,
MACHINE_END


The .init_early function is being set to omap35xx_init_early unconditionally. There is a omap3630_init_early function available.

Any help would be appreciated... currently, this new Gumstix Overo EarthSTORM is useless because it can't even run software that ran fine on the older Overo Earth.

Thank you


On Mon, Oct 17, 2016 at 6:22 PM, Zipper Fish <[hidden email]> wrote:
Dear gumstix-users,

Having recently switched to an Overo EarthSTORM board with an AM3703 processor, I'm noticing something strange.

The EarthSTORM runs at 800MHz compared to the previous Earth, which ran at 600MHz, a 33% increase.

Yet, a program that previously used between 17-25% CPU now uses around 40%. It has also become and non-responsive at times.

With the same NAND image installed on a Overo Earth (with the previous 3503 processor), the same program runs at normal speed, uses less CPU, and is instantly responsive with no lag to key strokes or other events.

Also, the Linux kernel takes noticeably longer to start.

It is almost as though the CPU is not running at full speed, yet the cpufreq info in /proc appears to indicate that it is running at 800MHz.

Here is the /proc/cpuinfo output from each board:

Gumstix Overo Storm AM3703
==========================

processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 770.04
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic OMAP36xx (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


Gumstix Overo 3503
==================

processor       : 0
model name      : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 577.53
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3

Hardware        : Generic OMAP3 (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000

Has anybody noticed something similar?

Thank you & best wishes.




------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|

Re: Overo EarthSTORM performance / AM3703 processor

Ron Greer
I'm just curious about your setup as I might try testing it with some boards we have.
Are you using a Device Tree kernel, or a legacy kernel?
There are quite a few things in the latest DT kernel that didn't get ported back to work work in legacy mode (ie. booting from uImage).

Are you saying that if you use the exact same kernel image, just without u-boot, the board's set up properly? 
Are the kernel boot parameters the same on the command line between the two methods (you can check by looking at /proc/cmdline)?
Is the proper device tree being used?

I haven't used Falcon mode, but are you building your SPL from the gumstix u-boot source?

Ron

On Tue, Oct 18, 2016 at 12:16 PM Zipper Fish <[hidden email]> wrote:
Quick follow up:

Having spent 1/2 the day trying to figure out what is happening, I have learned the following.

(1) When booting Linux directly from SPL (a.k.a. U-Boot "Falcon mode") everything runs very slow. Even though cpufreq reports that the 3703 processor is running at 800MHz, that does not seem to be the case. Programs that used to take a small amount of CPU (15-25%) on the old 3503-based Gumstix Earth will use > 40% CPU, which is completely unusable.

(2) When booting Linux using the regular U-Boot way (as it's done with the stock configuration from Gumstix) things seem to run at the expected speed. Programs seem to use a bit less CPU (10-20%) and things seem a bit faster overall.

So it seems like SPL is missing some key initialization steps that the full blown U-Boot performs. I spent a bit of time trying to follow the initialization process, but not being an OMAP hardware expert it is hard to make any progress.

This is with U-Boot 2015.07.

Would any of the Gumstix experts have any wisdom to share?

I'd like to keep using Falcon mode to start up the Overo board as fast as possible.

Thank you & best regards


On Tue, Oct 18, 2016 at 10:59 AM, Zipper Fish <[hidden email]> wrote:
Is it possible the AM3703 processor clocks are not getting initialized correctly?

In the board-overo.c file in the kernel 3.18.18 code, I am seeing the following:

MACHINE_START(OVERO, "Gumstix Overo")
.atag_offset = 0x100,
.reserve = omap_reserve,
.map_io = omap3_map_io,
.init_early = omap35xx_init_early,
.init_irq = omap3_init_irq,
.init_machine = overo_init,
.init_late = omap35xx_init_late,
.init_time = omap3_sync32k_timer_init,
.restart = omap3xxx_restart,
MACHINE_END


The .init_early function is being set to omap35xx_init_early unconditionally. There is a omap3630_init_early function available.

Any help would be appreciated... currently, this new Gumstix Overo EarthSTORM is useless because it can't even run software that ran fine on the older Overo Earth.

Thank you


On Mon, Oct 17, 2016 at 6:22 PM, Zipper Fish <[hidden email]> wrote:
Dear gumstix-users,

Having recently switched to an Overo EarthSTORM board with an AM3703 processor, I'm noticing something strange.

The EarthSTORM runs at 800MHz compared to the previous Earth, which ran at 600MHz, a 33% increase.

Yet, a program that previously used between 17-25% CPU now uses around 40%. It has also become and non-responsive at times.

With the same NAND image installed on a Overo Earth (with the previous 3503 processor), the same program runs at normal speed, uses less CPU, and is instantly responsive with no lag to key strokes or other events.

Also, the Linux kernel takes noticeably longer to start.

It is almost as though the CPU is not running at full speed, yet the cpufreq info in /proc appears to indicate that it is running at 800MHz.

Here is the /proc/cpuinfo output from each board:

Gumstix Overo Storm AM3703
==========================

processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 770.04
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic OMAP36xx (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


Gumstix Overo 3503
==================

processor       : 0
model name      : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 577.53
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3

Hardware        : Generic OMAP3 (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000

Has anybody noticed something similar?

Thank you & best wishes.



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|

Re: Overo EarthSTORM performance / AM3703 processor

Zipper Fish
Hi Ron,

Thanks for your response.
Here are some details.

Hardware:
Gumstix Overo EarthSTORM with Tobi board
Gumstix Overo Earth with Tobi board

Software:
U-Boot 2015.07
Kernel 3.18.18 with device tree

I have a bbappend file for the kernel to generate a uImage, which is compatible with the U-Boot Falcon mode. By default it would produce a zImage.

I am building U-Boot using the recipe u-boot_2015.07.bb in the Gumstix Yocto.
The SRC_URI is git://git.denx.de/u-boot.git, not what you have above. I think that should not make a difference for me however, as at first glance I didn't notice any changes affecting Tobi hardware.

To summarize, here are my observations:

(1) Booting Linux on an Overo Earth (3503 processor) using SPL (Falcon mode) everything works fine.
(2) Booting Linux on an Overo EarthSTORM (3703 processor) using SPL (Falcon mode) the CPU is stuck at some abysmally slow speed. Linux takes longer to start than on the Overo Earth, programs absorb a lot more CPU, things lag horribly. However cpufreq will report it is running 800MHz, but there is no way that is true.
(3) Booting Linux on an Overo EarthSTORM using full-blown U-Boot, things seem to work normally again. Linux starts up 

This is with identical binaries (MLO, u-boot.img, uImage, rootfs) the only difference being the Overo hardware they are running on, and the corresponding device tree (*overo-tobi* versus *overo-storm-tobi*) installed in the NAND memory.

I suppose it could also be that the kernel is behaving differently, depending which CPU it is running on. However as the problem occurs on the 3703 processor, and can be triggered just booting Linux direct from SPL versus U-Boot, I would suspect an issue in U-Boot first.

Thanks again & best regards



On Tue, Oct 18, 2016 at 2:00 PM, Ron Greer <[hidden email]> wrote:
I'm just curious about your setup as I might try testing it with some boards we have.
Are you using a Device Tree kernel, or a legacy kernel?
There are quite a few things in the latest DT kernel that didn't get ported back to work work in legacy mode (ie. booting from uImage).

Are you saying that if you use the exact same kernel image, just without u-boot, the board's set up properly? 
Are the kernel boot parameters the same on the command line between the two methods (you can check by looking at /proc/cmdline)?
Is the proper device tree being used?

I haven't used Falcon mode, but are you building your SPL from the gumstix u-boot source?

Ron

On Tue, Oct 18, 2016 at 12:16 PM Zipper Fish <[hidden email]> wrote:
Quick follow up:

Having spent 1/2 the day trying to figure out what is happening, I have learned the following.

(1) When booting Linux directly from SPL (a.k.a. U-Boot "Falcon mode") everything runs very slow. Even though cpufreq reports that the 3703 processor is running at 800MHz, that does not seem to be the case. Programs that used to take a small amount of CPU (15-25%) on the old 3503-based Gumstix Earth will use > 40% CPU, which is completely unusable.

(2) When booting Linux using the regular U-Boot way (as it's done with the stock configuration from Gumstix) things seem to run at the expected speed. Programs seem to use a bit less CPU (10-20%) and things seem a bit faster overall.

So it seems like SPL is missing some key initialization steps that the full blown U-Boot performs. I spent a bit of time trying to follow the initialization process, but not being an OMAP hardware expert it is hard to make any progress.

This is with U-Boot 2015.07.

Would any of the Gumstix experts have any wisdom to share?

I'd like to keep using Falcon mode to start up the Overo board as fast as possible.

Thank you & best regards


On Tue, Oct 18, 2016 at 10:59 AM, Zipper Fish <[hidden email]> wrote:
Is it possible the AM3703 processor clocks are not getting initialized correctly?

In the board-overo.c file in the kernel 3.18.18 code, I am seeing the following:

MACHINE_START(OVERO, "Gumstix Overo")
.atag_offset = 0x100,
.reserve = omap_reserve,
.map_io = omap3_map_io,
.init_early = omap35xx_init_early,
.init_irq = omap3_init_irq,
.init_machine = overo_init,
.init_late = omap35xx_init_late,
.init_time = omap3_sync32k_timer_init,
.restart = omap3xxx_restart,
MACHINE_END


The .init_early function is being set to omap35xx_init_early unconditionally. There is a omap3630_init_early function available.

Any help would be appreciated... currently, this new Gumstix Overo EarthSTORM is useless because it can't even run software that ran fine on the older Overo Earth.

Thank you


On Mon, Oct 17, 2016 at 6:22 PM, Zipper Fish <[hidden email]> wrote:
Dear gumstix-users,

Having recently switched to an Overo EarthSTORM board with an AM3703 processor, I'm noticing something strange.

The EarthSTORM runs at 800MHz compared to the previous Earth, which ran at 600MHz, a 33% increase.

Yet, a program that previously used between 17-25% CPU now uses around 40%. It has also become and non-responsive at times.

With the same NAND image installed on a Overo Earth (with the previous 3503 processor), the same program runs at normal speed, uses less CPU, and is instantly responsive with no lag to key strokes or other events.

Also, the Linux kernel takes noticeably longer to start.

It is almost as though the CPU is not running at full speed, yet the cpufreq info in /proc appears to indicate that it is running at 800MHz.

Here is the /proc/cpuinfo output from each board:

Gumstix Overo Storm AM3703
==========================

processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 770.04
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic OMAP36xx (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


Gumstix Overo 3503
==================

processor       : 0
model name      : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 577.53
Features        : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3

Hardware        : Generic OMAP3 (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000

Has anybody noticed something similar?

Thank you & best wishes.



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users