Threads, system buses
It's time for networked processors (not ethernet)
You give each processor its own memory space with a large amount of the space dedicated to its own private ram. Other sections of this memory space can intersect the memory space of a set of neighboring processors, shared ram. Get rid of the cashing and swapping and thrashing. Extremely complex operations can pipeline from processor space to processor space. One could make Neural networks, Function networks, Data flow programs as they wish. Have thousands of these processors. Note this is not the same as the single instruction multiple data (SIMD) GPUs being hoisted on us right now.