[Coco] Devastated. Long term OVCC project falls short
Walter Zambotti
zambotti at iinet.net.au
Fri Oct 4 21:27:57 EDT 2019
The OVCC github has ben public for a while now!!!
https://github.com/WallyZambotti/OVCC.git
Walter
On 10/5/19 12:19 AM, James Ross wrote:
> Walter said:
>> On Windows the assembly 6309 CPU runs about 1-1.5% SLOWER!
>> On Linux the assembly 6309 CPU runs about 45%-50% SLOWER!!!
> Wow, that is something else!!
>
> Good job on all your work on OVCC. I have not had the time to play with it yet, but I hope to someday in the near future. And kudos on making the OVCC GitHub site public.
>
> Those are quite surprising results, for sure. I see why you were taken aback.
>
> I wonder why the assembly version for Linux would be that much slower than the Windows version. There’s got to be something weird going there – there should not be a big difference between the two running essentially the same native code (at least on same class of processor)
>
> I possibly should not comment on the ASM code as I have not delved into enough to be giving anyone advice. But ... here goes, ha!
>
> A tidbit I have read about in more than one place, I believe, is that there is a penalty for accessing partial registers (i.e. 16bit and possibly 8bits) in 32/64 bit modes. Whether or not that would account for all the slowdown from the compiled C, I don’t know. But you should be able to find information on that somewhat easily.
>
> Whether or not I am right or not about this, (I think I am, but I am but not certain!!) But --- if a person wants to squeeze the absolute best performance at the assembly level don’t deal with (i.e. r/w and process) any data values that are not the same width as the data bus. And make sure that all your data is aligned at the same data width.
>
> So, in 32bit mode, do everything in 32bits. In 64bit mode, do everything in 64bits. That would include instead of using a byte array (8 bits) for the CoCo RAM/ROM use 32bit or 64bit word arrays instead, to represent each byte.
>
> If I ever have the time, I’ll play with this some.
>
> james
>
More information about the Coco
mailing list