|
![](/i/fill.gif) |
Alain schrieb:
>> I think this indicates that render threads do indeed spend quite some
>> time waiting for memory accesses to complete, otherwise hyperthreading
>> would not give much added benefit. OTOH I think it also shows that
>> memory latency (i.e. the time it takes to complete a particular memory
>> request) is more of an issue than memory bandwidth (i.e. the maximum
>> speed at which memory content can be read), as hyperthreading cannot
>> help with a memory bandwidth bottleneck either (it would only increase
>> the number of threads standing by for data from the main memory).
>
> We need a computer with 3 GHz RAM and a 3 MHz hex core CPU. RAW bus
> speed, doubled using DDR, then tripled using triple channel... Add a
> little cache and you get almost no memory wait. Then, you put some
> dedicated stack buffers on the die to further reduce main memory access.
I guess with a 3 MHz CPU (even a hex core), crappy old DIL-socket RAM
from the late '80s would be sufficiently fast to keep all cores busy :-P
Also note that neither memory clock speed nor DDR nor number of channels
give you /any/ benefit at all if latency is your issue. All they do is
increase your bandwidth (which, as pointed out before, doesn't seem to
be such an issue with POV-Ray); latency hasn't improved much in recent
years. Typically, the average high-speed super-RAM needs just so many
more clock cycles to complete a read operation that the latency remains
as bad as (or occasionally even worse than) what you'd get with slower
chips.
So all that can be done about it is more L1 and L2 cache or praying for
a RAM technology breakthrough.
Post a reply to this message
|
![](/i/fill.gif) |