ERP said:darkblu said:psurge said:If these new consoles all have 2 thread in-order general purpose units, maybe compilers will eventually support "scouting threads" (not sure what this is officially called), by which i mean a thread more or less dedicated to prefetching memory for a compute thread...
well, although theoretically possible, it would hardly come from the compiler side*. what the compiler could successively do, though, is to put in prefetches for the more prominent accesses in the code.
* compilers hardly care bout threads dispatching, at least not the cc's.
It would be a pointless excercise because of the limit on outstanding prefetches. It's just about enough to hide latency if you think about it and put them inline.
Err I'm not talking about prefetch instructions - the scout thread would be issuing normal memory loads and then doing nothing with the data (in an attempt to warm up the cache for the computation thread). Basically, your scout thread runs a version of the computation code stripped of all memory writes and instructions non-relevant to branches and memory reads. You then run it hundreds of instructions in advance of the computation thread and it becomes an intelligent prefetch engine for the main thread. But yeah, it would probably require hardware support to be effective...