[Info-vax] nice for VMS
Arne Vajhøj
arne at vajhoej.dk
Sun Apr 12 22:44:50 EDT 2009
Richard B. Gilbert wrote:
> Arne Vajhøj wrote:
>> Richard B. Gilbert wrote:
>>> JF Mezei wrote:
>>>> Bob Koehler wrote:
>>>>
>>>>> There are a variety of states related to memory management,
>>>>> including
>>>>> PFW, COLPG, and others I could dig up somewhere.
>>>>
>>>> But virtual memory management is under the responsability of the OS.
>>>> But
>>>> waiting for 8 bytes of physical memory to be loaded into a the register
>>>> is very much hardware based and would the OS be aware of this operation
>>>> taking a long enough time to warrant a switch processing to another
>>>> process ?
>>>
>>> If your memory is aligned properly; e.g. the three low order bits of
>>> the address are 0, a load of 8 bytes should go quickly. If they are
>>> not 0, the O/S will do its best which, admittedly, is not very good.
>>> ISTR that it must move the eight bytes to properly aligned temporary
>>> storage and then load them into a register! This takes many cycles
>>> longer than a properly aligned quadword load. The compilers know how
>>> to do it right but if you use Macro and fail to align things
>>> properly, your code may run like a dog!
>>
>> Most HLL compiler allow you to specify that data should not be
>> natural aligned. And take the performance hit, which even at older
>> Alphas could be >x10.
>
> I wonder if anyone ever uses that "feature". I'd also wonder why?
It happens - struct(ure)s that are written or read to or
from file/socket and have to be packed.
Obviously not very funny when the code later has to be ported
to Solaris/SPARC.
Arne
More information about the Info-vax
mailing list