Re: Compiler support for multicore architectures

Walter Banks <walter@bytecraft.com>
Wed, 19 Nov 2008 13:38:01 -0500

          From comp.compilers

Related articles
Compiler support for multicore architectures gauravgautam123@gmail.com (gaurav) (2008-11-18)
Re: Compiler support for multicore architectures kamalpr@hp.com (kamal) (2008-11-18)
Re: Compiler support for multicore architectures ian@airs.com (Ian Lance Taylor) (2008-11-18)
Re: Compiler support for multicore architectures m.helvensteijn@gmail.com (2008-11-19)
Re: Compiler support for multicore architectures walter@bytecraft.com (Walter Banks) (2008-11-19)
Re: Compiler support for multicore architectures toby@telegraphics.com.au (toby) (2008-11-20)
Re: Compiler support for multicore architectures jatin.bhateja@gmail.com (Jatin Bhateja) (2008-11-21)
Re: Compiler support for multicore architectures kamalpr@hp.com (kamal) (2008-11-23)
Re: Compiler support for multicore architectures idbaxter@semdesigns.com (Ira Baxter) (2008-11-28)
Re: Compiler support for multicore architectures bear@sonic.net (Ray Dillinger) (2008-11-28)
Re: Compiler support for multicore architectures scooter.phd@gmail.com (scooter.phd@gmail.com) (2008-11-30)
| List of all articles for this month |

From: Walter Banks <walter@bytecraft.com>
Newsgroups: comp.compilers
Date: Wed, 19 Nov 2008 13:38:01 -0500
Organization: Compilers Central
References: 08-11-086
Keywords: parallel
Posted-Date: 19 Nov 2008 19:55:44 EST

gaurav wrote:


> What different things can a compiler do to make mutithreaded programs
> run better on multicore? Isnt it much depends on the threading
> library , OS and the programmar instead on compiler ?


I have written quite a bit of code and three multiprocessor compilers.
There is one question that needs to be added to the list.
What do you expect to accomplish with a multiprocessor environment?


This question will do a lot to answer the other two. The automotive
engine controllers we wrote tools for was implemented as loosely
coupled event driven system where the OS was actually implemented
in silicon. The application organization was implemented to
support development teams along natural processor divisions. In this
application area the tools and multiprocessor environment were
a aid to simplify the development implementation.


Many of the consumer appliance applications use multiprocessors
for cost reasons, often developing on single processor and dividing the
application manually or automatically using geographical centers of
reference to retarget the application to several processors.


When multiprocessors are used for performance reasons application
factors often determine the relationship between processors. Launching
a thread in a separate processor only makes sense when the gain
from parallel execution is higher than the additional thread overhead.


One of the more interesting documents on parallel computing is
ISO/IEC 61499 event driven modules that open some
interesting doors on optimizing parallel applications independent of
application.


Regards


--
Walter Banks
Byte Craft Limited
http://www.bytecraft.com



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.