Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: does dual processor work with MAME?  (Read 2596 times)

0 Members and 1 Guest are viewing this topic.

Sephroth57

  • Poo Monkey
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3375
  • Last login:June 07, 2020, 11:17:00 am
    • Check it out!!!
does dual processor work with MAME?
« on: December 12, 2003, 09:40:29 am »
i was just thinking since processor power is the big thing in MAME emulation, i never see anyone with dual processor setups. does MAME not support dual or has no one tried it?
"Owens is the ringleader in the ass hat circus"  D K

Spaced Invader

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 585
  • Last login:July 15, 2008, 07:27:49 am
  • Resistance is... probably a good idea.
Re:does dual processor work with MAME?
« Reply #1 on: December 12, 2003, 09:51:10 am »
SMP works by assigning different threads to different processors. Since MAME runs a ROMset in one thread I wouldn't expect much of a speed increase.
All Your Base Are Belong To Us!

rampy

  • *shrug*
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2910
  • Last login:March 02, 2007, 11:32:16 am
  • ...as useless as a JPG is to Helen Keller
    • Build Your Own PVR
Re:does dual processor work with MAME?
« Reply #2 on: December 12, 2003, 09:52:05 am »
You can use dual processors with regular mame, but you won't get any added benefit...  Advancemame (linux version?) supports SMP, but I don't think you'll get the "double" speed/power boost you are thinking...

Since a lot of the emulation code is very timing sensitive, it's difficult to architecture (as a verb) the code to be able to take full advantage of dual processor//SMP... I'm sure someone can provide more detail as to why, but believe me, you don't want it... =)

*shrug*

Rampy

Jakobud

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1962
  • Last login:June 30, 2025, 02:20:39 pm
Re:does dual processor work with MAME?
« Reply #3 on: December 12, 2003, 01:33:32 pm »
Mame doesn't multithread.

Sephroth57

  • Poo Monkey
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3375
  • Last login:June 07, 2020, 11:17:00 am
    • Check it out!!!
Re:does dual processor work with MAME?
« Reply #4 on: December 12, 2003, 02:20:29 pm »
thats a shame, if it did we could probably run war gods and higher end chd based games already
"Owens is the ringleader in the ass hat circus"  D K

Donger

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 50
  • Last login:July 04, 2004, 08:10:24 pm
  • Considduh dat a di-vorsss!
Re:does dual processor work with MAME?
« Reply #5 on: December 12, 2003, 08:52:32 pm »
It would probably be a more worthwhile effort to get either netplay (*drool*) or 3d graphic card compatibility in mame.....doesn't look like either will be done. :(

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8190
  • Last login:August 14, 2025, 10:34:47 pm
  • The Bears Still Suck!
Re:does dual processor work with MAME?
« Reply #6 on: December 12, 2003, 09:52:25 pm »
3d graphic card compatibility in mame
This will never happen in mame.  Mame is about documenting the arcade hardware.  That includes emulating the video hardware on that game.  They aren't concerned with running on todays video cards then.

Plus that would be a huge pain to take the instructions sent to the video processor, decipher them, then figure out what is best on a PC 3D card.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8190
  • Last login:August 14, 2025, 10:34:47 pm
  • The Bears Still Suck!
Re:does dual processor work with MAME?
« Reply #7 on: December 12, 2003, 09:53:07 pm »
You can use dual processors with regular mame, but you won't get any added benefit...  Advancemame (linux version?) supports SMP, but I don't think you'll get the "double" speed/power boost you are thinking...

Yeah, the mame part of advancemame willnot take advantage of dual procs.

Sephroth57

  • Poo Monkey
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3375
  • Last login:June 07, 2020, 11:17:00 am
    • Check it out!!!
Re:does dual processor work with MAME?
« Reply #8 on: December 13, 2003, 12:16:08 am »
ive heard of Zinc playing some games better because theyre more about getting them to run instead of documenting like MAME. Is Zinc better for running Blitz and Wargods that type of high end stuff?
"Owens is the ringleader in the ass hat circus"  D K

namzep

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 222
  • Last login:October 02, 2009, 01:13:40 pm
  • Twilight Zone: the Game
    • Pezchasers - Home of Twilight Zone: the Arcade Game
Re:does dual processor work with MAME?
« Reply #9 on: December 13, 2003, 03:36:40 am »
Zinc is currently better at running Sony ZN1/ZN2 and Namco System 11 hardware based games.  These would be like your Tekkens, Street Figher EXs, etc.  Zinc does not support any harddrive based games.  As far as I know the only harddrive based games that are supported in a non-Mame emulator are Killer Instinct 1 & 2.  I don't remember, offhand, what the name of that emulator is.  You're more than likely going to have to wait till computer processors catch up with those games in Mame before you'll be able to play them.
« Last Edit: December 13, 2003, 06:20:36 am by namzep »

jerryjanis

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 821
  • Last login:February 02, 2023, 01:56:44 am
  • Skate or Die!!!
    • Jake's Joystick
Re:does dual processor work with MAME?
« Reply #10 on: December 13, 2003, 07:20:17 am »
It would probably be a more worthwhile effort to get either netplay (*drool*) or 3d graphic card compatibility in mame.....doesn't look like either will be done. :(

For netplay under Windows, there's Kaillera:

http://www.kaillera.com/

u_rebelscum

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3633
  • Last login:April 21, 2010, 03:06:26 pm
  • You rebel scum
    • Mame:Analog+
Re:does dual processor work with MAME?
« Reply #11 on: December 13, 2003, 07:35:07 am »
You can use dual processors with regular mame, but you won't get any added benefit...  Advancemame (linux version?) supports SMP, but I don't think you'll get the "double" speed/power boost you are thinking...

With AdvanceMame, I think the emulation can be on one CPU, and the "extra stuff", like reading inputs, video stretching, etc, can be on another.  However, since most of the slow down is in the emulation, you won't get very big speed ups.

Quote
Since a lot of the emulation code is very timing sensitive, it's difficult to architecture (as a verb) the code to be able to take full advantage of dual processor//SMP... I'm sure someone can provide more detail as to why, but believe me, you don't want it... =)

You pretty much got it all.  Including the don't want part, but here you go anyway. ;)

To get the best speed out of multithreading is let the different threads (CPUs) do stuff that do not depend on what the other threads do.  If one has to wait to another to finish, it's "wasting" time.  If one thread should wait for another to finish but doesn't messes up the emulation (if not crash the computer).  But adding the code to support waiting actually adds overhead.  

The arcade hardware and software were designed around the fact that parts 1, 2, & 4 do exactly X things while part 3 does exactly X/2 things in the same fraction of a second with no waiting anywhere.  The machine was timed to a Tee, so the parts could run free at "full speed".   If the timing is off on the arcade (example, replace a clock that controls timing of half the parts with a differnt speed one while the other clock stays the same), don't expect it to run correctly if at all.  If the timing is off in the emulation, don't expect it to run correctly either.

With mame emulating up to 7 CPUs + sound card + video card + memory + other stuff at once, and hundreds of different CPUs, MPUs, DSPs, GPUs, ect for the thousands of games, it's impossible to match the timing without a lot of waiting at least somewhere (optimized for one system) if not everywhere (averaged the waiting).

Add that 99% of PCs have one CPU; the waiting overhead will kill all the games's speeds on all those computers.

(I haven't even touched half the issues.)

But finally, recoding mame to be even semi-efficiently multithreaded will be a total bee-atch to do.  (the prior sentence is way understated)


[shrug]  Wait until most new computers are multiCPU (dual or hyperthearded aren't enough, I mean 4 & 8 CPUs).  And CPU speed is not increasing very much.  And a super genius without a life or a job decides to recode mame multithreaded.  Then you might get real mulitthreaded mame (that scales close to the number of CPUs in the system).

Until then, well, people who want it can study computer programming hoping to become that genius, and wait for most retail PCs to go multiCPU. ;D
Robin
Knowledge is Power

Sephroth57

  • Poo Monkey
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3375
  • Last login:June 07, 2020, 11:17:00 am
    • Check it out!!!
Re:does dual processor work with MAME?
« Reply #12 on: December 14, 2003, 01:33:12 am »
hmm so i figure in about 2 years theyll start making dual or more CPUed PCs standard. figure a year for someone to get around to making it work for MAME. so in 3 years i can play SC2 on MAME or i could just hack my PS2 controller....

i guess ill hack the controller then =P   although in 3 years PS2 will be outdated and MAME will be more of a convienience having all those games at your fingertips without having 20000 systems hooked up
"Owens is the ringleader in the ass hat circus"  D K

bluGill

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 54
  • Last login:February 05, 2004, 06:03:02 pm
  • I'm a llama!
Re:does dual processor work with MAME?
« Reply #13 on: December 14, 2003, 10:45:17 pm »
I bought a dual processor system in 1998, figguring it would be the wave of the future, and wanting a super fast system.  Back then a PPRO-200 was the fastest money could buy (without going to a non-standard CPU, which was a lot more expensive), so I got two of them.  4 years latter, my machine is obsolete, comsumer OSes still have poor support for multiCPU systems, and dual processer systems are if anything less popular than there were then

Note that the P4 is hyperthreaded, meaning it acts like a dual processer system, but isn't.   I wouldn't count on seeing multi-CPU systems anytime soon.  They are hard to design, and hard to program.  There are many tasks that cannot scale to dual CPUs, no matter how much programing effort you put into them.  Even if your tasks do scale to two CPUs, one CPU that isn't quite twice as fast will still be faster than two CPUs do to the complexities of writing for multi-cpus.


grafixmonkey

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 743
  • Last login:October 16, 2010, 08:16:50 pm
  • must... tear self... away from... Tron...
    • My graphics/arcade/circuits site!
Re:does dual processor work with MAME?
« Reply #14 on: December 14, 2003, 11:37:00 pm »
Many single tasks that won't scale well.  I personally would benefit a lot from a dual proc system, because I could have a large animation rendering in the background and still be able to play a demanding video game.  I could also encode a large video on one processor while the soundtrack got encoded on the second, or just give Maya full reign and allow it to render twice as fast.

Lots of people think that their games are massive whirlwinds of computation that take the most badarse system ever, but there's a whole other tier of technology they don't even look at because the stores they buy from don't even present it.  Example, I just realized my Epox 8RDA+ motherboard is crap as far as I'm concerned.  Why?  Because I work with video in raw mode, and raw video transfers require RAID, and RAID maxes out the PCI bus unless you have a 66MHZ slot (they're usually 33 like mine) or even better a 64-bit PCI slot (usually 32.)  I have neither, so more than likely I will have to get a new motherboard for the workstation I just built.

So next time you wonder if you have a powerful enough system to run your games, picture this being your hard drive.  Or maybe This.  (each of those little latch things is a hard drive.  They act in tandem, and their speeds add up to slightly less than 15 times the transfer rate of a single hard drive.   :o)

oops, now we'll have people putting those into Mame machines too...   :D  
-----------
-- See my grafix, circuits and cab on my
-- new arcadey page:  http://www.bkgrafix.net

Jakobud

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1962
  • Last login:June 30, 2025, 02:20:39 pm
Re:does dual processor work with MAME?
« Reply #15 on: December 15, 2003, 12:44:38 am »
In todays world, the only place that dual processor systems are commonplace is among graphic artists, 3d modeling/animating, engineering/designing, and digital video compositing.  Thats why the only real applications you are going to find that were programmed with multithreading in mind are among the high end software that exists in those areas.  But in the future maybe it will be more standard since (supposedly) they think there is now a limit to processor speed (b/c of size restrictions) that we will supposedly hit around 2020....