This is nothing more than a collection of thoughts about a possible way of improving the current state of microprocessor architecture. All statements are theoretical and are open to interpretation. This is not a technical document, but rather, this is what one might call Computer Philosophy.
Transferring Static Information
It came to my attention that when real-time performance matters, some of the heaviest loads on the processor and memory bus traffic is due to the way we are used to organizing and accessing information in real time. Loading a Quake or a Half Life 2 level from hard disk is not a real-time activity: we only load one "map" or "level" once. This type of activity is arguably optimized for the absolutely best performance on current machines, we load the needed information into essentially what is a form of "absolute", of perfect cache system, where all information is known and always resides in the same place, while we play the game (and we are big-time cheaters.) The information is also accessible to the 3D graphics rendering engine at all times. After all, we know absolutely all pieces of information (the game level data), and it is loaded into known, pre-allocated memory address. Essentially this memory sector is assumed to contain level data, so it is "known" or allocated before the data is transfered.
Dealing with information generated in real time
What about systems where information needs to be built while the software is being used? Allocating memory for new objects costs CPU instruction time, deleting, or having to delete objects or classes that contain information sometimes causes memory leaks and time is being spent profiling the code. Would it not be nice to have a built-in cache system that contains information that can be easily pulled out instantly, at any time by using associations, instead of redundant for-loops that parse all information in order to find one single piece?
Current Processor Architecture
Pros: all information is available
access path to any bit of information is known and is always available for look up
all information is known
a possible cache system speeds up information look up
Cons: the absolute nature of information makes information look-up redundant
therefore it is not organized in a potentially most efficient way
information look-up is not instant, or not as instant as it could be.
New Proposed Architecture
Pros: the fastest way to physically store and look up information, believe me, it is not a for-loop.
Cons: none (this is tricky, I know)
Proposal:
Completely avoid for-loop based lookups based on IDs. Cache must be replaced with a new, faster way to look up any information using references for ALL types of information simultaneously. Possible solution is to extend and implement the logic of Minsky's frames.
If someone thumbs up your comment, your gain +1 mana (authority) on this page's subject.
If someone thumbs down your comment, you lose 1 mana.
If your comment is thumbed down by the author of this page, you will lose 3 manas.