[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
Parallella Community • View topic - Example: In-line maths calculation, in internal memory

Example: In-line maths calculation, in internal memory

Moderator: Dr.BeauWebber

Example: In-line maths calculation, in internal memory

Postby Dr.BeauWebber » Thu Jun 20, 2013 9:26 am

User avatar
Dr.BeauWebber
 
Posts: 114
Joined: Mon Dec 17, 2012 4:01 am
Location: England

Re: Example: In-line maths calculation, in internal memory

Postby Dr.BeauWebber » Thu Jun 20, 2013 4:22 pm

Attachments
skeleton_v4.tar.gz
example maths test - tar file
(221.09 KiB) Downloaded 2712 times
Last edited by Dr.BeauWebber on Fri Jun 21, 2013 8:21 am, edited 1 time in total.
Reason: Added more information about testing the code.
User avatar
Dr.BeauWebber
 
Posts: 114
Joined: Mon Dec 17, 2012 4:01 am
Location: England

Re: Example: In-line maths calculation, in internal memory

Postby shodruk » Sun Jun 23, 2013 8:31 am

Shodruky
shodruk
 
Posts: 464
Joined: Mon Apr 08, 2013 7:03 pm

Re: Example: In-line maths calculation, in internal memory

Postby Hoernchen » Sun Jun 23, 2013 12:16 pm

Hoernchen
 
Posts: 41
Joined: Mon Dec 17, 2012 3:22 am

Re: Example: In-line maths calculation, in internal memory

Postby Dr.BeauWebber » Mon Jun 24, 2013 12:52 pm

Last edited by Dr.BeauWebber on Mon Jun 24, 2013 1:05 pm, edited 1 time in total.
Reason: add information (e-run timing)
User avatar
Dr.BeauWebber
 
Posts: 114
Joined: Mon Dec 17, 2012 4:01 am
Location: England

Re: Example: In-line maths calculation, in internal memory

Postby aolofsson » Mon Jun 24, 2013 3:14 pm

More often than not, when things run really slow, it's because code is being fetched out of external. Any PC address above 0x000xxxxx is going to slow things down by >100X.

Can you try this just to make sure all the critical code is running out of local?

1.) e-ojdump -D "your_epiphany.elf" > dump (tar and attach)
2.) e-run --trace "your_epiphany.elf" > trace (tar and attach)

Thanks,
Andreas
User avatar
aolofsson
 
Posts: 1005
Joined: Tue Dec 11, 2012 6:59 pm
Location: Lexington, Massachusetts,USA

Re: Example: In-line maths calculation, in internal memory

Postby Dr.BeauWebber » Mon Jun 24, 2013 7:40 pm

Ah, thanks.
Ben has asked to reclaim access to their hardware, but I assume I can do this test on other hosts :
Can I just do the objdump and trace from a simple a.out file, as opposed to creating the actual Epiphany .elf files ?
I certainly get assembly code when I try.
If not, I am building a test Arm installation on a Raspberry Pi, to help validate the latest changes to the aplc compiler, and I could recreate the Epiphany code there.
User avatar
Dr.BeauWebber
 
Posts: 114
Joined: Mon Dec 17, 2012 4:01 am
Location: England

Re: Example: In-line maths calculation, in internal memory

Postby ysapir » Mon Jun 24, 2013 8:55 pm

a.out is just the default name for the executable generated by the gnu compilers, if you don't specify an explicit name.

In your question, do you mean if you could analyze the executable generated by ARM/x86 compiler instead of Epiphany compiler? If so, the answer is obviously no, since the binaries are different between platforms and there is limited amount of info that you can learn from that. However, you don't really need the actual hardware to do your test. You can work with the cross-build tools on your PC (esdk.4.13.04.24). e-objdump will work on the executable generated by e-gcc on any platform. e-run is a simulator, thus no need for the hardware.
User avatar
ysapir
 
Posts: 393
Joined: Tue Dec 11, 2012 7:05 pm

Re: Example: In-line maths calculation, in internal memory

Postby Dr.BeauWebber » Mon Jun 24, 2013 10:07 pm

Attachments
trace.tar.gz
compressed trace file
(330.96 KiB) Downloaded 2674 times
dump.tar.gz
compressed dump file
(2.47 MiB) Downloaded 2751 times
User avatar
Dr.BeauWebber
 
Posts: 114
Joined: Mon Dec 17, 2012 4:01 am
Location: England

Re: Example: In-line maths calculation, in internal memory

Postby ysapir » Tue Jun 25, 2013 7:09 am

A quick look at your objdump listing shows that all of your code is being run from external memory. Also note that for the specific code you attached, no LDF was used in compilation, so all addresses are resolved using the default linker LDF, where ext. mem is at 0x80000000. I am surprised if you manage to run this executable on a real hardware.
User avatar
ysapir
 
Posts: 393
Joined: Tue Dec 11, 2012 7:05 pm

Next

Return to APL

Who is online

Users browsing this forum: No registered users and 3 guests

cron