[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 - Occam Programming Language for Parallella?
Page 1 of 3

Occam Programming Language for Parallella?

PostPosted: Sun Apr 21, 2013 3:57 pm
by eduardo20
in the 1980s there was once a company developing massiv parallel CPUs

The Company was Transmeta and for their massiv parallell hardware they also
developed a massiv parallel programming language!

The programming language is called Occam.

http://frmb.org/occtutor.html

http://www.cs.kent.ac.uk/projects/ofa/kroc/


It might be that Occam is just the right language for this new massiv parallell hardware.

have fun.

yours

Re: Occam Programming Language for Parallella?

PostPosted: Sun Apr 21, 2013 4:45 pm
by 9600

Re: Occam Programming Language for Parallella?

PostPosted: Mon Apr 22, 2013 1:31 pm
by aolofsson
Some folks at Halmstad University in Sweden has already used a mix of Occam and C for programming the Epiphany.
Andreas

Re: Occam Programming Language for Parallella?

PostPosted: Mon Apr 22, 2013 2:12 pm
by 9600

Re: Occam Programming Language for Parallella?

PostPosted: Tue Apr 23, 2013 10:12 pm
by Sundance
Sorry, but I am having to jump up on the Soap-Box and give a little history lesson.

The Inmos Transputer was a revolution in terms of power/performance. It offered Floating-Point and Scalability in one single, relative low-power piece of silicon. If it has been developed and manufactured by Intel (or any US semiconductor company!) it would have found a large customer-base in the DoD and sold in millions. Eventually it would have made it main-stream and we would have been up and running with Parallel Processing for everything 20 years ago.

A single 20MHz T805 outperformed the fastest Intel CPU at time with a factor of 10 in some application. It had 4k of internal memory and crucially, a very easy (but slower) external DRAM Interface and 4x 2-wire communication lanes @ 20Mbits/sec.

It was a like a….. – “Epiphany” and you might have guess why I am interested in the Parallella Project. It was 30 years ago next year, 25+ years before Facebook 8-) - but Facebook serve a purpose = https://www.facebook.com/transputer30th

The chosen programming language, Occam, was another revolution and was/is perfect for Parallel processing. It enabled Hardware Engineers to write programs and that was ultimately the down-fold of both Inmos and Occam. It was too simple (guess you will have guess I was/am a hardware person…. ) for the traditional Software Engineers that had millions of lines of code for Fortran, Pascal, Cobol, ADA or whatever was around in the 1980’s.

Attempts were made to make such Compilers work on the Inmos Transputer, but never really got the best out of the processor. Like cross-compilers and other similar attempts to map the sequential programs to work on arrays of Parallel Processors. Just not quite working..

I am confident that the time for Parallel Processing has arrived and if Occam could play a role, then fantastic vision of the original people that developed the concept. Just like Newton and his pioneering discoveries that took Centuries to mature and being understood, then maybe Occam's time has come??

Flemming

P.S. If you got 6 minutes to spare, then watch this Video = http://youtu.be/o7byWAv6qCk = and all will be clear!

Re: Occam Programming Language for Parallella?

PostPosted: Thu Apr 25, 2013 4:54 pm
by mhonman

Re: Occam Programming Language for Parallella?

PostPosted: Thu Apr 25, 2013 8:43 pm
by Sundance

Re: Occam Programming Language for Parallella?

PostPosted: Fri Apr 26, 2013 6:35 am
by 9600

Re: Occam Programming Language for Parallella?

PostPosted: Fri Apr 26, 2013 8:11 am
by mhonman

Re: Occam Programming Language for Parallella?

PostPosted: Fri Apr 26, 2013 11:53 pm
by aolofsson
mhonman,
With the Epiphany, we didn't want to force a message passing programming model (although based on our experience it is the most suitable programming model for this type of architecture). The good news is a simple send/receive model can be implemented that is really light weight with minimal overhead even for short messages).

A heterogeneous model with C/C++ being used for core programs and occam for higher level composition and explicit communication could be quite nice imho.

100% agree that we need to completely abstract away pointers and absolute addresses from the general programmer. We are working on it..

Andreas