Skip to navigation
Analysis
Dick Pountain

My return to parallel processing

Posted on 17 Feb 2010 at 11:13

Programming a Turing Machine is pretty brain-mashing since you’re working with strings of dashes, not numbers. PriPar machines are easier to program because you can delegate repeated operations to a second machine, and I’ve written a small library of higher-level routines in Turing Machine code; operations such as Inject, Multiply and Tally, which you combine to create parallel programs.

In theory PriPar processes are self-synchronising, but only up to a point, and for large programs the result may depend on the order of completion, which is no good. I therefore added barrier synchronisation: subdivide longer programs and force all processes to synchronise at each barrier between sections, then shift the barriers until you get the right answer!

I’ve made a lot of progress in PriPar programming, my best shot so far being the sum of terms of an arithmetical series, but a parallel factorial function eludes me (I cheat by pre-placing successive integers onto each individual tape). Perhaps you can do better?

Author: Dick Pountain

1 2
Subscribe to PC Pro magazine. We'll give you 3 issues for £1 plus a free gift - click here

From around the web

User comments

Lateralised not parallelised?

Dick... it seems to me that the problems of inter-core communicaiton are solved already. If you got in the tardis and went back to when 32 Pentiums would be a classroom full of PCs, they can and did do true parallel processing when getting and showing HTTP pages to one another, because of the nature of HTTP. doesn't the connectionlessness, multipath nature of HTTP obviate a lot of these job-completion conundrums?

By Steve_Cassidy on 17 Feb 2010

Err Steve, HTTP is an application layer in the OSI model, surely you're thinking of the transport layer and below such as TCP/IP +ARP that handle the routing?
@Dick so are you saying it is still easier to use multiple processors to perform sequential operations rather than try and devise and perform parallel operations?

I do wonder though, what the applications for parallel processing systems are. I can't honestly see a use for average consumers (above 2-4 cores). I can imagine the benefits of multiple cores for virtualisation, but not much else besides specialised scientific modelling for parrelisation. Maybe in the next 5-10 years if we have say immersive UI appearing.

I guess the problem is humans don't think in parallel.

By GAZZAT5 on 18 Feb 2010

I know what HTTP is; and it's not "A layer" - it's a protocol. That's what the "P" stands for. My point is that HTTP can be chopped up and re-assembled, or travel in disparate packets by different routes over different time bases.

By Steve_Cassidy on 18 Feb 2010

Leave a comment

You need to Login or Register to comment.

(optional)

For more details about purchasing this feature and/or images for editorial usage, please contact Jasmine Samra on pictures@dennis.co.uk

advertisement

Latest News StoriesSubscribe to our RSS Feeds
Latest Blog Posts Subscribe to our RSS Feeds

advertisement

Sponsored Links
 
SEARCH
SIGN UP

Your email:

Your password:

remember me

advertisement


Hitwise Top 10 Website 2010
 
 

PCPro-Computing in the Real World Printed from www.pcpro.co.uk

Register to receive our regular email newsletter at http://www.pcpro.co.uk/registration.

The newsletter contains links to our latest PC news, product reviews, features and how-to guides, plus special offers and competitions.