Am 20.09.2010 15:22, schrieb Dariusz Mazur:
W dniu 2010-09-20 13:55, Mattias Gärtner pisze:
Zitat von Dariusz Mazur <[email protected]>:
[...]
Before using multi threading, try to use a better single threaded
algorithm. And when comparing multi with single threading speed, you
must not compare a multi threaded algorithm running single threaded,
but
a multi threaded algorithm with a good single threaded algorithm.
I don;t talk about best solution of fibbonaci computing. But about
possibility do deal with some class of task using multithreading.
Its easy imagine task, which is hard to resolve with loops.
Of course.
I think, we both agree that CILK is a nice approach.
Nice to hear this.
I just said, that there are not many multi threading examples that are
easy to read and are practical at the same time. Computing Fibonacci
numbers does not need multi threading.
Most of programs are huge count of simple computing. There are many
places, that things may run parallel without pain. But very often this
places are computing short, thus very often overhead of starting thread
is bigger than using second core.
You are aware that for using a second core you need a thread (no matter
how fancy a syntax construct hides it)? Thus for reducing the overhead
of creating a thread at least one thread per core must be created before
the first call of a "spawned" function/procedure.
Regards,
Sven
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus