• 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 ... 179 180 181 182 183 ... 365 Next »

What is ICC?
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
What is ICC?
10-19-2012, 04:43 PM
#1
MayImilae Offline
Ambassador of Niche Platform Support
**********
Administrators
Posts: 4,433
Threads: 116
Joined: Mar 2011
I've seen alot of talk about it, but I haven't really understood it. Almost all of the custom builds use ICC, claiming a speed up, but apparently the devs don't agree. So, being curious, first thing I did was do a search here on the forums, but uh, I got "hiccup" a few dozen times and gave up. Googling it, I got the "Intel C++ Compiler". Seems like that is probably it, as it affects AVX and stuff, but how does that affect dolphin? What are it's pros and cons?
[Image: RPvlSEt.png]
Windows 10 x64 | Core i9-9900k | NVIDIA GeForce RTX 3090 EVGA FTW3 Ultra| 32GB DDR4-3000 | Asus Xonar Essence STX on Logitech Z-2300 | Logitech G903 Hero
MacBook Pro 14in | M1 Max (32 GPU Cores) | macOS 12 | 64GB LPDDR5 6400
Find
Reply
10-19-2012, 05:26 PM
#2
DefenderX Offline
The comedy never ends.
*******
Posts: 4,617
Threads: 186
Joined: Dec 2011
This is magic Big Grin

...I'm just kidding. Yeah, I only know, that the ICC will vectorise the code somehow. I guess, no one knows, what ICC actually does. Tongue
[Image: IEZtsj]
[Image: 8fhx2zum.gif]
Website Find
Reply
10-19-2012, 05:49 PM (This post was last modified: 10-19-2012, 07:39 PM by delroth.)
#3
delroth Offline
Making the world a better place through reverse engineered DSP firmwares
**********
Developers (Some Administrators and Super Moderators)
Posts: 1,354
Threads: 63
Joined: Aug 2011
ICC is the Intel C++ compiler, which in theory should optimize better than MSVC/GCC/Clang when compiling the code. In Dolphin more than 80% of the CPU time is spent in JIT generated code, so even if ICC had a 5% performance boost (and I really doubt it has) it would translate to a -1% CPU time spent, which is a 1FPS difference at 100FPS.

People who do ICC builds are not programmers and don't understand how useless it is. See DefenderX's post above.
Pierre "delroth" Bourdon - @delroth_ - Blog

<@neobrain> that looks sophisticated enough to not be a totally dumb thing to do
Website Find
Reply
10-19-2012, 06:16 PM
#4
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,209
Threads: 50
Joined: Jun 2009
^ this
My blog
Me on Twitter
My wishlist on Amazon.de
Find
Reply
10-19-2012, 07:20 PM (This post was last modified: 10-19-2012, 07:21 PM by lamedude.)
#5
lamedude Offline
Senior Member
****
Posts: 360
Threads: 7
Joined: Jan 2011
77 gather and 60 FMA3 instructions in the software renderer when compiled with AVX2 so it looks like Intel is starting to deliver on CPUs obsoleting GPUs dream some have.
Website Find
Reply
10-20-2012, 01:41 AM
#6
Axxer Offline
Why would I help you?
*******
Posts: 1,078
Threads: 28
Joined: May 2012
The only thing I thought might give a speed up with te custom builds was SSE4.2 and such, but it really didn't (and then I learned why: it's enabled in Dolphin by default already).
Desktop:
OS: Windows 7 64 bit
CPU: Intel Core i5 3570K @ 4.4 GHz
GPU: EVGA NVIDIA GeForce GTX 550 Ti (Factory OC'ed)
RAM: 16 GB @ 1600 MHz
Dolphin Revision:3.0, 3.0-784, 3.5, latest 3.5
Find
Reply
10-20-2012, 02:45 AM
#7
Shonumi Offline
Linux User/Tester
**********
Administrators
Posts: 6,470
Threads: 54
Joined: Dec 2011
I heard PGO can be pretty good in terms of performance, if done correctly. I've been meaning to find out how to do this with Dolphin and PCSX2 to test this for myself. Any thoughts on this?
Website Find
Reply
10-20-2012, 08:42 AM
#8
skid Offline
skidau / skid_au
**********
Developers (Some Administrators and Super Moderators)
Posts: 2,006
Threads: 8
Joined: Aug 2009
(10-20-2012, 02:45 AM)Shonumi Wrote: I heard PGO can be pretty good in terms of performance, if done correctly. I've been meaning to find out how to do this with Dolphin and PCSX2 to test this for myself. Any thoughts on this?

Compiler PGO is ineffective for Dolphin because of the 80% in JIT fact. The other thing that makes PGO ineffective is that the profile for one game might not be suited for another game.

There may be some gains to be made if we custom wrote our own PGO profiler built into the JIT. The last time I tried this for MMU games, the resulting speed gain was minimal.
Find
Reply
10-20-2012, 05:34 PM (This post was last modified: 10-20-2012, 05:36 PM by Shonumi.)
#9
Shonumi Offline
Linux User/Tester
**********
Administrators
Posts: 6,470
Threads: 54
Joined: Dec 2011
(10-20-2012, 08:42 AM)skid Wrote:
(10-20-2012, 02:45 AM)Shonumi Wrote: I heard PGO can be pretty good in terms of performance, if done correctly. I've been meaning to find out how to do this with Dolphin and PCSX2 to test this for myself. Any thoughts on this?

Compiler PGO is ineffective for Dolphin because of the 80% in JIT fact. The other thing that makes PGO ineffective is that the profile for one game might not be suited for another game.

There may be some gains to be made if we custom wrote our own PGO profiler built into the JIT. The last time I tried this for MMU games, the resulting speed gain was minimal.

I see, I guess the only things PGO would possibly speed up are things like Dolphin's CPU or DSP interpreters then? There's not much practical use in those for people who use Dolphin primarily for gaming though (devs oth...) Out of further curiosity, would PGO conceivably have any affect on the Software Renderer?

About the issue of needing multiple profiles with PGO, you shouldn't forget that there are (crazy) users out there that don't mind having a specific revisions of Dolphin out there "optimized" for a single game. They'd love having one build compiled with a The Last Story profile or Xenoblade Chronicles profile. I'm not saying it's worth it (because it's not), just that some people flip for that kinda stuff. Go figure.
Website Find
Reply
10-20-2012, 11:40 PM
#10
skid Offline
skidau / skid_au
**********
Developers (Some Administrators and Super Moderators)
Posts: 2,006
Threads: 8
Joined: Aug 2009
PGO probably won't speed up the software renderer much as the software renderer mostly consists of loops. Vectorisation might help though.
Find
Reply
« Next Oldest | Next Newest »


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


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode