PSX-SCENE Forum Discussion for Sony PlayStation/PsOne/PS2/PS3/PSP/PS VITA
  • KDSBest talks RPCS3 Emulator

    KDSBest a PS3 Developer of the scene known for such contributions and projects as KDSBest's Reverse Engineering Blog Series - Part I, II & III & KDSBest's SPU Emulation v0.9 to name a few of the many contributions KDSBest has made to this community. Has now been talking about how the RPCS3 emulator (PS3 Emulator) that is very early in overall development could be greatly improved in the performance side by multiple times. He has went on his Twitter and posted some interesting info on what he has believes will improve the emulator and his future plans. For all the details check below at the quote from KDSbest's Twitter:




    KDSbest Twitter Quote:
    I took a deep look at the #RPCS3 emulator especialy the ppu emulation. It is possible to increase the performance alot. Since my time is big money I try to get some PoC stuff out. IMHO the performance can be increased by a multiple times. Starting with the decoder which is nicely writter TBH but not tweaked to the performance limit. Building a big switch case is just the wrong way.

    Don't get me wrong they made a nice piece of software, but the lack of performance tweaking makes it a bad emulator. Instead of making things look nice they should focus more on pushing the performance to the limit. Look at Dolphine code it is plain ugly to use, but for the performance sake.

    I work on a recompiler, which TBH i never expect to be full featured on my work alone. This is way to much to handle for one person, but it should give #RPCS3 people a well knowledge what can be increased.

    First of all I try to show the improvements to the decoder, which will be sick.

    The thing is this, the decoder does alot of stuff which can be done at load time. Loading at startup is not interesting. The performance while it emulates is crucial.

    Second I always said it and I still need to say it again. Building a recompiler is not much harder than emulating the stuff like they do but the performance increase will be insane. I looked alot at recompiler codes lately to get a brief understanding how they work and it is doable for the PS3. I hope #RPCS3 guys will take my help instead of claiming false that their way is faster and reconstruct their emulator. Of course I want to get credit than, because this will be work not much people on this planet can do.

    To the decoder using binary search algorithms is way faster than doing the big switch case.

    If I manage to make this work I will try to give a presentation on CCC Congress or other congress that let me show this stuff since IMHO it is technically more interesting than what most of those congresses show.
    Source: KDSBest Twitter


    PSX-SCENE: The Pinnacle Scene Xenocracy
    SILENT_Pavel and COSMOS43 like this.
    Comments 15 Comments
    1. an0nym0us's Avatar
      an0nym0us -
      uh, ego much? how is someone ranting about what they COULD do news? perhaps in all that banter was something about an actual contribution to the RPCS3 project, but if so I missed it.

      edit:
      in thinking about this for just a few more moments, its great that attention has been brought to the RPCS3 project again, if nothing else! the RPCS3 project someday could seriously aid in the rapid prototyping phase of a homebrew project by allowing a more debug friendly environment to be used initially.
    1. tthousand's Avatar
      tthousand -
      Take it easy.

      From what I take away, he is announcing his intentions. And even makes mention of aspects he cannot achieve alone.

      I suppose those willing to help are the ones he is trying to reach.

      I've known the guy for awhile now, and he has talked about RPCS3 for a while now.

      I hope people can help, or those that refused to help might reconsider.
    1. Inaudax's Avatar
      Inaudax -
      lol @ KDSbest. He thinks he's so good and that he's experienced, but he's really not. Don't be surprised when his projects don't turn out to be good or reliable.
    1. STLcardsWS's Avatar
      STLcardsWS -
      @an0nym0us & @Inaudax

      I suggest both of you to read the rules of the forum here. We like discussions but leave your personal feeling aside when it comes to bashing. If you dislike the news or the project. Then there are respectful ways to go about it.

      Either positive/respectful remarks or none at all.. This will not be accepted here on our forums. Form your own opinions but don't just post to bash as you add nothing good to the conversation


      Thanks
    1. tthousand's Avatar
      tthousand -
      If you have something to say, bring facts or nothing at all. We believe slander is one of the strongest enemies the PS3 scene has. Please do your part but leaving the empty insults behind. If you have proof to what you are saying, then by all means, go ahead and SHARE WITH THE SCENE.
    1. KDSBest's Avatar
      KDSBest -
      Quote Originally Posted by Inaudax View Post
      lol @ KDSbest. He thinks he's so good and that he's experienced, but he's really not. Don't be surprised when his projects don't turn out to be good or reliable.
      I love those bashing. Hate is the best you can give me This shows me your envy .

      Thanks man ^^
    1. alternativejohnsmith's Avatar
      alternativejohnsmith -
      Quote Originally Posted by KDSBest View Post
      I love those bashing. Hate is the best you can give me This shows me your envy .

      Thanks man ^^
      Too bad we decided to be nice and starve you of our envy lol
    1. tthousand's Avatar
      tthousand -
      When does this CCC thing go down @KDSBest ?

      And any other projects you have, or is making this better going to be your main focus?
    1. an0nym0us's Avatar
      an0nym0us -
      Quote Originally Posted by STLcardsWS View Post

      I suggest both of you to read the rules of the forum here. We like discussions but leave your personal feeling aside when it comes to bashing. If you dislike the news or the project. Then there are respectful ways to go about it.

      Either positive/respectful remarks or none at all.. This will not be accepted here on our forums. Form your own opinions but don't just post to bash as you add nothing good to the conversation


      Thanks
      oh that is just rich considering the "news" posting is a bashing of the RPCS3 project. But ok I will take your advice.


      Quote Originally Posted by KDSBest View Post
      I took a deep look at the #RPCS3 emulator especialy the ppu emulation. It is possible to increase the performance alot. Since my time is big money I try to get some PoC stuff out. IMHO the performance can be increased by a multiple times. Starting with the decoder which is nicely writter TBH but not tweaked to the performance limit. Building a big switch case is just the wrong way.
      Quote Originally Posted by KDSBest View Post
      First of all I try to show the improvements to the decoder, which will be sick.
      Quote Originally Posted by KDSBest View Post
      The thing is this, the decoder does alot of stuff which can be done at load time. Loading at startup is not interesting. The performance while it emulates is crucial.
      Quote Originally Posted by KDSBest View Post
      To the decoder using binary search algorithms is way faster than doing the big switch case.
      you speak of this binary search algorithm? well its quite easy to build a binary search algorithm using if/else if/else for sorting, then switch to do the grunt work. but its still quite a stretch to blankly state that binary search is superior to a switch, because both are implementation specific. unfortunately (for your precious time (and therefore big money)), this can only be determined by implementing the search complexity using a number of variations and timing them.

      Quote Originally Posted by KDSBest View Post
      Don't get me wrong they made a nice piece of software, but the lack of performance tweaking makes it a bad emulator. Instead of making things look nice they should focus more on pushing the performance to the limit. Look at Dolphine code it is plain ugly to use, but for the performance sake.
      what exactly is your argument here? are you honestly comparing an emulator that has been developed over the course of 10 years to a new project someone just started?

      Quote Originally Posted by KDSBest View Post
      Second I always said it and I still need to say it again. Building a recompiler is not much harder than emulating the stuff like they do but the performance increase will be insane. I looked alot at recompiler codes lately to get a brief understanding how they work and it is doable for the PS3. I hope #RPCS3 guys will take my help instead of claiming false that their way is faster and reconstruct their emulator. Of course I want to get credit than, because this will be work not much people on this planet can do.
      strong bash there, have you any previous contact with the project to even believe they make false claims? it really seems like there is some sort of back story here that is missing.

      Quote Originally Posted by KDSBest View Post
      If I manage to make this work I will try to give a presentation on CCC Congress or other congress that let me show this stuff since IMHO it is technically more interesting than what most of those congresses show.
      you have not even begun anything and you dream of speaking about this topic at CCC already? good luck finding help.
    1. KDSBest's Avatar
      KDSBest -
      Quote Originally Posted by an0nym0us View Post
      oh that is just rich considering the "news" posting is a bashing of the RPCS3 project. But ok I will take your advice.







      you speak of this binary search algorithm? well its quite easy to build a binary search algorithm using if/else if/else for sorting, then switch to do the grunt work. but its still quite a stretch to blankly state that binary search is superior to a switch, because both are implementation specific. unfortunately (for your precious time (and therefore big money)), this can only be determined by implementing the search complexity using a number of variations and timing them.



      what exactly is your argument here? are you honestly comparing an emulator that has been developed over the course of 10 years to a new project someone just started?



      strong bash there, have you any previous contact with the project to even believe they make false claims? it really seems like there is some sort of back story here that is missing.



      you have not even begun anything and you dream of speaking about this topic at CCC already? good luck finding help.
      First I bash the project via my twitter acc. There are no forum rules there . I never said make a news out of it. So if psx-scene people front page it. It is more or less not my fault.

      Second did I ever said I didn't started it already and dream?
      Of course I do PoCs and then create statements. Just because I don't release any piece of code on my hdd doesn't mean it doesn't exist. You guys are really just here to flame me. That's kind of pathetic. What did you guys release to make me think that you guys are in the position to bash me?
    1. an0nym0us's Avatar
      an0nym0us -
      Quote Originally Posted by KDSBest View Post
      First I bash the project via my twitter acc. There are no forum rules there .
      at least you admit that you were flaming and bashing the RPCS3 Emulator in that rant.

      Quote Originally Posted by KDSBest View Post
      Second did I ever said I didn't started it already and dream?
      Of course I do PoCs and then create statements.
      well now THAT is news! nowhere in that rant did you mention that you actually did anything but look over the projects code then rant about how you could do it better.

      Quote Originally Posted by KDSBest View Post
      You guys are really just here to flame me. That's kind of pathetic.
      no, so sorry your ego feels that way. my posts are my attempt to gain details and spread insight. you managed to ignore the technical questions and just move the bashing onto me.

      Quote Originally Posted by KDSBest View Post
      What did you guys release to make me think that you guys are in the position to bash me?
      notice my name, that alone should make it clear to you that when I release something, you don't know about it. as for superiority? meh that is over-rated but perhaps you should consider a piece of humble pie, and publicly apologize to the RPCS3 project.

      the main tone of that rant seemed to be criticism of the decoder, and that a binary search should be used. it would be tough for someone to dispute that a linear search O(n) is superior to a binary search O(log n) in all cases, because it depends on the dataset. There are quite a few powerpc decoders out there already, and nearly as many methods of decoding. Further quite often a switch *IS* a binary search, optimized (sorted) at compile time. At least on the surface, it would seem that the decoding would benefit from some sorting of opcodes, rather than a linear search starting with the lowest u32 value to the highest. You really need to look at the compiled assembly to make a proper argument though.
    1. KDSBest's Avatar
      KDSBest -
      Quote Originally Posted by an0nym0us View Post
      at least you admit that you were flaming and bashing the RPCS3 Emulator in that rant.



      well now THAT is news! nowhere in that rant did you mention that you actually did anything but look over the projects code then rant about how you could do it better.



      no, so sorry your ego feels that way. my posts are my attempt to gain details and spread insight. you managed to ignore the technical questions and just move the bashing onto me.



      notice my name, that alone should make it clear to you that when I release something, you don't know about it. as for superiority? meh that is over-rated but perhaps you should consider a piece of humble pie, and publicly apologize to the RPCS3 project.

      the main tone of that rant seemed to be criticism of the decoder, and that a binary search should be used. it would be tough for someone to dispute that a linear search O(n) is superior to a binary search O(log n) in all cases, because it depends on the dataset. There are quite a few powerpc decoders out there already, and nearly as many methods of decoding. Further quite often a switch *IS* a binary search, optimized (sorted) at compile time. At least on the surface, it would seem that the decoding would benefit from some sorting of opcodes, rather than a linear search starting with the lowest u32 value to the highest. You really need to look at the compiled assembly to make a proper argument though.

      Using a lookup table like Dolphin should be the fastest. I don't see why I need to apologize. We all know they did alot work and I appreciate that alot.
      Still they should look at other emulators first and since Dolphin emulates a PPC just fine I would check it out.

      I don't get why I should appologize really.
    1. sallam94's Avatar
      sallam94 -
      @KDSBest
      I don't get why I should appologize really.
      Don't. for real.
      If the RPCS3 team feels offended about anything you said, then they should be the ones talking to you.
      And @an0nym0us ; not because you have the name "anonymous" should I believe that you are someone useful to the community. Please, lower the tension here and don't be rude to anyone. If you got something useful to contribute, go ahead... if you don't, then try to have something you can contribute or just keep watching. Don't demotivate people that way
      If you feel that KDSBest have got that thing wrong, then prove him wrong or leave him alone, no need for Bashing.
    1. STLcardsWS's Avatar
      STLcardsWS -
      If the RPCS3 team feels offended about anything you said, then they should be the ones talking to you.
      this may be the best statement in the whole thread.

      Please no more arguing over this nonsense take it to PMs please if you want to continue.

      This is a interesting concept to improve the emulator and that's why it is news and shared with the readers of this forum/site.
    1. KDSBest's Avatar
      KDSBest -
      Quote Originally Posted by STLcardsWS View Post
      this may be the best statement in the whole thread.

      Please no more arguing over this nonsense take it to PMs please if you want to continue.

      This is a interesting concept to improve the emulator and that's why it is news and shared with the readers of this forum/site.

      Dolphin builds a big lookup table which is even easier to implement than both and the fastest way. To make the concept complete.