It is well known that certain cellular automata (CA) are computationally universal, such as Conway's game of life in 2 dimensions or the rule 110 in 1 dimension. As far as I know, they can emulate Turing machines even with only a polynomial overhead. However, this doesn't yet make them at all practically useful computers.
In practice, we do very much care about whether an algorithm runs in $O(n^2)$ or $O(n^7)$. If we would compile a complicated C program to a Turing machine, the runtime scaling would be different (slower) from what we expect from running it on a real-life random-access computer. The same is true for the two universal CAs mentioned in the first paragraph (together with the encoding used in the universality proof). Hence the question:
Are there any 2D universal CA (plus compiler from a practical programming language such as C) such that the runtime scaling of any task is equal to what we expect from a practical computer?
To be more precise, I would want that the runtime scaling for the universal CA of each task is the same as for the best CA specifically designed for that task. Those runtime exponents are slightly different from the ones of random-access computers. On the one hand, parallelization is for free in CAs, so for example, sorting in a CA has runtime $O(n)$. On the other hand, information in a CA propagation can only propagate at a finite speed, so for example, searching a list takes time $O(n)$ as well (however, we can run multiple searches in parallel, and also reduce to $O(n^{1/2})$ if we arrange the list into a 2-dimensional array).
(Actually, if you know a little bit about physics then you'll see that CAs are a much better model for the real world than random-access computers. So if you really care about scaling not only in some intermediate regime, then the CA runtime scalings are the correct ones, and the ones for random-access computers are wrong.)