• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › General Discussion v
« Previous 1 173 174 175 176 177 ... 368 Next »

A look of what's to come.
View New Posts | View Today's Posts

Pages (8): « Previous 1 2 3 4 5 6 ... 8 Next »
Jump to page 
Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
A look of what's to come.
01-31-2013, 03:27 AM
#31
NaturalViolence Offline
It's not that I hate people, I just hate stupid people
*******
Posts: 9,013
Threads: 24
Joined: Oct 2009
He hasn't finished the JIT yet either so cpu emulation is also going to be very slow for quite some time.
"Normally if given a choice between doing something and nothing, I’d choose to do nothing. But I would do something if it helps someone else do nothing. I’d work all night if it meant nothing got done."  
-Ron Swanson

"I shall be a good politician, even if it kills me. Or if it kills anyone else for that matter. "
-Mark Antony
Website Find
Reply
02-04-2013, 06:25 PM
#32
carre Offline
Junior Member
**
Posts: 9
Threads: 0
Joined: Jan 2013
Sonicadvance1, Any news?? when you expect to release a beta vesion?...I can not wait to start testing games!!!. Smile
Find
Reply
02-04-2013, 07:07 PM
#33
Legit1240 Offline
Junior Member
**
Posts: 21
Threads: 1
Joined: Dec 2012
the experience probably will be more worthwhile if you have a device with a quad core processor since that would seem more of a better fit, but who knows
Find
Reply
02-05-2013, 01:46 AM
#34
Sonicadvance1 Offline
Professional Hand Holder
**********
Developers (Some Administrators and Super Moderators)
Posts: 716
Threads: 15
Joined: Jan 2013
Android development is being fussy.

Let's talk about hardware first.


Right now the CPU doesn't matter. I'd recommend a Qualcomm snapdragon S4(krait) at 1.7Ghz or higher, or a Cortex-A15 once they are out in cell phones.
Qualcomm's new Krait 800 series CPU that has been announced should be the highest performing CPU on the market when it comes out.

My reason for CPU not being the matter right now is because the CPU isn't the bottleneck at the moment.
Right now I can only run the VideoSoftware backend, which as everyone knows, gets terrible performance no matter what you do.
The reasoning of this is because the GPUs available on the market needed to run the OpenGL plugin are currently lacking driver support.

Absolute /minimum/ GPU requirements for the OpenGL plugin.
  • Adreno 320 (Still needs OpenGL ES 3 drivers)
  • Mali-T604 (Still needs OpenGL ES 3 drivers)
  • Some versions of the PowerVR 540/543/544/554 (GLES2 only)

Firstly, let me talk about the Adreno 320 and the Mali-T604. Both of these bits of hardware support OpenGL ES 3 in /hardware/ only.
Both Imagination(Adreno) and ARM(Mali) have yet to release information on when this hardware will get OpenGL ES 3 drivers available to consumers.

That being said, there is a performance warning I need to give on this new high end mobile GPUs. BOTH of these mobile GPUs are entry level GPUs that were only used to show off the new hardware's potential. Both Imagination and ARM don't like the performance of these new chips, which is why ARM has been working on getting hardware vendors off the T604 and onto the T624 as soon as possible.
Qualcomm's announcement of the Krait 800 series SoCs has brought about information on the Adreno 330 which offers 2x performance over the Adreno 320. This SoC should be out in consumer hardware sometime this summer.

Those two SoCs are the bare /minimum/ GPUs you'll need to run with any speed even in BAM3K just because they'll support OpenGL ES 3 in the future.

But the outlier is is the PowerVR series that is available is a multitude of products. The PowerVR series that ISN'T in the Apple products, supports two OpenGL ES 2 extensions that no other SoC supports both of. That is GL_OES_Vertex_Array_Object and GL_IMG_uniform_buffer_object.
Now saying that, there is a warning on this SoC. These buggers WILL be slower than molasses on a cold winter day, and that's if I can even get the support for them crammed in to the OpenGL video backend.

Now the recommended Mobile GPUs for mobile hardware
  • Adreno 330
  • Mali-T658/T678
  • Tegra 4
Alright, the Adreno 330 is 2x performance boost over the 320 variant which still puts its specs under the Nvidia Geforce 310 in terms of processing power. Same stipulations that it needs driver support.
The Mali-T658 is supposed to be quite a good upgrade at 2x the performance of the T624, which is 2x the T604. So a 4x performance boost over the T604. This still puts it under the raw power of the Geforce 315 class card, but over the Geforce 310. The only SoC that is rumoured to have the T658 is the Exynos 5450 Quad core platform which hasn't even been publicly announced and /may/ have been dropped in favour of their "octa" campaign.

Let's branch a second here since I've actually been asked about Samsung's octa SoC.

Samsung's Octa SoC, is a "octo" or eight core SoC. There is a catch here that most people don't get; This is part of ARM's BIG.little endeavor.
What you basically get is four high performance Cortex-A15 cores for when you need to power through things, and 4 low power cores(Cortex-A7) that run low power applications. The SoC can mix and match these CPUs however it wants, but there is one limitation. You can only be using four cores at a time. So either four A15s, or Four A7s, or a mix like 2 A15s and 2 A7s.
Now this is a great idea, it means you get a powerful phone that if you aren't doing anything crazy on it, it'll idle for a long time. But that doesn't help us here. We need 2-3 of the fastest performing CPU cores we can get, and since Samsung's Octa SoC is using a PVR544MP3, I may not be able to support it.

Now then, to the last item on the list of the recommended GPUs. The Tegra 4.
This is the mobile GPU that I am most hopeful for getting halfway decent speeds under our OpenGL plugin.
And by halfway decent speeds, I'm not saying it'll run through Twilight Princesses Hyrule fields at any great speed.

This new GPU from Nvidia is rumoured to be a stripped down version of their Keplar class cards which they use in their latest desktop GPUs. If this is true, that should mean that this GPU will outclass every other mobile GPU on the market.
Now there haven't been any performance benchmarks on the GPU yet, but Nvidia did show off that its quad-core Cortex-A15s in it can beat the dual-core Cortex-A15s in the Nexus 10 tablet. Whoop de do, Quad A15 versus Dual A15, of course the quad is going to win.
I'm still hopeful that the GPU will kick enough ass to make OpenGL quick enough for a small percentage of games to run near full speed. BAM3K, Crazy Taxi, and maybe stretching it a bit, Super Smash Brothers Melee. Okay, they'll be a lot of issues with that last one not reaching full speed.

Anyway. That's the hardware out of the way, let's go a bit over the software quickly.

Dolphin's OpenGL plugin in the master branch is in a abysmal state. It uses deprecated OpenGL calls /all/ over the place which isn't compatible with OpenGL ES in the slightest.
Good thing though, even though it is using long deprecated OpenGL functions, it is actually pretty darn quick. The drivers, especially Nvidia, are able to optimize our code paths relatively well and actually get some good speed out of it.
Although this won't help mobile hardware where we just can't use these deprecated functions at all.

Now, there has been the GLSL branch which has been in development for nearly two years now, I had started this branch quite a while ago and it still isn't completed. It is /nearly/ completed, we are just having a few performance regressions and OSX support is being a PITA.
In the past few months, I've been getting a LOT of help from degasus. He is someone that actually knows how OpenGL works while I'm one that just smacks it with a hammer until it does what I want. He has been the moving force in getting GLSL finally in to a working shape by fixing most rendering issues and removing nearly all the deprecated OpenGL functions out of the code. Kudos to him for really really helping out in that department.

Now the CPU core.
I've been working on the ARM JIT for probably around six-eight months now. I have a bunch of integer PowerPC instructions emulated, all the branching, and a few Loadstore instructions implemented, even with Fastmem.
Right now, if the game touches only Integer paths like BAM3K, the CPU core runs quite quickly, which is why the Melee intro movie runs so quickly in my video I posted. I implemented about 75% of the instructions it uses for playing that video.
What I am currently working on for the JIT core is floating point instructions. This requires me to implement code so I can take advantage of ARM floating point hardware, AKA VFPv3/VFPv4/NEON. I've only just begun this work so it is going to take a few weeks until it gets anywhere near a working state.
I'm starting work on these since once a 3D game starts running, like the Crazy Taxi intro in the game, FPU instructions take up around 85% of the CPU time since I don't have ANY emulated in my CPU core atm.
Also ector wants the ARM FPU work since he uses my ARM code for his PSP emulator, ppsspp.

Any way, work is progressing at a slow but steady pace, I hope to have a video up in a week or two showing off the code running on my HTC Droid DNA, but I can't make any promises at this point.

Again, Android development is a PITA.
Find
Reply
02-05-2013, 02:11 AM
#35
neobrain Offline
"Wow, I made my code 1000x faster! That means I can make it 2048x slower now!"
**********
Developers (Some Administrators and Super Moderators)
Posts: 3,208
Threads: 50
Joined: Jun 2009
tl;dr: Progress is happening, but you still won't be able to actually play Gamecube games at good framerates on your portable devices anytime soon :p
My blog
Me on Twitter
My wishlist on Amazon.de
Find
Reply
02-05-2013, 03:35 AM (This post was last modified: 02-05-2013, 03:35 AM by leetminiwheat.)
#36
leetminiwheat Offline
Junior Member
**
Posts: 28
Threads: 1
Joined: Jan 2013
Nice post, Sonic. Great to see the software is progressing even though our hardware isn't quite there yet Smile

P.S. <3 tegra4, any word on devices coming out with it?
IRC: Aristar @ irc.freeenode.net #dolphin-emu
CPU: Intel Core i5 2500K + Corsair H60 (dead)
GPU: Nvidia GeForce GTX 690 (EVGA)
MBD: Asus Maximus IV Gene-Z (Z68)
RAM: G.Skill RipjawsX 16GB (4x4GB) @ 2133MHz
SND: X-Fi Titanium Fatal1ty Pro
SSD: Samsung 830 128GB
PSU: Tt Toughpower Grand (750w Gold)
Find
Reply
02-05-2013, 03:50 AM
#37
Sonicadvance1 Offline
Professional Hand Holder
**********
Developers (Some Administrators and Super Moderators)
Posts: 716
Threads: 15
Joined: Jan 2013
There are strong rumours that a Nexus 5 and a Nexus 7.7 will be coming out at Google I/O this year which will both feature Tegra 4.
I already plan on buying the Nexus 7.7 for working on.
So hopefully July is a good month.
Find
Reply
02-06-2013, 03:42 PM
#38
garrlker Offline
That one guy
***
Posts: 183
Threads: 7
Joined: Feb 2012
Well dang, I had to choose between the s3 or droid dna, and I chose the wrong one.
Find
Reply
02-06-2013, 03:52 PM (This post was last modified: 02-06-2013, 03:54 PM by Gir.)
#39
Gir Offline
Chaotix
****
Posts: 310
Threads: 21
Joined: Mar 2012
Could this be ported to Windows RT, the Surface uses the Quad-core NVIDIA Tegra 3

[Image: Microsoft+Surface+Tablet.jpg]
Find
Reply
02-06-2013, 03:56 PM
#40
Sonicadvance1 Offline
Professional Hand Holder
**********
Developers (Some Administrators and Super Moderators)
Posts: 716
Threads: 15
Joined: Jan 2013
Read my hardware thread above for information on minimum hardware requirements.
Windows doesn't allow recompiled code in their market either, so JIT would be impossible.
Find
Reply
« Next Oldest | Next Newest »
Pages (8): « Previous 1 2 3 4 5 6 ... 8 Next »
Jump to page 


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread:



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode