Overview Features Coding ApolloOS Performance Forum Downloads Products Order Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.
Please visit our Apollo-Discord Server for support.



All TopicsNewsPerformanceGamesDemosApolloVampireAROSWorkbenchATARIReleases
Performance and Benchmark Results!

New Chip/FastMem TYPE of Trick to Speed Up SW?

Thierry Atheist

Posts 644
27 Nov 2016 13:09


I know nearly nothing about how assembler and CPUS work. So naively ask about a possibility of the following working:

I was thinking, "need bigger CPU cache, need bigger CPU caches to speed up AMIGA (OS) computers!!!!". (Works for x86.)

However, the bigger the cache, the more time lost to doing a flush and loading new information every time there's a switch to another program....

What if, however, instead of a 32K data and 32K instruction CPU cache (which is what is probably going to be set up on the Arria 10 FPGA), there were 8, 4K data caches and 8, 4K instruction caches....

Such that, the first 7 programs launched get their own CPU cache 4K instr, 4K data, and the 8th and every other program uses the last one, and always needs to flush the caches when another program gets loaded into the CPU. The first 7 never doing loading OR flushing until that program is quit and another could take it's place, using one of the first 7 that has been freed up.

I think I explained it clearly.


Kolbjørn Barmen
(Needs Verification)
Posts 219/ 2
27 Nov 2016 13:38


Many aspects of this, but there is at least one thing you should be aware of. On Amiga OS, there are no "programs", there is technically just one program, exec, and everything else are tasks running within the context of exec, in the same memory space. This is what makes Amiga OS so fast, as memory does not have to be copied in from one program to the next program, instead a task just sends reference pointers to the next task, telling it where in the memory of exec to look for code and data. This is also why it makes Amiga OS darn close to impossible to modernize.


Amiga 4Life

Posts 101
17 Dec 2016 02:53


AmigaOs 3.x is fine just the way it is. The only modern feature Amiga needs is "Modern Bandwidth"
  and more chipram..If you want modern concepts with Amiga os/hardware you need a Ng
system...



Gunnar von Boehn
(Apollo Team Member)
Posts 6207
17 Dec 2016 09:31


NG system, and OS 3 behave the same.
While some people claimed otherwise for marketing reasons, the fact is that OS4 and others are not anyway "saver" than OS3.
 
The way AMIGA behaves is just how it behaves.
This was never changed in the last 30 years.
Post complaining about this are a waste of time here, and will in future be deleted as they miss the topic of this forum.


Amiga 4Life

Posts 101
17 Dec 2016 18:14


I dont think that was a complaint or attack on any system, just an opinion based on going back and
forth from my A1xe and A4000...the Oses may be the same but the hardware its using is giving a slightly
  different experience ...(this doesn't mean one is better than the other)....

Os4 is more modern than Os3.1 ..(is it forbidden to say that)..I'm not posting any comparison charts..

the topic says 'Chip/FastMem - tricks to speed up software'..? one trick is bandwidth (isn't this what
Vampire is doing),how far off topic am I ..?



Wawa T

Posts 695
17 Dec 2016 20:17


in conclusion its what almost everybody says: ng systems work same as the genuine one and are not much safer. shared memory and messaging by passing pointers is a feature of amiga. likely nothing can be done about it. simply delete the thread..


Heyden M

Posts 7
10 Mar 2017 12:04


The larger the cache the less the cache needs to be completely changed. By this I mean that the next piece of data the CPU needs is more likely to be in a larger cache then a smaller cache. It's very complicated to predict what is required by the CPU next... so... if the cache was smaller the CPU will have to look elsewhere for the data if it's not in cache and this can waste a huge amount of more cycles.



Wawa T

Posts 695
10 Mar 2017 12:14


i think gunnar and the apollo team is well aware of cache functionality and doesnt need to be lectured about it. to my knowledge apollo core sports a transparent write through cache, which wont even be detected/identified by a regular amiga benchmark tool. but it is there, and im certain the size and other details of implementation are being poperly adjusted by the people behind the project.


Heyden M

Posts 7
11 Mar 2017 01:21


I'm not lecturing. I was responding to the thread starter. 

I'm impressed by how the core is developing... and am watching intently to see what future performance there is. To me... it seems like something special... or something that could be.

And, the team obviously has to budget what they do in the FPGA. I am very interested to see how the FPU turns out.

:)


posts 9