Why does every single integer on the system need its' own address? It doesn't. Most of the time large arrays need a start location and a length.
Four copies of every single piece of data moving to and from the processor. Not only does the storage itself wastes silicon but all the needless addressing to go along with it.
Then try to maintain data consistency in multiple threads with multiple data copies. You have to constantly fight a serial design trying to make it parallel.
A second memory address.
Trying to get an inherently serial design to run in parallel instead of just designing in parallel to begin with.
Give us 1 hour to present 4P to your engineers.
1 month later, they can have a programmable, custom 4P IC layout.
4P implementation is that simple.
Let's talk 4P
Source Code Creations has developed a 4P hardware simulator written in C++/HLSL. In it, we are writing 4P code implementing the Traveling Salesman Problem to show 4P in action.
4P is much more than faster, smaller hardware. We expect 99% of all text based software development (C, C++, C#, Java, Assembly, etc.) to become obsolete and be replaced by 4P style coding.
Yes, it really is THAT much better.
Programs in 4P run on a Hardware Canvas built by putting tiny processors between memory cells. All the cells are updated every clock tick yielding massive performance.
4P hardware can take many forms and there are trade offs. For example, faster program load times can cost additional hardware space. 4P credit card chips will have few pins while 4P graphics processors will have many.
The key is to understand the fundamentals of how 4P works and, more importantly, why it works.
Once the fundamentals are understood, a physical 4P IC layout is relatively simple to accomplish. Compared to conventional processors the layout is almost trivial.
4P can be programmed to do anything that a conventional CPU or GPU can do. Instead of function calls, data is sent between modules all running on the 4P Canvas. Modules are swapped in and out as needed. .
4P programs are developed similar to how hardware is developed today. Drag and drop modules and connect them together.