This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Emulator
#26
(11-13-2012, 12:45 AM)Runo Wrote:
Quote:you cannot simply decide to recompile a mono-core program into a myriad of small independent programs to run through a GPGPU due to their different nature and goal. It would be totally inefficient because of the overhead implied by calling GPU kernel functions one after one in a CPU function since it's the way a mono-core program is running.

I never heard of this way of accessing the GPU, is it even practical? The closest thing I know for direct GPU programming is libraries like Physx, that must be of course supported by the GFX driver.
Using OpenCL or DirectCompute, you can write your kernel functions in a shader-like file, compile it and have it run by GPGPU. OpenGL 4.3 has compute shader now which is similar to OpenCL general purpose shader.

(11-13-2012, 12:45 AM)Runo Wrote:
Quote:The efficiency of multi-tasked program is another challenge because it is not an easy job to find the best way to run smoothly all the threads with efficient synchronization (for instance, abusing mutexes tends to be counter-productive; that is the reason why I mostly avoid them). Now try to be portable in several platforms, your will lose your hair.

Some things can be multithreaded relatively easily, tough. PCSX2, for example, has a multithreaded recompiler for its VU chip, which is kinda simple since the VU itself is a multicore chip. You just create a thread for each core, and since the real hardware is made of separate cores, they don't need synchronization. The sync problem comes when you try to split one emulation task in two or more threads.
You are wrong when telling they do not need synchronization. There is always a need of synchronization between threads (usually something like a command/event queue for instance to tell to the thread what to do in batch). It is not easy to find the most efficient mechanism to sync between threads, especially when portability is concerned. When you want to be portable, you will use generic synchronization which may have major drawbacks (abusing mutexes for instance instead of using well-designed command queue). The point is : not all emulator coders are pro in the multi-tasking paradigm.
Reply


Messages In This Thread
Emulator - by carroacelera - 11-06-2012, 11:13 PM
RE: Emulator - by Zekro - 11-07-2012, 02:00 PM
RE: Emulator - by Runo - 11-11-2012, 04:34 PM
RE: Emulator - by montcer9012 - 11-11-2012, 05:01 PM
RE: Emulator - by Runo - 11-11-2012, 05:59 PM
RE: Emulator - by montcer9012 - 11-11-2012, 06:46 PM
RE: Emulator - by montcer9012 - 11-07-2012, 04:17 PM
RE: Emulator - by carroacelera - 11-07-2012, 04:33 PM
RE: Emulator - by montcer9012 - 11-07-2012, 04:39 PM
RE: Emulator - by carroacelera - 11-07-2012, 04:42 PM
RE: Emulator - by hlide - 11-12-2012, 11:36 PM
RE: Emulator - by montcer9012 - 11-13-2012, 01:40 AM
RE: Emulator - by Zekro - 11-07-2012, 04:43 PM
RE: Emulator - by montcer9012 - 11-07-2012, 04:44 PM
RE: Emulator - by carroacelera - 11-07-2012, 04:49 PM
RE: Emulator - by Zekro - 11-07-2012, 04:55 PM
RE: Emulator - by carroacelera - 11-07-2012, 05:01 PM
RE: Emulator - by Zekro - 11-07-2012, 05:27 PM
RE: Emulator - by carroacelera - 11-07-2012, 05:29 PM
RE: Emulator - by montcer9012 - 11-07-2012, 05:41 PM
RE: Emulator - by Zekro - 11-07-2012, 05:43 PM
RE: Emulator - by Zekro - 11-11-2012, 05:11 PM
RE: Emulator - by Zekro - 11-11-2012, 06:22 PM
RE: Emulator - by Runo - 11-12-2012, 04:29 AM
RE: Emulator - by Runo - 11-13-2012, 12:45 AM
RE: Emulator - by hlide - 11-13-2012, 01:45 AM
RE: Emulator - by Runo - 11-13-2012, 10:29 AM
RE: Emulator - by hlide - 11-13-2012, 02:02 PM
RE: Emulator - by Runo - 11-13-2012, 03:07 PM
RE: Emulator - by gid15 - 11-13-2012, 05:17 PM
RE: Emulator - by hlide - 11-13-2012, 09:41 PM
RE: Emulator - by Runo - 11-13-2012, 11:49 PM
RE: Emulator - by Gundark - 11-22-2012, 04:38 PM
RE: Emulator - by Zekro - 11-22-2012, 04:40 PM
RE: Emulator - by Gundark - 11-22-2012, 07:36 PM
RE: Emulator - by Zekro - 11-22-2012, 07:52 PM
RE: Emulator - by Gundark - 11-22-2012, 09:57 PM
RE: Emulator - by Runo - 11-23-2012, 03:52 AM
RE: Emulator - by Gundark - 11-23-2012, 06:18 AM
RE: Emulator - by shin x - 11-23-2012, 09:23 AM
RE: Emulator - by montcer9012 - 11-24-2012, 02:11 AM
RE: Emulator - by Gundark - 11-24-2012, 06:54 AM
RE: Emulator - by shin x - 11-24-2012, 05:05 PM
RE: Emulator - by BlackDaemon - 11-24-2012, 07:57 PM
RE: Emulator - by shin x - 11-24-2012, 08:59 PM
RE: Emulator - by Zekro - 11-24-2012, 09:05 PM
RE: Emulator - by shin x - 11-24-2012, 09:55 PM
RE: Emulator - by montcer9012 - 11-24-2012, 09:27 PM
RE: Emulator - by Runo - 11-25-2012, 12:12 PM
RE: Emulator - by montcer9012 - 11-25-2012, 07:55 PM
RE: Emulator - by hlide - 11-26-2012, 04:26 PM
RE: Emulator - by Gundark - 11-26-2012, 09:53 PM
RE: Emulator - by montcer9012 - 11-26-2012, 09:56 PM
RE: Emulator - by BlackDaemon - 11-25-2012, 12:55 PM
RE: Emulator - by Zekro - 11-25-2012, 01:15 PM
RE: Emulator - by shin x - 11-25-2012, 03:44 PM
RE: Emulator - by Zekro - 11-25-2012, 03:53 PM
RE: Emulator - by shin x - 11-25-2012, 04:30 PM
RE: Emulator - by Zekro - 11-25-2012, 04:39 PM
RE: Emulator - by shin x - 11-25-2012, 04:47 PM
RE: Emulator - by Gundark - 11-25-2012, 05:41 PM
RE: Emulator - by Zekro - 11-25-2012, 05:49 PM
RE: Emulator - by BlackDaemon - 11-25-2012, 05:50 PM
RE: Emulator - by Gundark - 11-25-2012, 06:25 PM
RE: Emulator - by shin x - 11-26-2012, 12:53 PM
RE: Emulator - by Zekro - 11-25-2012, 06:31 PM
RE: Emulator - by shin x - 11-26-2012, 07:08 PM
RE: Emulator - by hlide - 11-27-2012, 02:32 AM
RE: Emulator - by shin x - 11-27-2012, 03:31 PM
RE: Emulator - by Runo - 11-27-2012, 11:02 PM
RE: Emulator - by shin x - 11-28-2012, 12:58 PM
RE: Emulator - by Gundark - 11-29-2012, 01:03 AM
RE: Emulator - by Runo - 11-29-2012, 10:31 AM
RE: Emulator - by hlide - 11-29-2012, 09:32 PM
RE: Emulator - by shin x - 11-29-2012, 01:08 PM
RE: Emulator - by Gundark - 11-29-2012, 01:49 PM
RE: Emulator - by Ekaseo - 11-29-2012, 10:02 PM
RE: Emulator - by Runo - 11-30-2012, 12:12 AM
RE: Emulator - by Zekro - 11-30-2012, 10:52 AM
RE: Emulator - by Gundark - 12-01-2012, 07:18 AM

Forum Jump:


Users browsing this thread: 4 Guest(s)