Tuesday, March 30, 2021

An Actor Application Can Be Hundreds of Times Faster Than a Parallel Lambda Expression

Communication between Turing Machines and between lambda-expressions was crucially omitted thereby crippling them as a foundation for Computer Science. Actors [Hewitt, et. al 1973] remedied the foundations to provide scalable computation. Church’s lambda calculus crucially omitted concurrency with the consequence that an Actors machine can be hundreds of times faster than a parallel lambda expression. The reason that in practice that an Actor can be hundreds of times faster is that in order to carry out a concurrent computation, the parallel lambda expression must in parallel gather together the results of the computation step of each core and then in parallel redistribute the communicated messages from each core to other cores. The slowdown comes from the overhead of a lambda expression spanning out from a core to all the other cores, performing a step on each core, and then gathering and sorting the results of the steps (cf. [Strachey 2000]).

Actor Speed-Up Theorem. There are practical Actor computations of time t which in the parallel lambda calculus require time a significant multiple of t*log[n], where n is the number of cores on a machine.

 

For more information, see the following:

Epistemology Cyberattacks