[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]/feed.php on line 173: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/feed.php on line 174: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
Parallella Community Supercomputing for Everyone 2015-02-23T09:55:28+00:00 https://parallella.org/forums/feed.php?f=23&t=2113 2015-02-23T09:55:28+00:00 2015-02-23T09:55:28+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12745#p12745 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]>
to actually get 0.16ms transferrate for each 32k core, you would need to attach the fpga to the north and south eLink. and then you would need to program it...

finally, you should consider where data is sent when, so data isn't stalled because of other cores doing a transfer at the same time. especially if you actually get input from 3 connections...

Statistics: Posted by piotr5 — Mon Feb 23, 2015 9:55 am


]]>
2015-02-23T02:22:15+00:00 2015-02-23T02:22:15+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12743#p12743 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> Statistics: Posted by rowan194 — Mon Feb 23, 2015 2:22 am


]]>
2015-02-22T18:57:29+00:00 2015-02-22T18:57:29+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12728#p12728 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> Statistics: Posted by aolofsson — Sun Feb 22, 2015 6:57 pm


]]>
2015-02-22T12:08:25+00:00 2015-02-22T12:08:25+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12721#p12721 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> Statistics: Posted by rowan194 — Sun Feb 22, 2015 12:08 pm


]]>
2015-01-30T12:49:04+00:00 2015-01-30T12:49:04+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12526#p12526 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> Statistics: Posted by rowan194 — Fri Jan 30, 2015 12:49 pm


]]>
2015-01-29T22:29:11+00:00 2015-01-29T22:29:11+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12522#p12522 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]>
The idea is to stuff code directly into the Epiphany by using e_write, rather than e_load. Epiphany code simply increments r1 in an endless loop; host code reports back contents of r1 for each core, once per second.

Is this the correct way to point to the start of code? 0x0 is a vector?

edit: I think I've made some fundamental mistake with reading r1 from the core, because using e_write to set r1, then reading it back, doesn't return that value I've set.

<code deleted - see next msg>

Statistics: Posted by rowan194 — Thu Jan 29, 2015 10:29 pm


]]>
2015-01-29T14:07:35+00:00 2015-01-29T14:07:35+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12517#p12517 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> from shared memory, where the host prepared the changes earlier. That core could do some advanced caching, and also take care of the of the results. That way, you limit the fighting for shared memory, while having effectively infinite amounts of memory.

It should be possible to roll your own startup code without the newlib. This reduces code size a lot. Oh, and your test main() function should contain an endless loop: On embedded systems, main() should never end.

Statistics: Posted by sebraa — Thu Jan 29, 2015 2:07 pm


]]>
2015-01-29T10:37:16+00:00 2015-01-29T10:37:16+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12514#p12514 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]>
I should make it clear that each candidate program is executed multiple times (one for each item of training/validation data), and the multiple runs can all be done on-core, independent of the host. So it's more like transfer from host, run, run, run, run, run, run (etc) rather than transfer, run, transfer, run. The latter would be very inefficient as the Parallella would spend half the time just shifting data between the two chips.

I think I may have a good read of the Ephiphany datasheet, and a peek at the SDK internals, to see if I can roll my own from first principles. Even a 'blank' program int main() {}; ends up as a 6428 byte SREC file. Because the cores are running a simple program that reads input data, does some calculations and conditional branches, then exits, there's no need to use any C library functions.

Anyway, sorry for rambling, it's really just thinking aloud. I'd be curious to know if anyone has bypassed the SREC/e_load() system.

Statistics: Posted by rowan194 — Thu Jan 29, 2015 10:37 am


]]>
2015-01-29T10:07:56+00:00 2015-01-29T10:07:56+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12512#p12512 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]> why don't you just sacrifice one eCore and let the program run solely on epiphany?
let only 15 cores fight it out, and a write-protected 16th core serves the changes?
then the only data on host will be just intermediate results and maybe some rng-seeds...

Statistics: Posted by piotr5 — Thu Jan 29, 2015 10:07 am


]]>
2015-01-29T07:02:30+00:00 2015-01-29T07:02:30+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12508#p12508 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]>

Statistics: Posted by rowan194 — Thu Jan 29, 2015 7:02 am


]]>
2015-01-28T23:19:52+00:00 2015-01-28T23:19:52+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12505#p12505 <![CDATA[Re: Is there anything like e_load() which loads from memory?]]>
That way, you can get around the SREC files. Since you'll probably call some kind of linker, you might still have intermediate files - it might be worth keeping them on a ram disk on the host. :-)

Statistics: Posted by sebraa — Wed Jan 28, 2015 11:19 pm


]]>
2015-01-28T21:06:03+00:00 2015-01-28T21:06:03+00:00 https://parallella.org/forums/viewtopic.php?t=2113&p=12503#p12503 <![CDATA[Is there anything like e_load() which loads from memory?]]>
The trouble is that e_load() wants a filename, but it's going to be very inefficient to have to create a new file each time, especially since it's not just a flat bin file. Imagine having to write out 500 SREC files each generation?

Can I roll my own to load (from the host memory) and execute a program (on the Epiphany), using something like e_write then e_start? Or does e_load do a lot more?

(One option may be to e_load a 'blank' program, then in a loop use e_read to save the core, including code/data/IVT, modify machine code in host memory, then e_write back?)

Statistics: Posted by rowan194 — Wed Jan 28, 2015 9:06 pm


]]>