Welcome, Guest. Please login or register.

Author Topic: ADOOM on A600 running 22-35 FPS  (Read 56010 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline biggunTopic starter

  • Sr. Member
  • ****
  • Join Date: Apr 2006
  • Posts: 397
    • Show only replies by biggun
    • http://www.greyhound-data.com/gunnar/
Re: ADOOM on A600 running 22-35 FPS
« Reply #179 on: February 12, 2015, 11:14:11 AM »
Quote from: ElPolloDiabl;783728
As far as I know an 040 and 060 has a single branch to execute floating point operations. If you had three branches or more would you get some seriously fast math operations. If not what would limit it?


68060 FPU was not pipelined and most instructions took at least 3 cycles.

Phoenix FPU is fully pipelined and can do a 80bit FMUL every clock cycle.
This means clock by clock the Phoenix FPU is already 3 times faster than an 68060.
This means a 100 Mhz Phoenix is FPU wise in theory as strong as an 68060 @ 300 MHz

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: ADOOM on A600 running 22-35 FPS
« Reply #180 on: February 12, 2015, 03:17:06 PM »
Quote from: Thomas Richter;783714
While I'm all for the Phoenix, this is an "improvement" I do not agree with. There are reasons for these "restrictions" all along, and Mot made a choice with these restrictions. The reason why d(PC) and d(PC,Xn) is read-only is a good one: Everything that these two ea's can address is in the "text segment", also known as "code". "code is not supposed to be modified", this is what Motorola expresses here clearly. If you want data, put that into a data segment and address it either absolute or relative to a segment pointer (aka a4).  One should not forget that the Motorola FPUs have an external address space that is larger than 32 bit. It is 32+3 bit, 32 address bits plus three "function code bits". Whether these have been used in the Amiga is another question, but as far as the CPU architecture is concerned, this is very consistent with the "restrictions" of the addressing modes. d(PC) is a "instruction space access" and hence read-only, as all instruction space accesses. d(an) is a data access, and hence has a function code identifying data accesses, and hence is read-write.  I would pretty much prefer to keep this clean model, no matter whether it is actually enforced in the Amiga or not.


Were you not invited to the Apollo Forum before the ISA decisions were made? Your name was mentioned in the ISA discussions and someone even put words in your mouth in your absence. If you are worried about such a minor issue as "PC" relative writes then maybe you should have a look at the lack of orthogonality necessary to add more registers, of which there are now 4 types and one of which is called A8. I was willing to compromise on "PC" relative addressing as I consider it a minor issue that is inadequate for code protection and it would help code density to a very minor degree (I did not draw the same conclusions from analyzing dissassembled code not that it is the first time or that I even bother mentioning such things any more). Maybe you would have had been given enough respect and been able to argue your issues enough in the ISA committee to make a difference but I doubt it. The committee of one has already decided the future of the 68k. I'm sorry you wern't there and missed your oppurtunity. Oh wait, never mind, this is somebody's toy project and the committee dissolved for lack of "yes" men.
 

Offline biggunTopic starter

  • Sr. Member
  • ****
  • Join Date: Apr 2006
  • Posts: 397
    • Show only replies by biggun
    • http://www.greyhound-data.com/gunnar/
Re: ADOOM on A600 running 22-35 FPS
« Reply #181 on: February 12, 2015, 04:14:56 PM »
Matthey,

the amount of "voting" to the project is in level to their work contributed.
There are some people who have contributed some hundred thousand lines and some which have not.

Offline OlafS3

Re: ADOOM on A600 running 22-35 FPS
« Reply #182 on: February 12, 2015, 04:33:45 PM »
Quote from: matthey;783736
Were you not invited to the Apollo Forum before the ISA decisions were made? Your name was mentioned in the ISA discussions and someone even put words in your mouth in your absence. If you are worried about such a minor issue as "PC" relative writes then maybe you should have a look at the lack of orthogonality necessary to add more registers, of which there are now 4 types and one of which is called A8. I was willing to compromise on "PC" relative addressing as I consider it a minor issue that is inadequate for code protection and it would help code density to a very minor degree (I did not draw the same conclusions from analyzing dissassembled code not that it is the first time or that I even bother mentioning such things any more). Maybe you would have had been given enough respect and been able to argue your issues enough in the ISA committee to make a difference but I doubt it. The committee of one has already decided the future of the 68k. I'm sorry you wern't there and missed your oppurtunity. Oh wait, never mind, this is somebody's toy project and the committee dissolved for lack of "yes" men.

I am a little disappointed of your behavior
 

Offline wawrzon

Re: ADOOM on A600 running 22-35 FPS
« Reply #183 on: February 12, 2015, 05:03:27 PM »
@olaf
Why? Matt is helpful, constructive and concerned person. Mentioning doubths in the open isnt wrong.
 

Offline biggunTopic starter

  • Sr. Member
  • ****
  • Join Date: Apr 2006
  • Posts: 397
    • Show only replies by biggun
    • http://www.greyhound-data.com/gunnar/
Re: ADOOM on A600 running 22-35 FPS
« Reply #184 on: February 12, 2015, 05:50:48 PM »
Quote from: wawrzon;783744
@olaf
Why? Matt is helpful, constructive and concerned person. Mentioning doubths in the open isnt wrong.


The situation is that hardware developers which do _all_ the development work on the core
and which have CPU design and FPGA know-how have certain opinions
what features should be implemented, and which features are sensible to do in an FPGA.

People from the outside can voice their opinions this is OK.
Its also OK that they voice their opinion if they have no FPGA knowledge.

But the decision of what gets implemented is done by those who do the work.

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: ADOOM on A600 running 22-35 FPS
« Reply #185 on: February 12, 2015, 06:00:28 PM »
Quote from: biggun;783739
Matthey,

the amount of "voting" to the project is in level to their work contributed.
There are some people who have contributed some hundred thousand lines and some which have not.


Then ThoR would have had no vote either and I was correct about it being someone's toy project.

Quote from: OlafS3;783740
I am a little disappointed of your behavior


I have never been someone's "yes" man but instead have had my own opinions which I have not hidden. I hope the Phoenix project is successful but I believe that the "enhancements" are missing the mark as far as being adopted and used as a 68k Amiga standard (something you want Olaf). Also, better ColdFire support would have made adoption and support easier outside of the Amiga community and made an ASIC for combined embedded use more likely. The enhancements are driven by one persons insatiable desire for more registers and performance at any cost, including future planning. Yes, he has done most of the work so perhaps it is his decision for his pet project. No one is stopping him or being rude but it does leave open Karlos's pondering, "I've occasionally wondered what the 680x0 might have become if it had achieved the same sort of popularity as the x86." We may never know what a professional company would have done instead of a pet project driven by one man's desires. I shouldn't complain as at least we get a faster 68020 compatible CPU but neither can I sell the enhancements I do not believe in.
 

Offline wawrzon

Re: ADOOM on A600 running 22-35 FPS
« Reply #186 on: February 12, 2015, 06:27:02 PM »
@matt

Two matters that make things a bit less scary:
1. Fpga isnt set in stone hardware, it might be reprogrammed and adjusted according to the reaction it meets. Reacting to the feedback would be wise on part of developers. But there always will be different opinions, thats sure.

2. Any extensions beyond what the legacy 68k provides will not have much effect until compiler backends will assimilate these extensions. Which will not happen any soon, giving time to reconsider. The legacy instruction set and its execution efficiencyis what counts atm.
 

Offline biggunTopic starter

  • Sr. Member
  • ****
  • Join Date: Apr 2006
  • Posts: 397
    • Show only replies by biggun
    • http://www.greyhound-data.com/gunnar/
Re: ADOOM on A600 running 22-35 FPS
« Reply #187 on: February 12, 2015, 07:14:23 PM »
Quote from: matthey;783747
Then ThoR would have had no vote either

Of course Thomas Richter has a vote. :-)
Thomas did contribute to the project and we value his opinion.


At the end the people doing the work will make the decision. I think this is normal.

And as MP3 playback and DOOM and other programs show..
The software Compatibility and Performance are good.
In fact the performance of Poenix is better than any 68K CPU was ever before.
« Last Edit: February 12, 2015, 07:19:29 PM by biggun »
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: ADOOM on A600 running 22-35 FPS
« Reply #188 on: February 12, 2015, 07:57:35 PM »
Quote from: wawrzon;783749
@matt

Two matters that make things a bit less scary:
1. Fpga isnt set in stone hardware, it might be reprogrammed and adjusted according to the reaction it meets. Reacting to the feedback would be wise on part of developers. But there always will be different opinions, thats sure.


Yes, this is true. Phil "meynaf" also did not like the direction of the new ISA but challenged for it to be created as a test. It is possible to learn from doing things the hard way. The few people that write code for the new ISA would be disappointed if the ISA changed significantly. The new ISA is unlikely to be (even partially) adopted in the TG68 or other 68k fpga cores or eventually UAE (I believe Toni's position would change if multiple fpga hardware was using the same ISA) . It is less likely that a non-standard complex 68k ISA for a single fpga CPU would gain wide spread support in compilers. A core which is more compatible with both 68k and ColdFire is more likely to be interesting to embedded developers. Enough money could probably gain a custom ISA and then we could have a thousand variations of an ISA like ARM but this is what I hoped to avoid. People thought I was too early trying to push for the creation of a standarized ISA and trying to get input from others. I tried to create a standards committee/group by bringing in people to our discussions including inviting ThoR, Frank Wille and Dave Alsup (of Innovasic). I would have loved to bring in people like Tony Wilen, Jason McMullan, Volker Barthelman, Kalms and maybe even a Karlos who have understanding of an ISA from different view points. I guess people are too busy or believe the Amiga is too dead to care anymore. At least Gunnar is doing something.

Quote from: wawrzon;783749

2. Any extensions beyond what the legacy 68k provides will not have much effect until compiler backends will assimilate these extensions. Which will not happen any soon, giving time to reconsider. The legacy instruction set and its execution efficiency is what counts atm.


ISA decisions make a big difference in how easily and quickly the ISA changes can be adopted. ColdFire enhancements are the easiest to adopt because they already exist and only need to be switched on in a compiler backend and in peephole optimizing assemblers. I bet Frank Wille could have ColdFire support in vasm working in a few days and already making a noticable difference in shrinking program sizes. ColdFire support in the backend could take a few weeks to add and test as it is a more delicate process to add. Taking advantage of the current ISA with more registers in the backend would likely take many months and bugs could turn up for years. Few developers are knowledgable and familiar enough with a compiler to add this kind of support. Are they going to dedicate this kind of time for a non-standard in an fpga CPU sold in the hundreds or low thousands at the most when they could be improving a compiler target with tens of thousands of hard processors? I don't think so. Phoenix is not going to immediately set the world on fire. IMO, it's better to have an easy standard to adopt with a few benefits and incremental improvements than a core specific non-standard with theoretical high performance that will never be utilized completely in compilers. Splits seem to be the Amiga way though. I'm tired of arguing and trying to create something better. Gunnar did make the right decision to add better 68020 compatibility (all addressing modes without trapping) and we do have this as a base which is the most important thing. We are moving forward past the 68060 in performance with this too. I should be thankful as we need new 68k hardware to revitalize the Amiga. I would have liked to create something like a cross between an Amiga Raspberry Pi, a Natami and a CD32+ but there is not enough cooperation, at least not yet.
 

Offline OlafS3

Re: ADOOM on A600 running 22-35 FPS
« Reply #189 on: February 12, 2015, 08:17:09 PM »
Quote from: matthey;783747
Then ThoR would have had no vote either and I was correct about it being someone's toy project.



I have never been someone's "yes" man but instead have had my own opinions which I have not hidden. I hope the Phoenix project is successful but I believe that the "enhancements" are missing the mark as far as being adopted and used as a 68k Amiga standard (something you want Olaf). Also, better ColdFire support would have made adoption and support easier outside of the Amiga community and made an ASIC for combined embedded use more likely. The enhancements are driven by one persons insatiable desire for more registers and performance at any cost, including future planning. Yes, he has done most of the work so perhaps it is his decision for his pet project. No one is stopping him or being rude but it does leave open Karlos's pondering, "I've occasionally wondered what the 680x0 might have become if it had achieved the same sort of popularity as the x86." We may never know what a professional company would have done instead of a pet project driven by one man's desires. I shouldn't complain as at least we get a faster 68020 compatible CPU but neither can I sell the enhancements I do not believe in.


I wrote that not because you disagreed or because of your opinion but because I dislike it when internal discussion are published in public. Internal should stay internal. That is my opinion.

To topic... new features always have the problem that they are not supported as long compilers are not adapted and software not recompiled. But a superfast 68020 compatible processor would be a lot already.
 

Offline biggunTopic starter

  • Sr. Member
  • ****
  • Join Date: Apr 2006
  • Posts: 397
    • Show only replies by biggun
    • http://www.greyhound-data.com/gunnar/
Re: ADOOM on A600 running 22-35 FPS
« Reply #190 on: February 12, 2015, 08:47:42 PM »
Apollo is much bigger than it appears to many.
The project does not only include CPU but also FPU and SIMD features.
A lot of planning and over 5 years of development were put into this project.

The current FPGA cards show a small part of the project.
The upcoming FPGA cards will show a lot more....

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: ADOOM on A600 running 22-35 FPS
« Reply #191 on: February 12, 2015, 08:52:43 PM »
Quote from: OlafS3;783759
I wrote that not because you disagreed or because of your opinion but because I dislike it when internal discussion are published in public. Internal should stay internal. That is my opinion.


But the problem was that the ISA discussion was internal and the group too small. There were only 3 people with enough understanding to even have an opinion. Meynaf and I have somewhat similar (overlapping) experience and perspectives. Gunnar's perspective is very different. We did not have a diversified enough or large enough group that a consensus even matters. Gunnar opened up the apollo forum to the public recently so I don't even know what is considered internal discussion,

Quote from: OlafS3;783759

To topic... new features always have the problem that they are not supported as long compilers are not adapted and software not recompiled. But a superfast 68020 compatible processor would be a lot already.


Phoenix may help the 68k targets of compilers to get some attention, I do not expect any major compiler support beyond that. Do you think the 68020 ISA is modern enough to compete with newer ISAs? Do you think it's modern enough to attract developers?
 

Offline OlafS3

Re: ADOOM on A600 running 22-35 FPS
« Reply #192 on: February 12, 2015, 09:01:30 PM »
Quote from: matthey;783772
But the problem was that the ISA discussion was internal and the group too small. There were only 3 people with enough understanding to even have an opinion. Meynaf and I have somewhat similar (overlapping) experience and perspectives. Gunnar's perspective is very different. We did not have a diversified enough or large enough group that a consensus even matters. Gunnar opened up the apollo forum to the public recently so I don't even know what is considered internal discussion,



Phoenix may help the 68k targets of compilers to get some attention, I do not expect any major compiler support beyond that. Do you think the 68020 ISA is modern enough to compete with newer ISAs? Do you think it's modern enough to attract developers?


compete with modern ISA´s? You mean X64 or ARM? That is completely unrealistic. How much money and developers are invested in that ISAs and how much time you think Gunnar and the few others can invest in it? We need not to compete with ARM but the best solution for our platform. A good FPGA based device at affordable price has a market but of course not a mass-market at the level of ARM or X64. Or what is your idea? What would the "market" you see?

And we have a lot of compilers already (partly even with source code). We need best support for them. Developers are attracted by modern development environments with modern class libraries. And distribution opportunites (=user base). Not details of the ISA. I am propably typical for that kind of people. I use Visual Studio and Delphi on Windows. I could not care less about the details of the ISA it runs on.
« Last Edit: February 12, 2015, 09:05:59 PM by OlafS3 »
 

Offline matthey

  • Hero Member
  • *****
  • Join Date: Aug 2007
  • Posts: 1294
    • Show only replies by matthey
Re: ADOOM on A600 running 22-35 FPS
« Reply #193 on: February 12, 2015, 09:32:08 PM »
Quote from: OlafS3;783774
compete with modern ISA´s? You mean X64 or ARM? That is completely unrealistic. How much money and developers are invested in that ISAs and how much time you think Gunnar and the few others can invest in it? We need not to compete with ARM but the best solution for our platform. A good FPGA based device at affordable price has a market but of course not a mass-market at the level of ARM or X64. Or what is your idea? What would the "market" you see?


The 68020 ISA is from the late '80s and what we are stuck with if the new ISA is not adopted. The 68k probably doesn't need to compete with x86_64 or ARM (they have more baggage also) but it could use some modernization. I was looking for interest in the embedded "market" where the small memory footprint is an advantage but that was before Gunnar dropped much of the ColdFire compatibility.

Quote from: OlafS3;783774

And we have a lot of compilers already (partly even with source code). We need best support for them.


I have submitted changes/fixes to the 68k backend of vbcc which I expect is one of the simplest compiler backends. While I was generally successful in getting my changes to work, I was not at all sure of rare side effects that my code could have caused. It would take months of studying the code and working with it before I would feel comfortable in making changed which were not reviewed by Volker. Frank Wille is a more experienced and better programmer than me and he does not make any major changes to vbcc without submitting them to Volker. Compilers are not rocket science but they have intricate sensitive code that requires knowledge and experience to change even with sources.
 

Offline OlafS3

Re: ADOOM on A600 running 22-35 FPS
« Reply #194 from previous page: February 12, 2015, 09:39:59 PM »
Quote from: matthey;783783
The 68020 ISA is from the late '80s and what we are stuck with if the new ISA is not adopted. The 68k probably doesn't need to compete with x86_64 or ARM (they have more baggage also) but it could use some modernization. I was looking for interest in the embedded "market" where the small memory footprint is an advantage but that was before Gunnar dropped much of the ColdFire compatibility.



I have submitted changes/fixes to the 68k backend of vbcc which I expect is one of the simplest compiler backends. While I was generally successful in getting my changes to work, I was not at all sure of rare side effects that my code could have caused. It would take months of studying the code and working with it before I would feel comfortable in making changed which were not reviewed by Volker. Frank Wille is a more experienced and better programmer than me and he does not make any major changes to vbcc without submitting them to Volker. Compilers are not rocket science but they have intricate sensitive code that requires knowledge and experience to change even with sources.


i think we do not need new super-ISAs but a new platform that support the existing software base. I think (if I remember right) there are about 12 compilers in Aros Vision and not for all are source codes available. Even if it is possible to adapt one or two there would still be most unchanged. Another problem is for many programs source codes are not available so recompiling is unpossible. Developers are not attracted by asm code or ISA features but how easy can they solve their problems. That should be first priority in future,
« Last Edit: February 12, 2015, 09:42:05 PM by OlafS3 »